一、實驗目的與要求
1.熟悉KeilC51集成環境軟件的安裝與使用方法。
2.熟悉MCS51匯編指令,能自己編寫簡單的程序,控制硬件。
3.熟悉暢學開發平臺,掌握單片機最小系統及IO口的簡單控制及不同組IO口的特點。
1.jpg (13.17 KB, 下載次數: 26)
下載附件
2018-12-4 10:31 上傳
二、實驗內容
2.1 實驗完成內容
1.熟悉Keil C51集成環境軟件的使用方法。
2.照接線連圖編寫程序,完善給出程序,實現以下功能
3.根據已給程序實現LED燈從上到下,從下到上依次點亮。
4.完善程序,實現LED燈從中間到兩邊,從兩邊到中間依次點亮。
5.觀察實驗結果,驗證程序是否正確。
2.2 芯片選型
STC12C5A60S2
2.3 電路原理圖
2.4 關鍵資源說明(所應用單片機內部資源及外圍接口芯片的核心說明)
將單色流水燈區的8個LED燈分別與IO引腳P1.0-P1.7相連
2.5 程序流程圖
三、實驗程序
實驗使用匯編語言,完整代碼如下:
ORG 0000H
LJMP START
ORG 0100H
START:
MOV A , #0FFH
CLR C
MOV R4 , #08H
LOOP1:
RRC A
MOV P1 , A
LCALL DELAY
DJNZ R4 ,LOOP1
MOV A , #0FFH
CLR C
MOV R4 , #08H
LOOP2:
RLC A
MOV P1 , A
LCALL DELAY
DJNZ R4 ,LOOP2
LOOP3:
MOV A,#0E7H
MOV P1,A
LCALL DELAY
MOV A,#0DBH
MOV P1,A
LCALL DELAY
MOV A,#0BDH
MOV P1,A
LCALL DELAY
MOV A,#7EH
MOV P1,A
LCALL DELAY
MOV A,#0BDH
MOV P1,A
LCALL DELAY
MOV A,#0DBH
MOV P1,A
LCALL DELAY
MOV A,#0E7H
MOV P1,A
LCALL DELAY
JMP START
DELAY:
MOV R1 , #20H
D0:
MOV R2 , #00H
D1:
MOV R3 , #00H
DJNZ R3 , $
DJNZ R2, D1
DJNZ R1 , D0
RET
END
四、實驗運行效果及說明
8個LED燈依次亮起,實現從兩側往中間循環點亮,再從中間往兩邊循環點亮。
五、實驗分析與小結
|