小知識點補充69
1,定時器溢出率=定時器定時時間的倒數
2,電源控制寄存器(0x87)
PCON D7 D6 D5 D4 D3 D2 D1 D0
位名稱 SMOD GF1 GF0 PD IDL
SMOD:串行口波特率倍增位 =1倍增
DL: 空閒方式控制位,置1後單片機進入空閒方式,電流爲 1.7-5mA
PD:掉電方式控制位,置1後單片機,時鐘信號停止,單片機停止工作,掉電方式
GF0:通用標誌位
GF1:通用標誌位
3,獨立按鍵(非自鎖按鍵)實用電路圖:
注意:按鍵電路在實際應用最好接上拉電阻,其阻值4.7K或10K等。
小知識點補充70:
掉電模式:振盪器停止工作,內部的所有功能部件均停止工作。只能通過硬件復位退出該模式。
空閒模式:CPU進入空閒狀態,外圍電路繼續工作(中斷系統等),寄存器、PSW、A、B等內容保持在空閒模式前的狀態,可以通過中斷退出或硬件復位退出。
題71
編程實現使用定時器循環點亮LED(間隔100毫秒),當按鍵1按下時,單片機進入空閒模式,當按鍵2按下時,單片機退出空閒模式
電路圖如下:
程序源碼:
LED_ENTRY BIT P1.0
LED_EXIT BIT P1.1
ORG 0000H
LJMP START
ORG 0003H
LJMP INT0ADDR
ORG 0013H
LJMP INT1ADDR
ORG 000BH
LJMP T0ADDR
ORG 0030H
START:
MOV SP,#66H
MOV IE,#87H
MOV IP,#04H
MOV TCON,#05H
MOV TH0,#0CH
MOV TL0,#78H
MOV R0,#00H
SETB LED_ENTRY
CLR LED_EXIT
SETB TR0
MOV A,#0AAH
LOOP:
MOV P0,A
CPL A
MOV P2,A
CJNE R0,#20,$
MOV R0,#00H
AJMP LOOP
INT0ADDR:
CLR LED_ENTRY
SETB LED_EXIT
CLR TR0
MOV PCON,#01H
RETI
INT1ADDR:
SETB LED_ENTRY
CLR LED_EXIT
MOV PCON,#00H
MOV TH0,#0CH ;5 MS *20
MOV TL0,#78H
MOV R0,#0
SETB TR0
RETI
T0ADDR:
MOV TH0,#0CH ;5 MS *20
MOV TL0,#78H
INC R0
RETI
END
仿真視頻:
《單片機彙編》期末考試、考研常見考題、習題,題型彙總(三十三)掉電模式、空閒模式
題72
編程實現使用定時器循環點亮LED(間隔100毫秒),當按鍵1按下時,單片機進入掉電模式,當復位按鍵按下時,單片機退出掉電模式,測試按鍵2是否能夠退出掉電模式
電路圖:
程序源碼:
LED_ENTRY BIT P1.0
LED_EXIT BIT P1.1
ORG 0000H
LJMP START
ORG 0003H
LJMP INT0ADDR
ORG 0013H
LJMP INT1ADDR
ORG 000BH
LJMP T0ADDR
ORG 0030H
START:
MOV SP,#66H
MOV IE,#87H
MOV IP,#04H
MOV TCON,#05H
MOV TH0,#0CH
MOV TL0,#78H
MOV R0,#00H
SETB LED_ENTRY
CLR LED_EXIT
SETB TR0
MOV A,#0AAH
LOOP:
MOV P0,A
CPL A
MOV P2,A
CJNE R0,#20,$
MOV R0,#00H
AJMP LOOP
INT0ADDR:
CLR LED_ENTRY
SETB LED_EXIT
CLR TR0
MOV PCON,#02H
RETI
INT1ADDR: ;這段程序不起作用,只能通過硬件復位退出掉電模式 START
SETB LED_ENTRY
CLR LED_EXIT
MOV PCON,#00H
MOV TH0,#0CH ;5 MS *20
MOV TL0,#78H
MOV R0,#0
SETB TR0
RETI ;這段程序不起作用,只能通過硬件復位退出掉電模式 END
T0ADDR:
MOV TH0,#0CH ;5 MS *20
MOV TL0,#78H
INC R0
RETI
END
效果圖:
按鍵1按下進入掉電模式:(此時,按鍵2無論按多少次也沒用,只能按下復位按鍵退出(硬件復位))
按下復位按鈕後: