51波特率計算公式
溢出率=溢出周期的倒數(shù)
本文引用地址:http://m.butianyuan.cn/article/201611/315385.htm溢出周期=(256-X)*12/Fosc
波特率=(2^smod * Fsoc)/(32 *12*(256-X))
-------------------
2430的波特率公式:
值得注意的是,CC2430串口波特率的設置與一般8051不同,因為其內部集成了一個波特率發(fā)生器,因此,不需要使用定時器而只需設置相關的SFR 寄存器UxBAUD.BAUD_M[7:0]和UxGCR.BAUD[4:0],便可得到系統(tǒng)要求的波特率,其關系式如下:
其中,F(xiàn)為系統(tǒng)時鐘頻率。若F為32 MHz,執(zhí)行下列語句.得到9600 b/s的串口波特率:
MOV U0GCR,#08H
MOV U0BAUD,#3BH ;設置波特率為9600 b/s
實際上對USART的操作還包含對其所連接的I/O口的設置。設置I/O應與硬件密切結合,如:
MOV P1SEL,#30H ;選擇P1.5,P1.4為外部功能口
MOV P1DIR,#20H ;選擇P1.5為輸出口,P1.4為輸入口
CLR P1FG ;清空P1口的中斷標志
MOV P2SEL,#00H ;設置USART0為優(yōu)先
同樣.對DMA和Radio的操作也有這樣功能全面的SFR寄存器。對CC2430進行程序設計,其實就是對其SRF寄存器的認識和運用過程,篇幅所限這里不一一贅述。
其中U0GCR對應BAUD_E的值,U0BAUD對應BUAD_M的值
評論