3.若8051的晶振频率fosc为11.0592MHz,串行口工作在方式1,T1作为波特率发生器,T1工作在自动重装初值

3.若8051的晶振频率fosc为11.0592MHz,串行口工作在方式1,T1作为波特率发生器,T1工作在自动重装初值的8位定时方式,设SMOD=0,要求串行口的波特率为4800Hz,求出TH1的值。

要求详细过程

串行口工作在方式1:

1、波特率=2的SMOD次/32*定时器T1的溢出率;

2、定时器T1的溢出率=计数速率/(256-X)=fosc/12/(256-X);

将2代入1得

3、波特率=2的SMOD次/32*fosc/12/(256-X);

将你的参数代入3得

4800=2的0次方/32*11059200/12/(256-X);

4800=1/32*11059200/12/(256-X);

256-X=11059200/32/12/4800=6;

X=256-6=250=0xFA;

X即为TH1初值

温馨提示:答案为网友推荐,仅供参考