⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rs50_f51.asm

📁 MCS-51单片机实验 39个实用实验和源码
💻 ASM
字号:
;FOR     EAT598
;系统晶振是1.8432MHZ
;CS8250连0F200H,串口波特率为9600
;将8250的RXD和232的RXD连接,将8250的TXD和232的TXD连接
;程序执行时,应打开另一通讯软件(如TERM95),可实现从PC机键盘上键入的显示在屏幕上。
;/************************************************************/
UARTBASE EQU    0F200H
UARTDATA EQU    0F200H			;8250 数据口地址
UARTDLL  EQU    0F200H
UARTIER  EQU    0F201H
UARTDLM  EQU    0F201H
UARTIIR  EQU    0F202H
UARTLCR  EQU    0F203H
UARTMCR  EQU    0F204H
UARTLSR  EQU    0F205H
UARTMSR  EQU    0F206H
UARTSCR  EQU    0F207H
;/************************************************************/
        ORG     0000H
        AJMP    START
        ORG     0040H
START:
        MOV     SP,#60H
        LCALL   INIT8250        ;初始化8250
WAIRXD:		
        MOV     DPTR,#UARTLSR   ;8250 状态寄存器(读)
        MOVX    A,@DPTR
        ANL     A,#01H
        JZ      WAIRXD          ;判断是否有串行输入
        MOV     DPTR,#UARTDATA
        MOVX    A,@DPTR         ;读接收到的字符
		MOV		B,A  

		MOV     DPTR,#UARTLSR   
		MOV     A,B         
        MOV     DPTR,#UARTDATA
        MOVX    @DPTR,A         ;发送数据   	
WAITXD: 		
        MOV     DPTR,#UARTLSR   ;8250 状态寄存器(读)
        MOVX    A,@DPTR
        ANL     A,#20H
        JZ      WAITXD          ;判断发送完否
       
        NOP

		SJMP    WAIRXD
INIT8250:                       ;8250 初始化子程序
        PUSH   	DPH             ;保存现场
        PUSH   	DPL
        PUSH   	ACC
        
    	MOV    A,#80H          	;CHANGE TO BAUD GEN. MODE
		MOV    DPTR,#UARTLCR
		MOVX   @DPTR,A	
		MOV    A,#0CH		   	;BAUD = 1.8432M /16 /0X0C 9600
		MOV    DPTR,#UARTDLL
		MOVX   @DPTR,A
		MOV    A,#00H		    
		MOV    DPTR,#UARTDLM
		MOVX   @DPTR,A

	
		MOV    A,#03H		     ;CHANGE TO N,8,1
		MOV    DPTR,#UARTLCR
		MOVX   @DPTR,A
;*****************************************	
;	MOV    A,00000011B      	;MODEM控制寄存器地址,8250不进行回送,此时要将8250的RXD和TXD连接
;	MOV    DPTR,#UARTMCR
;	MOVX   @DPTR,A	
;END**************************************	
		MOV    A,#00H
		MOV    DPTR,#UARTIER
		MOVX   @DPTR,A		    ;INTERRUPT ENABLE ALL OFF
    

        POP    	ACC             ;恢复现场
        POP    	DPL
        POP    	DPH
        RET

        END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -