單片機c語言編程實例大全_第1頁
單片機c語言編程實例大全_第2頁
單片機c語言編程實例大全_第3頁
單片機c語言編程實例大全_第4頁
單片機c語言編程實例大全_第5頁
已閱讀5頁,還剩184頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、學習單片機,/例1 :用單片機對第一盞燈進行點亮控制更多單片機學習視頻教程的protues模擬電路圖,keil程序免費下載網(wǎng)站:/forum.php? mod=foruumdisplayfid=110包含#include /單片機寄存器定義的頭文件語音主(語音主)舉止P1=0xfe; /P1=1111 1110B,即P1.0輸出為低電平以下/例2 :用單片機控制燈的閃爍:識別單片機的工作頻率。更多單片機學習視頻教程的protues模擬電路圖、keil程序免費下載網(wǎng)站:/forum.php? mod=foruumdisplayfid

2、=110包含#include /單片機寄存器的頭文件/函數(shù)功能:延遲時間/voiddelay(void)/void表示沒有返回值,且不傳遞參數(shù)舉止無符號輸入I; /定義無符號整數(shù),取最大值范圍65535for(i=0; i20000; 進行I)/20000次空循環(huán)什么都不做,等待機器周期。以下/函數(shù)功能:主函數(shù)(c語言規(guī)定只有一個主函數(shù))/語音主(語音主)舉止while(1) /無限循環(huán)舉止P1=0xfe; /P1=1111 1110B,P1.0輸出低電平delay (); /推遲一會兒時間P1=0xff; /P1=1111 1111B、P1.0輸出高電平delay (); /推遲一會兒時間以

3、下以下/例3 :將P1端口的狀態(tài)分別發(fā)送到P0、P2、P3端口:識別I/O端口的管腳功能包含#include /單片機寄存器的頭文件/函數(shù)功能:主函數(shù)(c語言規(guī)定只有一個主函數(shù))/語音主(語音主)舉止while(1) /無限循環(huán)舉止P1=0xff; /P1=1111 1111B,LED熄滅P0=P1; /p1端口狀態(tài)發(fā)送到P0端口P2=P1; /p1端口狀態(tài)發(fā)送到P2端口P3=P1; /p1端口狀態(tài)發(fā)送到P3端口以下以下/例4 :用P3端口流水點亮8位LED包含#include /單片機寄存器的頭文件/函數(shù)功能:延遲時間/void delay(void )舉止無符號char I,j;for(i

4、=0; i50; PS )for(j=0; j50; j )灬以下/函數(shù)功能:主函數(shù)/語音主(語音主)舉止while(1)舉止P3=0xfe; /第一個燈點亮delay (); /調(diào)用延遲函數(shù)P3=0xfd;/第二盞燈點亮delay (); /調(diào)用延遲函數(shù)P3=0xfb;/第三盞燈點亮delay (); /調(diào)用延遲函數(shù)P3=0xf7;/第4盞燈點亮delay (); /調(diào)用延遲函數(shù)P3=0xef;/第5盞燈點亮delay (); /調(diào)用延遲函數(shù)P3=0xdf;/第6盞燈點亮delay (); /調(diào)用延遲函數(shù)P3=0xbf;/第7個燈點亮delay (); /調(diào)用延遲函數(shù)P3=0x7f;/第8盞

5、燈點亮delay (); /調(diào)用延遲函數(shù)以下以下/例7 :通過對P3端口地址的操作,流水點亮8位的LED包含#include /單片機寄存器的頭文件sfr x=0xb0; /P3端口內(nèi)存中的地址是b0H,可以用sfr定義8051內(nèi)核單片機/對所有內(nèi)部8位特殊功能寄存器、地址x的操作,即對P1端口的操作/函數(shù)功能:延遲時間/void delay(void )舉止無符號char I,j;for(i=0; i50; PS )for(j=0; j50; j )通過用/循環(huán)等待幾個機器循環(huán)來延遲時間以下/函數(shù)功能:主函數(shù)/語音主(語音主)舉止while(1)舉止x=0xfe; /第一個燈點亮delay

6、(); /調(diào)用延遲函數(shù)x=0xfd;/第二盞燈點亮delay (); /調(diào)用延遲函數(shù)x=0xfb;/第三盞燈點亮delay (); /調(diào)用延遲函數(shù)x=0xf7;/第4盞燈點亮delay (); /調(diào)用延遲函數(shù)x=0xef;/第5盞燈點亮delay (); /調(diào)用延遲函數(shù)x=0xdf;/第6個燈點亮delay (); /調(diào)用延遲函數(shù)x=0xbf;/第7盞燈點亮delay (); /調(diào)用延遲函數(shù)x=0x7f;/第8盞燈點亮delay (); /調(diào)用延遲函數(shù)以下以下/例8 :用不同的數(shù)據(jù)類型控制燈的閃爍時間包含#include /單片機寄存器的頭文件/函數(shù)功能:用整形數(shù)據(jù)延遲時間/void int_

7、delay(void) /延遲時間長舉止無符號整數(shù)m; /定義無符號整形變量、2字節(jié)數(shù)據(jù),值域為065535for(m=0; m36000; m )/空操作以下/函數(shù)功能:用文字型數(shù)據(jù)延遲時間/void char_delay(void) /延遲時間短舉止無符號char I,j; /定義無符號字符類型變量、單字節(jié)數(shù)據(jù)和值域0到255for(i=0; i200; PS )for(j=0; j180; j )/空操作以下/函數(shù)功能:主函數(shù)/語音主(語音主)舉止無符號char I;while(1)舉止for(i=0; i3; PS )舉止P1=0xfe; /P1.0端口的指示燈點亮int_delay

8、(); /延長一段時間P1=0xff; /熄燈int_delay (); /延長一段時間以下for(i=0; i3; PS )舉止P1=0xef; /P1.4端口的指示燈點亮char_delay (); /延長一段時間P1=0xff; /熄燈char_delay (); /延長一段時間以下以下以下/例9 :分別用P0端口、P1端口顯示加法和減法的結果#includevoidmain(voidmain )舉止無符號char m,n;m=43; /即十進制數(shù)2x16 11=43n=60; /即十進制3x16 12=60P1=m n; /P1=103=0110 0111B,結果P1.3、P1.4、P

9、1.7端口的燈點亮P0=n-m; /p0=17=0001b,結果P0.0、P0.4的燈熄滅以下/情況10 :用P0、P1端口表示乘法結果包含#include /單片機寄存器的頭文件voidmain(voidmain )舉止無符號char m,n;unsigned int s;m=64;n=71;s=m n; /s=64 71=4544,需要16位的二進制,高位8位發(fā)送P1端口,低位8位發(fā)送P0端口/4544=17256192=h31616h16h0/兩側除以256,則等于17 192/256=H3 16 H2 (H1 16 H0)/256/因此,高位8位的十六進制H3 16 H2一定等于17,

10、即4544除以256的商/低位8位的十六進制H1 16 H0一定是192,即4544除以256的馀數(shù)P1=s/256; /高8位P1口、p1=17=11h=0001b、P1.0和P1.4口消失,其馀光P0=s%6; /下位8位P0口、P3=192=c0H=1100 0000B、P3.1、P3.6、P3.7口消失,其馀光以下/情況11 :用P1、P0端口顯示除法結果包含#include /單片機寄存器的頭文件voidmain(voidmain )舉止P1=36/5; /求整數(shù)P0=(36%5) 10)/5; /求小數(shù)while(1)防止無限循環(huán)程序“跑”以下/例12 :通過自我增加運算控制P0口8位LED流水花紋包含#include /單片機寄存器的頭文件/函數(shù)功能:延遲時間/void delay(void )舉止unsigned int i;for(i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論