0.png (14.88 KB, 下載次數: 70)
下載附件
2018-5-28 17:50 上傳
0.png (39.48 KB, 下載次數: 51)
下載附件
2018-5-28 17:50 上傳
單片機源程序如下:
- /*******************************************************************************
- * 實 驗 名 : LED流水燈實驗
- * 實驗說明 : 軟件延時實現LED流水燈效果
- * 連接方式 : 見仿真圖
- * 注 意 :
- *******************************************************************************/
- ORG 0000H ;程序從000H地址開始運行
- AJMP MAIN ;跳轉到 MAIN程序
- ORG 030H ;MAIN程序從030H開始運行
- MAIN:
- MOV P1,#0FEH
- ACALL DEL ;調用延時子程序
- MOV P1,#0FCH
- ACALL DEL ;調用延時子程序
- MOV P1,#0F8H
- ACALL DEL
- MOV P1,#0F0H
- ACALL DEL
- MOV P1,#0E0H
- ACALL DEL
- MOV P1,#0C0H
- ACALL DEL
- MOV P1,#080H
- ACALL DEL
- MOV P1,#000H
- ACALL DEL
- MOV P1,#0FFH
- AJMP MAIN ;跳轉到MAIN程序
- ; 延時子程序
- DEL: MOV R5,#02H
- DEL1: MOV R6,#0F0H
- DEL2: MOV R7,#0F0H
- DEL3: DJNZ R7, DEL3
- DJNZ R6, DEL2
- DJNZ R5, DEL1
- RET
- END
復制代碼
- /*******************************************************************************
- * 實 驗 名 : 流水燈實驗
- * 實驗說明 : 軟件延時實現LED流水燈效果
- * 連接方式 : 見仿真圖
- * 注 意 :
- *******************************************************************************/
- //--包含你要使用的頭文件
- #include <reg52.h> //此文件中定義了51的一些特殊功能寄存器
- #include <intrins.h>
- //--聲明全局函數--//
- void Delay10ms(unsigned int c); //延時10ms
- /*******************************************************************************
- * 函 數 名 : main
- * 函數功能 : 主函數
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- main()
- {
- unsigned char LED;
- LED = 0xfe; //0xfe = 1111 1110
- while (1)
- {
- P1 = LED;
- Delay10ms(25); //延時250ms
- LED = LED << 1; //循環左移1位,點亮下一個LED ,"<<"為左移
- if (P1 == 0x00) //當它全亮的時候,重新賦值
- {
- LED = 0xfe; // 0xfe = 1111 1110
- }
-
- }
- }
- /*******************************************************************************
- * 函 數 名 : Delay10ms
- * 函數功能 : 延時函數,延時10ms
- * 輸 入 : 無
- * 輸 出 : 無
- *******************************************************************************/
- void Delay10ms(unsigned int c) //誤差 0us
- {
- unsigned char a, b;
- //--c已經在傳遞過來的時候已經賦值了,所以在for語句第一句就不用賦值了--//
- for (;c>0;c--)
- {
- for (b=38;b>0;b--)
- {
- for (a=130;a>0;a--);
- }
-
- }
- }
復制代碼
所有資料51hei提供下載:
LED流水燈.rar
(80.38 KB, 下載次數: 89)
2018-5-28 16:29 上傳
點擊文件名下載附件
LED流水燈proteus仿真 下載積分: 黑幣 -5
|