12m用多少波特率好,51单片机串口通讯程序 使用12M晶振 单片机没有1T模式 波特率为9600
来源:整理 编辑:亚灵电子网 2022-12-24 15:55:08
1,51单片机串口通讯程序 使用12M晶振 单片机没有1T模式 波特率为9600
12m/9600=1250
你需要的就是把时钟分频与波特率的分频设置好,是他们相乘等于1250.
分频的设置应该都在时钟的寄存器与串口通讯的寄存器里吧。
2,单片机12M晶振串口用什么波特率最好
传统上用的9600和4800都不行尤其是4800 许多人一直认为其误差是0.16% 其实是7% 你自己可以算一下应该用1200 或者 24002400最好

3,51单片机为什么要用12M的晶振
你用6M也可以11.0592也可以,11.0592是串口波特率比较准而已。可以不用12M的晶振。用12M晶振时,时钟经过12分频产生的机器周期,正好1微秒
4,51单片机晶振选用12M串口通信波特率应该用多少合适TH1TL1初值为多
在你这个情况下,我可以负责的告诉你,12M的晶振波特率只能是2400,9600的情况下会有7.8%的误差,所以会产生乱码,而2400波特率的情况下误差是0.16%,这样就不会产生乱码了,TH1和TL1都设为F3,你再试试。希望能帮到你根据你的补充,我也补充一下:我前些天也在做单片机和LCD之间的通信,我的LCD是HMI,它也要设定波特率,我需要把我的单片机程序中TH1和TL1都设为F3,也就是2400的波特率,同时也要把我的LCD的波特率也设定为2400。由于我还没有做过串口打印的实验,所以对这个不是很清楚,但是你要知道通信双方的波特率必须一致,你可以参考一下我的这个例子,祝你成功!
5,51单片机用多大频率的晶振好呢110592m和12m有什么区别立创
晶振的振荡频率,要根据单片机的具体应用场合来决定,并不是越高越好。11.0592MHz和12MHz的振荡频率相差不大,但如果你的单片机需要用异步串行通信功能的话,建议你选用11.0592MHz的振荡频率。因为你在进行波特率发生器的编程中,采用这个振荡频率的话,波特率计数器的计数初值可以是整数;而采用12MHz振荡频率,则计数初值只能是一个大约值(接近于某个小数的整数),长时间通信会产生误差积累而导致通信失败。
6,51单片机晶振选用12M串口通信波特率用9600我想问下怎么才能 串口打印
12M晶振不能输出9600的波特率;12M晶振只能输出1200的波特率,有少量误差,不过不影响使用。#include<reg52.h>#include<intrins.h>void Uart0_transmit(unsigned char i) //向串口发送一个字节 ES=0; TI=0; SBUF=i; // 发送数据到uart0 while (!TI); / 等待发送1个字节数据完成 TI=0 ; // 清除中断标志 ES=1;}void delay_ms() int i,j; for(i=1000;i>0;i--) for(j=25;j>0;j--) }}void SysInit(void)PCON |=0x80; SCON=0x50; TMOD=0x21; TH1=204; TL1=204; TR1=1; ES=0; TH0=0xB8; TL0=0x00; TR0=1; ET0=1;}void main (void) SysInit(); while (1)}Uart0_transmit(0x55);delay_ms;}}//应该可以了,你稍微调试一下。刚写的
7,我看到很多人说这个晶振是12M的我手头的学习板也是12M的但
PL2303 直接连接单片机的刷机IO,写程序就可以。当然,用RS232转换一下,就再稳定 CH341 --- MAX232 --- IO51晶振频率与341无关,而串口的波特率是电脑软件与单片机软件共同协商好的,与341和PL2303只是USB转串品芯片无关。你建立最小系统,使用341就不需要max232。
8,51单片机晶振选用12M串口通信波特率应该用多少合适TH1TL1
在你这个情况下,我可以负责的告诉你,12M的晶振波特率只能是2400,9600的情况下会有7.8%的误差,所以会产生乱码,而2400波特率的情况下误差是0.16%,这样就不会产生乱码了,TH1和TL1都设为F3,你再试试。希望能帮到你 根据你的补充,我也补充一下:我前些天也在做单片机和LCD之间的通信,我的LCD是HMI,它也要设定波特率,我需要把我的单片机程序中TH1和TL1都设为F3,也就是2400的波特率,同时也要把我的LCD的波特率也设定为2400。由于我还没有做过串口打印的实验,所以对这个不是很清楚,但是你要知道通信双方的波特率必须一致,你可以参考一下我的这个例子,祝你成功!
9,单片机12M晶振串口用什么波特率最好
传统上用的9600和4800都不行尤其是4800 许多人一直认为其误差是0.16% 其实是7% 你自己可以算一下应该用1200 或者 24002400最好如果要产生38400bps的波特率,那晶振的频率必须是这个的整倍数,比如11.0592,22.1184等等,否则误差就大了,就算用52的t2都不行!最好是用11.0592M的,这2113个频率可以选任意的一个波特5261率(都可以被1600整除),12M的晶振波4102特率只能是2400,9600的情况下会有7.8%的误差1653,会产生乱码,而2400波特率专的情况下误差是0.16%,不属会产生乱码了
10,怎样用12M的晶振产生38400kbps的波特率单片机串口用
如果要产生38400bps的波特率,那晶振的频率必须是这个的整倍数,比如11.0592,22.1184等等,否则误差就大了,就算用52的T2都不行!如果是52的话,是没法的,要用11.0592的晶振或者22.1184的再看看别人怎么说的。是可以得到的 ,应该是你程序初始化配置不好,51忘的差不错的,但是定时器计时溢出的量配置好,是可以得到的:12000000/38400=312.5 ,所以你得配置312或者313个时钟的定时值。可能得不到很准的38400bps 但是误差范围内 异步通信也不会出问题你说你得到得31250 是不是你自己把除数和被除数搞反了哦
文章TAG:
12m用多少波特率好多少 波特 波特率