UART串口通讯协议的实现

1.需求
在实现生活中,往往不是单独工作的,需要与别人进行合作,这就需要交流,以传达信息。在fpga中,各个芯片之间也是相对独立的,要想协同一起工作,双方之间的通讯是必不可少的。
2.问题
1. 何时发送数据: 什么时候开始,我知道你开始发送数据
2. 何时结束发送:什么时候开始,我知道你已经结束数据的发送了
3. 该怎样接受数据:接受到的数据我该怎样进行存储
3. 协议
uart一共用4根线,分别是数据发送线,数据接收线,vcc,gnd,从这4根线上来看,没有时钟线,所以需要规定数据发送结束的速率,即波特率要一致,同时可以看到发送数据线和接收数据线是分开的,所以发送和接收是可以同时进行的。
1. 空闲态:当两段都没有数据发送的时候,为空闲态,此时规定数据发送线和数据接收线上的电平均为高电平
2. 开始发送数据态:拉低数据发送线一个周期,表示数据准备开始发送了,这时注意并没有发生数据,只是表示我要发送数据了,你要准备开始接收了
3. 数据发送态:在开始发送数据态结束后,后面的八个时钟周期每一个时钟发送一个数据位,先发送数据的低位,然后发送数据的高位
4. 结束数据发送:在数据发送态完成后,接下来的1、1.5、2个时钟周期为停止位,此时拉高数据发送线
5. 校验位暂不考虑
ps:上面所说的时钟周期,不是系统的时钟周期,而且两边规定好的波特率的时钟周期,这个要注意下;上面主要说明了一下数据发送的过程,由数据发送的过程来推数据接收的过程并不困难。
然后这个是8位的,然后想变成16位的,可以在此模块上面在加一个top模块,接收了两个数据给一个应答。
原文标题:uart串口通讯协议
文章出处:【微信公众号:fpga之家】欢迎添加关注!文章转载请注明出处。


不再低调,QuecPython横空出世
LED驱动器在高功率机器视觉闪光灯上的应用
新机华为P11曝光:双面玻璃设计+麒麟970,明年年初发布
苹果iOS 12.3支持启用「隔空播放 2」的电视
量子点涂料可快速测试飞机
UART串口通讯协议的实现
未来的配电网可能出现的新技术
STM32与FPGA通信中FSMC操作实例
华硕可抽拔电池Pine Trail上网本揭晓
vhdl是什么意思
报道称微软自研基于Arm的处理器芯片
dvteclipse代码预处理的简单操作方法推荐
如何制作超声波雷达
夏普切断三星电视面板供应,三星将与LG进行协商
国产圆柱电池真空注液机
百大案例 | 玩转网络乐高,肯尼亚Absa银行打造分支网点数字新底座
从高级的视角来查看Linux引导过程
音圈电机无人机入驻智慧园区
探讨汇川PLC如何与rfid读写器CK-FR08-E00进行modbus-tcp通信
区块链数字资产持币生息系统开发