單片機波特率的設(shè)計
1、方式0和方式2
在方式0時,每個機器周期發(fā)送或接收一位數(shù)據(jù),因此波特率固定為單片機時鐘頻率的1/12(即fosc/12),且不受SMOD的影響。若晶振頻率fosc=12MHz時,則波特率=fosc/12=12MHz/12=1Mb/s,即1 μs移位一次。
方式2的波特率取決于PCON中的SMOD之值,當SMOD=0時,波特率為fOSC的1/64;若SMOD=1時,則波特率為fOSC的1/32。即:
2、方式1和方式3
方式1、方式3的波特率可變,由定時器T1的溢出率與SMOD的值共同決定。即:
其中溢出率取決于計數(shù)速率和定時器的預置值。當利用T1作波特率發(fā)生器時,通常選用方式2,即8位自動重裝載模式,其中TL1作計數(shù)器,THl存放自動重裝載的定時初值。因此,對T1初始化時,寫入方式控制字(TMOD)=00100000B。這樣每過“256-X”個機器周期,定時器T1就會產(chǎn)生一次溢出,溢出周期為:溢出率為溢出周期之倒數(shù),因此,波特率的公式還可寫成:
編輯:admin 最后修改時間:2019-07-06