📄 m2.asm
字号:
;FILE: M2.ASM
;
;THIS PROGRAM TRANSMITS THE HEX VALUE AA REPETITIVELY ACCROSS THE SERIAL PORT
;OF A MCS-51 IN MODE 2 AT A RATE OF 1/32 THE OSCILLATOR FREQUENCY
;
;DETAILS:
;
;MODE 2: 11 BITS ARE TRANSMITTED THROUGH TXD OR RECEIVED THROUGH RXD.
;STARTING WITH A START BIT (0), 8 DATA BITS WITH THE LEAST SIGNIFICANT BIT
;FIRST, A PROGRAMMABLE 9TH DATA BIT, AND A STOP BIT (1). ON TRANSMIT, THE
;9TH DATA BIT, TB8 IN SCON, CAN BE ASSIGNED A VALUE OF 0 OR 1. FOR EXAMPLE
;THE PARITY BIT, P FROM PSW, COULD BE MOVED INTO TB8. ON RECEIVE, THE NINTH
;DATA BIT GOES INTO RB8 IN SCON WHILE THE STOP BIT IS IGNORED. (THE VALIDITY
;OF THE STOP BIT CAN BE CHECKED WITH FRAMING ERROR DETECTION) THE BAUD RATE
;IS PROGRAMABLE TO IETHER 1/32 OR 1/64 THE OSCILLATOR FREQUENCY. IF THE
;SMOD1 BIT IN THE PCON REGISTER IS 0, THEN THE BAUD RATE IS 1/64 THE
;OSCILLATOR FREQUENCY, IF SMOD1 IS 1, THE THE BAUD RATE IS 1/32 THE
;OSCILLATOR FREQUENCY.
;
;
PCON EQU 87H
ORG 00H
JMP MAIN
MAIN: MOV SCON,#80H ;SET UP FOR MODE 2
MOV PCON,#80H ;BAUD RATE EQUALS 1/32 OSC. FREQ
CLR TI ;READY TO TRANSMIT
LOOP: MOV SBUF,#0AAH ;TRANSMIT AAH
JNB TI,$ ;WAIT FOR END OF TRANSMISSION
CLR TI ;READY TO TRANSMIT
JMP LOOP ;DO IT ALL AGAIN
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -