<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 牛人業(yè)話 > 關(guān)于8051對(duì)LED控制的各種程序

          關(guān)于8051對(duì)LED控制的各種程序

          作者: 時(shí)間:2015-03-10 來(lái)源:網(wǎng)絡(luò) 收藏

            本*也是前幾天開始接觸單片機(jī),從最經(jīng)典也是最實(shí)用的開始入手??戳藥滋鞎唾Y料,發(fā)現(xiàn)以前一直看的微機(jī)還有大一上時(shí)候在計(jì)算機(jī)學(xué)的一些東西還是挺有用的。大家都是看郭天祥的吧=。= 本*不是。我是在x寶上買的開發(fā)板講課都是x寶店家獨(dú)家鏡頭,可謂是高端大氣上檔次,低調(diào)奢華有內(nèi)涵,簡(jiǎn)約時(shí)尚國(guó)際范,低端粗俗甩節(jié)操,土憋矯情無(wú)下限,狂拽酷帥吊炸天,冷艷高貴接地氣,時(shí)尚動(dòng)感小清新,可愛(ài)鄉(xiāng)村非主流。好吧,廢話不多,其實(shí)我也是看郭天祥的,哈工大畢竟不是蓋的。ps:x寶老板是南郵的高材生。

          本文引用地址:http://www.ex-cimer.com/article/270753.htm

            本*老老實(shí)實(shí)地把PPT最后的課后練習(xí)都做了遍,完全沒(méi)有什么百度,那些弱爆了換句話說(shuō)。

            下面,本*就郭天祥課件里面課后練習(xí)的題目做出自己的獨(dú)家見(jiàn)解-。-

            題一:第一個(gè)發(fā)光管以間隔200ms閃爍。

            臥槽-,- 這種題目小兒科。本*表示,寫這類程序有兩種方法,我還是喜歡直接對(duì)IO口總線定義。

            #include

            #include //就蜂鳴器接的IO口不同的開發(fā)板設(shè)計(jì)電路時(shí)候可能會(huì)有所不同,本*x寶買的這塊接的是P3.4.

            sbit buzz=P3^4;

            void delay()

            unsigned int t=30000;

            while (t--);

            void main()

            unsigned char temp;

            temp=0xfe;

            while(1)

            P1=temp;

            temp=_crol_(temp,1);

            buzz=~buzz;

            delay();

            }

            題三: 用8個(gè)發(fā)光管演示出8位二進(jìn)制數(shù)累加過(guò)程。

            #include //表示這樣題目還是比較有意思的 ps:要學(xué)單片機(jī)首先我覺(jué)得這些進(jìn)制的問(wèn)題要搞清楚,二進(jìn)制 十六進(jìn)制和我們用的十進(jìn)制的轉(zhuǎn)換關(guān)系。

            #include

            void delay()

            unsigned int a=30000;

            while(a--);

            void main() //燈亮為0,滅為1;

            P1=0x00;

            for(;P1<=0xfe;P1++)

            delay();

            }

            題四:8個(gè)發(fā)光管間隔200ms由上至下,再由下至上,再重復(fù)一次,然后全部熄滅再以300ms間隔全部閃爍5次。重復(fù)此過(guò)程。

            #include

            #include

            unsigned int temp;

            void delay(unsigned int z)

            unsigned int x;

            unsigned char y;

            for(x=z;x>0;x--)

            for(y=100;y>0;y--);

            void main()

            unsigned int a,b,c;

            while(1)

            for(a=0;a<2;a++)

            temp=0xfe;

            while(b<=6)

            P1=temp;

            temp=_crol_(temp,1);

            delay(500);

            while(c<=6)

            P1=temp;

            temp=_cror_(temp,1);

            delay(500);

            P1=0xff;

            for(a=0;a<5;a++)

            P1=~P1;

            delay(1000);

            }

            題五:間隔300ms第一次一個(gè)管亮流動(dòng)一次,第二次兩個(gè)管亮流動(dòng),依次到8個(gè)管亮,然后重復(fù)整個(gè)過(guò)程。

            #include

            #include

            unsigned int temp;

            void delay(unsigned int z)

            unsigned char x;

            unsigned char y;

            for(x=z;x>0;x++)

            for(y=100;y>0;y++);

            void main()

            unsigned int a;

            while(1)

            temp=0xfe;

            while(a<=6)

            P1=temp;

            temp=_crol_(temp,1);

            delay(30000);

            temp=0xfc;

            while(a<=5)

            P1=temp;

            temp=_crol_(temp,1);

            delay(30000);

            temp=0xf8;

            while(a<=4)

            P1=temp;

            temp=_crol_(temp,1);

            delay(30000);

            temp=0xf0;

            while(a<=3)

            P1=temp;

            temp=_crol_(temp,1);

            delay(30000);

            temp=0xe0;

            while(a<=2)

            P1=temp;

            temp=_crol_(temp,1);

            delay(30000);

            temp=0xc0;

            while(a<=1)

            P1=temp;

            temp=_crol_(temp,1);

            delay(30000);

            temp=0x80;

            while(a<=0)

            P1=temp;

            temp=_crol_(temp,1);

            delay(30000);

            temp=0x00;

            P1=temp;

            delay(30000);

            }

            題六:間隔300ms先奇數(shù)亮再偶數(shù)亮,循環(huán)三次;一個(gè)燈上下循環(huán)三次;兩個(gè)分別從兩邊往中間流動(dòng)三次;再?gòu)闹虚g往兩邊流動(dòng)三次;8個(gè)全部閃爍3次;關(guān)閉發(fā)光管,程序停止。

            #include

            void delay()

            unsigned int a=30000;

            while(a--);

            void main()

            unsigned char a;

            while(1)

            for(a=0;a<3;a++)

            P1=0x55;

            delay();

            P1=0xaa;

            delay();

            for(a=0;a<3;a++)

            P1=0x7e;

            delay();

            P1=0xbd;

            delay();

            P1=0xdb;

            delay();

            P1=0xe7;

            delay();

            for(a=0;a<3;a++)

            P1=0xe7;

            delay();

            P1=0xdb;

            delay();

            P1=0xbd;

            delay();

            P1=0x7e;

            delay();

            for(a=0;a<3;a++)

            P1=0x00;

            delay();

            P1=~P1;

            delay();

            }

            學(xué)習(xí)是一個(gè)不斷積累的過(guò)程,郭天祥說(shuō)十天可以學(xué)完,表示我做不到,不僅僅是學(xué)完,其實(shí)別的芯片程序大體還是通用的,我誒想想是這樣的=。= 不管怎么說(shuō),c語(yǔ)言是基礎(chǔ),當(dāng)然也有用匯編的,本*表示匯編看不懂。。。。

          c語(yǔ)言相關(guān)文章:c語(yǔ)言教程


          蜂鳴器相關(guān)文章:蜂鳴器原理


          關(guān)鍵詞: 8051 LED

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();