Re: [問題] 二進制的累加!
※ 引述《apol1033 (Frog )》之銘言:
: 太久沒看C++忘記如何用指令了= ="
: 是用C++來控制8051單晶片
: 想問一下如果想輸出一個訊號來控制8個LED
: 他的變化是
: 00000001
: 00000011
: 00000111
: 00001111
: 00011111
: 00111111
: 01111111
: 11111111
: 01111111
: 00111111
: 00011111
: 00000111
: 00000011=>這邊再跑回最上面
: 原本是想用二進制然後慢慢加,不過中間的差距不同所以不行用
: 也想過用陣列,不過也搞不懂怎麼使用
: 希望有人能幫解惑一下
unsigned char led_sig=1;
bool right2left=true;
while(loop)
{
if(right2left)
{
led_sig<<=1;
++led_sig;
if(led_sig==0xff)
right2left=false;
}
else
{
led_sig>>=1;
if(led_sig==1)
right2left=true;
}
}
我可能會這樣寫
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.136.177.115
※ 編輯: hylkevin 來自: 220.136.177.115 (03/16 01:25)
※ 編輯: hylkevin 來自: 220.136.177.115 (03/16 01:25)
推
03/16 01:32, , 1F
03/16 01:32, 1F
→
03/16 01:33, , 2F
03/16 01:33, 2F
推
03/16 01:36, , 3F
03/16 01:36, 3F
→
03/16 01:49, , 4F
03/16 01:49, 4F
→
03/16 01:50, , 5F
03/16 01:50, 5F
→
03/16 01:52, , 6F
03/16 01:52, 6F
→
03/16 01:52, , 7F
03/16 01:52, 7F
→
03/16 02:21, , 8F
03/16 02:21, 8F
→
03/16 02:22, , 9F
03/16 02:22, 9F
→
03/16 02:23, , 10F
03/16 02:23, 10F
→
03/16 02:26, , 11F
03/16 02:26, 11F
討論串 (同標題文章)