GM16C550芯片初始化模块
Init_16C550:
MOV DPTR,#LCR ;除数锁定允许
MOV A,#80H
MOVX @DPTR, A
MOV DPTR,#LSB ;波特率为9600baud
MOV A,#0CH
MOVX @DPTR, A
INC DPTR
CLR A
MOVX @DPTR, A
MOV DPTR,#LCR;通讯传输长度为8位,停止 ;位为1,偶校验
MOV A,#1BH
MOVX @DPTR, A
MOV DPTR,#MCR;异步串口芯片的DTR。RTS ;引脚送出逻辑低电平
MOV A,#03H
MOVX @DPTR,A
MOV DPTR,#IER
MOV A,#01H
MOVX @DPTR,A
采用中断的方式接数据
Interrupt2:
PUSH ACC
PUSH DPH
PUSH DPL
PUSH PSW
MOV DPTR,#RHR ;接受数据
MOVX A,@DPTR
……………………
POP PSW
POP DPL
POP DPH
POP ACC
RETI
至此,完成了一个小型的单片机MODEM通讯系统。其中的检错寄存器、MODEM状态寄存器等应用限于篇幅没有完全涉及到。有兴趣的朋友可以试一试,那么你就会对MODEM通讯有一个比较深刻的认识。