1、串口通讯时序:
如上图所示,串口时序由起始位、数据位、校验位、停止位组成。
起始位 :占用1bit,低电平有效
数据位 :可以是5bit、6bit、7bit、8bit,其中最常用是8bit
校验位 :奇校验、偶校验、无校验,占用1bit,无校验位时不占用。
偶校验(even parity):校验原则是,数据位和校验位中1的个数为偶数
奇校验(odd parity):校验原则是,数据位和校验位中1的个数为奇数
无校验:即时序图中没有校验位
停止位 :占用1bit、1.5bit、2bit,高电平有效
2、串口通讯速率
常用的串口通讯速率:2400bps、4800bps、9600bps、19200bps、38400bps、115200bps。现在最常用的应该是115200bps的速率,不快不慢正合适。
当然有些应用场合数据量较大,使用低波特率数据传输占用时间太长,应该适当提高波特率,例如我司有一款产品设置波特率接近1mbps,单片机使用这么高的速率必须开启硬件流控,甚至停止位也要大于1bit。
3、最基本的串口数据传输
最基本的串口传输只需要两根信号线,即txd和rxd,通讯双方交叉相接,txd发送数据,rxd接收数据。
传输数据时双方必须保证通讯波特率、数据位、检验位,停止位保持一致,才能正确通讯。这种串口传输方式有一定的不可靠性,可能会导致数据丢失,例如,mcu1向mcu2发送数据,此时mcu2正在忙于其他任务,无暇顾及串口接收,mcu1发送的数据把mcu2的fifo填满后,剩下的字节mcu2会直接抛弃。
4、带流控的串口数据传输
此种方式使用4根线传输数据,即,txd、rxd、cts、rtx。和基本数据传输方式相比增加了cts和rts两个管脚,cts和rts也是交叉相接。
rts :require to send缩写,请求发送,此管脚为输出管脚,用于指示自己可以接收数据,输出低电平表示可以接收数据,输出高电平指示不能接收数据。
cts :clear to send缩写,允许发送,此管脚为输入管脚,用于判断发送方是否能够接收数据,读取到低电平表示对方能够接收数据,读取到高电平表示对方不能接收数据。
这种传输方式能够保证数据传输不会丢数据,保证数据的完整性。例如,mcu1向mcu2发送数据,此时mcu2正在忙于其他任务,无暇顾及串口接收,mcu1发送的数据把mcu2的fifo填满后,mcu2会把自己的rts拉高,指示自己不能接收数据,此时mcu1发现自己的cts变高了,mcu1的数据发送会进入等待状态,直到mcu1的cts变低。
当mcu2把自己的串口fifo中的数据读取出来后,mcu2的rts会自动变低,这时候mcu1可以继续发送数据。这种带硬件流控的传输方式,保证了数据的完成性。
5、万能的串口
串口简单易用,几乎任何接口都能转成串口使用,尤其是把一些复杂接口转换成简单的串口,能够大大降低研发成本。
激光焊接/点焊的特性及优势分析?
norflash价格下半年追涨 赛普拉斯、旺宏等大厂产能紧缺
核心数越多CPU越好对吗?
LCD面板价格还会涨到何时?
更美更好玩,OPPO Reno6系列正式发布
串口通讯时序详解
华中师范大学宣布成立人工智能教育学部
华为5G CPE Pro在北京全面开花5G终端及测试点进行了实测
浅析COB封装和MSD封装技术的区别
MEMS/NEMS结构基于模板的广度相位解包裹方法
新款Mac Pro配件将采用全新配色方案,均采用了银黑混搭配色
生物识别行业迎来了爆发式增长期,为安全而生的生物识别真的安全吗?
美国空军研究实验室建立了首个海外高能激光武器系统
电动汽车的系统级EMC设计
广电推动5G+工业互联网的创新发展
Stratix 10 FPGA和SoC体系结构和产品细节公布,将云时代的网络通信技术推向了又一个巅峰
家电电磁兼容测试解决方案和满足标准
通过NVIDIA NVUE弥合CLI和自动化IT团队的鸿沟
关于微安级TMR电流传感器TMR-MAC005的性能分析和应用
门禁探制器的选购误区与有哪些好的建议