專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命
提供開發(fā)工具、應(yīng)用測試 完善的開發(fā)代碼案例庫分享
從全面的產(chǎn)品導(dǎo)入到強大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無限潛能!
十年專注單片機方案開發(fā)的方案公司英銳恩,分享USART 自動選擇波特率的程序。英銳恩現(xiàn)提供服務(wù)產(chǎn)品涉及主控芯片:8位單片機、16位單片機、32位單片機及各類運算放大器等。
;==========常數(shù)===========
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