查看: 96|回复: 0

基于Odyssey Max 10 FPGA EValuation Kit试用板的串口发送实验

[复制链接]

主题

好友

24

积分

白丁

该用户从未签到

发表于 2017-8-29 09:30:01 |显示全部楼层
本次实验是验证max10开发板的串口通信功能,之前已经写过基于si7020的温度采集的测试。现在想通过串口将程序传送至上位机。废话不多说,直接来干货。
-------------------------------------------------------------------------------------我是分割线---------------------------------------------------------------------------
1、串口发送模块接口,串口时钟,发送起始信号,发送忙标志用来对串口进行控制。

2、波特率发生器(大家可以自行百度,这边无须讲解)
parameter ClkFrequency = 50000000;
parameter Baud = 9600;
parameter BaudGeneratorAccWidth = 16;
reg [BaudGeneratorAccWidth:0] BaudGeneratorAcc;
wire [BaudGeneratorAccWidth:0] BaudGeneratorInc = ((Baud<<(BaudGeneratorAccWidth-4))+(ClkFrequency>>5))/(ClkFrequency>>4);
always @(posedge clk)
if(TxD_busy)
   BaudGeneratorAcc <= BaudGeneratorAcc[BaudGeneratorAccWidth-1:0] + BaudGeneratorInc;
wire BaudTick = BaudGeneratorAcc[BaudGeneratorAccWidth];
3、根据串口通信的协议,串口发送主时序状态机如下。

4、顶层模块接口,只有外界时钟和串口发送接口

5、发送控制状态机,分三次完成24位数据的发送,这边是0x303030

6、管脚配置,串口选用外扩端口J4 接口 的 G9口,时钟50MHz

7、USB转TTL串口
由于板子上没有RS232电平输出,故借助USB转TTL电平转换模块PL2303实现串口通信验证
8、实验结果,上位机接收到串口数据,HEX显示。

9、副程序
chuankou.zip
10、结语,感谢爱板网 提供试用机会,学习使我快乐。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /2 下一条

手机版|电路城

GMT+8, 2019-8-24 13:37 , Processed in 0.103902 second(s), 15 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz!

返回顶部