金沙js5线路(中国)有限公司

技术热线: 4007-888-234

USART 自动选择波特率的程序

更新时间: 2019-03-23
阅读量:2157

十年专注单片机方案开发的方案公司金沙js5线路,分享USART 自动选择波特率的程序。金沙js5线路现提供服务产品涉及主控芯片:8位单片机、16位单片机、32位单片机及各类运算放大器等。

;==========常数===========
BPS1152                EQU        00ah
BPS576                EQU        015h
BPS384                EQU        020h
BPS96                EQU        081h
VAL_BPS                EQU        BPS384       
PWM_MAX                EQU        0ffh
;=====================
;RC3 RA4 选择波特率
;#1 #0 : Baud Rate
; L  L : 9600bps  (BPS96)
; L  H : 38400bps (BPS384)
; H  L : 57600bps (BPS576)
; H  H : 115200bps(BPS1152)
;----------------------------       
BAUDRATE
        btfss        PORTC,3                ;选择四种波特率
        goto        BAUD_L
        btfss        PORTA,4               
        goto        BAUD_HL
BAUD_HH
        movlw        BPS1152                ;0X0A  

 113600有误差
        goto        BAUDSET
BAUD_HL
        movlw        BPS576                ;0X15        56800
        goto        BAUDSET
BAUD_L
        btfss        PORTA,4               
        goto        BAUD_LL
BAUD_LH
        movlw        BPS384                ;0X20        39000
        goto        BAUDSET
BAUD_LL
        movlw        BPS96                 ;0X81   9690
BAUDSET
        bsf        STATUS,RP0        
        movwf        SPBRG                
        bcf        STATUS,RP0

XML 地图