51單片機頻率的計算
Y=256-((256-X)*4)
當定時器重載值是16bit時(較新的51單片機型號,如C8051F系列的Timer3):
Y=65536-((65536-X)*4)
下面舉例說明波特率選擇過程:假設(shè)系統(tǒng)要求的通信頻率在20000bit/s以下,晶振頻率為12MHz,設(shè)置SMOD=1(即波特率倍增)。則TH1=256-62500/波特率
baud(波特率)=2^smod*12M/(12*32*(256-TH1)
當SMOD=1時,k為倍數(shù),是2的冪,公式為:
波特率=K×12000000/32×12×(256-TH1)
所以,TH1=0xf3=256-(12000000/384×波特率) 其中波特率為2400
TL1=0xF3; //9600波特率的初值,板子使用12M晶振,初值=256-12000000/32/12/2400
12000000是晶振的值,32是指使用的是32位,即計數(shù)器模式2
設(shè)計的時候就是這樣的。12個晶振周期才能完成一條指令的執(zhí)行
評論