背景:
我们知道51常用的波特率是9600,但是由于需要,不得不使用其他的波特率,然而51的运算速度有限,在软件支持下最高只有57600的波特率,这次因为给的模块用的是115200的波特率,不得不使用其他的办法。
网上的教程杂乱,良莠不齐,写下次教程共享经验。
方案:
最初我想到的方案是更换22.1184MHZ的晶振,测试成功。
然后我根据资料,发现可以使用6T模式来加速51的运算速度。
方案一:更换晶振
根据图中的公式计算,倍频情况下,TH1为0xff的时候拥有最大波特率57600.
更换22MHz的晶振后升为115200.
随手贴写下代码:
方案二:使用6T模式
这个方案也比较简单,根据公式,需要6T模式。
普通下载是12T单倍速的如图:
我们只需要换成6T倍速的就可以直接用115200的波特率了。
程序同上。