欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 請給看看這個LED逐個循環的取位問題 [打印本頁]

作者: zbwww    時間: 2017-5-24 15:22
標題: 請給看看這個LED逐個循環的取位問題
請教了,初學比著葫蘆畫瓢寫了個6LED燈逐個循環的C程序,就是不能按6位輸出循環,請給看看這個取位應該怎么寫,或者用什么方法解決這個問題。謝謝了!

#include <at89x52.h>
#include <Intrins.h>   


unsigned char code tab[6]={0x01,0x02,0x04,0x08,0x10,0x20,};
unsigned char con;
unsigned int  conss;

void main()
{       
        while(1)
        {
                   if(++conss>55500)
                {
                        conss=0;
                con++;
                        con&=0x07;         //現在是p2口8位循環,這個位怎么取才能使低6位LED循環?        
                       
                        P2=tab[con];
                }
        }
}



作者: yzwzfyz    時間: 2017-5-24 17:58
軟件可以,硬件呢?
作者: zbwww    時間: 2017-5-24 19:23
請給看看問題在哪
作者: ahshmj    時間: 2017-5-24 20:35
將這里改一下即可:
//unsigned char code tab[6]={0x01,0x02,0x04,0x08,0x10,0x20,}; //原來的語句
unsigned char code tab[6]={0x80,0x40,0x20,0x10,0x08,0x04,};   //改后的語句
如果將數組的順序倒過來,就會反向
作者: ahshmj    時間: 2017-5-24 20:42
噢!忘了,你本來就是低6位循環,我給改的是變成高6位循環。8位循環更簡單一些。
作者: zbwww    時間: 2017-5-25 09:20
奮戰一夜,終于完美解決。其實很簡單,只是我不熟悉C,經高人指點,把取位&換成if,大功告成。謝謝大家的關注與幫助。




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1