打印
[FPGA]

UART串口通信

[复制链接]
1666|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wgj2778|  楼主 | 2013-11-14 21:43 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
沙发
zhang-sb23| | 2013-11-15 19:39 | 只看该作者
发送数据,肯定也要先发送一个开始信号,就是低电平。然后跟着数据。

使用特权

评论回复
板凳
wgj2778|  楼主 | 2013-11-16 09:06 | 只看该作者
zhang-sb23 发表于 2013-11-15 19:39
发送数据,肯定也要先发送一个开始信号,就是低电平。然后跟着数据。

那就是检测一个低电平信号吗 还是一个上升沿

使用特权

评论回复
地板
zhang-sb23| | 2013-11-16 11:46 | 只看该作者
wgj2778 发表于 2013-11-16 09:06
那就是检测一个低电平信号吗 还是一个上升沿

首先你要明白一个问题就是,接收器是一个模块,它需要对RXD进行检测,检测到低电平,那这个模块就会执行接收数据。
而发送器是另一个模块,它发送数据是你可以控制的,你想它发数据,它就发数据,而且数据是你自定义的。它不需要检测,因为它是发送器,不是接收器,接收器才会检测RXD线上有没有新数据。发送器只对TXD这根线操作。发送器空闲的时候会把这根线拉高,当你想发数据时,发送器就会把这根线拉低,后面跟着的就是数据。数据后面是奇偶位与停止位。停止位后面就是把TXD再次拉高。
    建议你先把通信协议搞清楚,再写代码。

使用特权

评论回复
5
zxqloveyou| | 2013-11-16 11:58 | 只看该作者
先去看UART时序图,再看别人写好的代码,分析代码,再自己也照着写一个.

使用特权

评论回复
6
wgj2778|  楼主 | 2013-11-19 08:18 | 只看该作者
zxqloveyou 发表于 2013-11-16 11:58
先去看UART时序图,再看别人写好的代码,分析代码,再自己也照着写一个.

对于接收部分 我能理解 检测一个下降沿开始  就是发送部分  一开始从哪进行呢

使用特权

评论回复
7
zxqloveyou| | 2013-11-19 12:28 | 只看该作者
发送 就是拉低一个clk就算是开始信号了啊,过后的八个clk的就是数据

使用特权

评论回复
8
zhang-sb23| | 2013-11-19 12:49 | 只看该作者
主要是楼主要把通信协议弄清楚先,还有就是要搞清楚接受数据和发送数据是分开的,初学者最好不要把他们写在一起,虽然他们是可以写在一起,但对初学者来说会增加复杂度。
还有发送数据,一开始是给信号高电平。你要发数据时,才拉低,然后跟着8位数据。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

16

帖子

1

粉丝