微控制器與嵌入式系統實驗三 P1、P3 口的應用
阿新 • • 發佈:2019-02-06
實驗三 P1、P3 口的應用
一 、 實驗目的
1.掌握 P3 口、P1 口簡單使用。
2.學習延時程式的編寫和使用。
二 、 實驗內容
編制以下程式:
1、P1 口做輸出口,接八隻發光二極體,編寫程式,使發光二極體迴圈點亮。
2、P3.3 口做輸入口,外接一脈衝,每輸入一個脈衝,P1 口按十六進位制加一。
3、遮蔽實驗內容 2 中的延時子程式,再執行程式,對比前後的執行結果。
三 、 實驗說明
一 、 實驗目的
1.掌握 P3 口、P1 口簡單使用。
2.學習延時程式的編寫和使用。
二 、 實驗內容
編制以下程式:
1、P1 口做輸出口,接八隻發光二極體,編寫程式,使發光二極體迴圈點亮。
2、P3.3 口做輸入口,外接一脈衝,每輸入一個脈衝,P1 口按十六進位制加一。
3、遮蔽實驗內容 2 中的延時子程式,再執行程式,對比前後的執行結果。
三 、 實驗說明
1.對於 MCS51/96MCU,P1 口是準雙向口。它作為輸出口時與一般的雙向口使用方法相同。由準雙向口結構可知當 P1 口用為輸入口時,必須先對它置“1”。若不先對它置“1”,讀入的資料是不正確的。
四 、 實驗線路
實驗箱如下圖
實驗內容1硬體連線圖如左圖,內容2、3如右圖
五 、 實驗程式及框圖
1、P1 口做輸出口,接八隻發光二極體,編寫程式,使發光二極體迴圈點亮
流程圖:
程式:
;P1輸出,8個二極體迴圈點亮 ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV A,#80H ;燈點亮初始狀態L7亮其餘滅 LIGHT: MOV P1,A ;送燈的狀態至P1口 LCALL DELAY ;延時 RR A ;右移一位 LJMP LIGHT ;延時程式,晶體振盪頻率為12MHz時,延時約1.004066s DELAY: MOV R5,#10 DELAY0: MOV R6,#200 DELAY1: MOV R7,#124 DJNZ R7,$ DJNZ R6,DELAY1 DJNZ R5,DELAY0 RET END
2、P3.3 口做輸入口,外接一脈衝,每輸入一個脈衝,P1 口按十六進位制加一
流程圖:
程式:
;P3.3做輸入口外接脈衝,P1口按十六進位制加一 ORG 0000H LJMP MAIN ORG 0030H MAIN: CLR A MOV P1,A ;初始狀態送P1口 LP: JB P3.3,LP LCALL DELAY ;延時消抖 JB P3.3,LP LP1: JNB P3.3,LP1 LCALL DELAY ;延時消抖 JNB P3.3,LP INC A ;加一 MOV P1,A ;加一後的數送P1口 LJMP LP ;延時程式 DELAY: MOV R6,#14H DELAY1: MOV R7,#7CH DJNZ R7,$ DJNZ R6,DELAY1 RET END