微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > FPGA通信RS232 UART发不出数据给串口调试助手

FPGA通信RS232 UART发不出数据给串口调试助手

时间:10-02 整理:3721RD 点击:
       本人新手一枚,用FPGA做RS232收发通信,当收到相应数据后,FPGA向串口调试助手发送一个固定数据,目前用示波器测了FPGA的RX引脚波形,确实是正确的数据,简单编写了一个发送数据的程序,串口调试助手也能正确收到这个数据,说明电路应该是没问题。程序在开发上测试时,确实能正确检测到串口调试助手发的数据,并回发数据和点灯;但在我的板子上却不好用。通过前面的几步,我已经排除了电路问题和程序问题,实在不明白还能哪里出现问题,不知道大家有没有什么好的建议或者有类似的问题?希望各位大神解答,感激不尽~

这只会是如下两个原因之一:
1、串口电平转换芯片的输出管脚损坏(芯片供电不正常也会出现这类现象);
2、FPGA管脚没焊好,或者是引脚分配错误。

在你的板子上用示波器测量了波形没?你的板子和开发板时钟是否一致?你的板子复位信号是否正常?

1、时钟频率是否正确?PLL配置是否恰当?串口波特率对通信的影响还是很大的,所以你需要仔细检查或测量一下你的时钟频率是否准确。
2、收、发端的波特率设置是否一致,奇、偶校验设置是否一致也都需要确认,特别是奇、偶校验设置,容易被忽略。
3、不知道你的FPGA里面是用硬件逻辑做的收发控制还是用了软核?如果是硬件逻辑控制的,那么需要检查验证你的控制逻辑设计是否正确;如果是用软核实现的,那么出问题的可能性会更大,FPGA逻辑部分和软核的端口设置、地址分配、读写时序配合等都有可能出问题。

在示波器测试了呢,波形都是对的,但是现在又不行了,我现在FPGA的收数据引脚RX一直是低电平,应该是一直高电平,然后下降沿后开始收到数据的,现在一直为低电平了。快疯了。什么都木有改突然这样子了

     您说的前两个应该是没有问题,我是用硬核的。不过我现在出现了更大的问题,我换了一块新的FPGA(原来那块 JTAG让我给弄烧了),剩下都木有改变,现在接进去后会发现FPGA的收数据引脚端一直保持低电平了,不能像原来那样保持高电平后一收到数据检测下降沿后出现正常的波形了。另外在之前那块FPGA好使的时候,我怀疑是FPGA的收数据引脚有问题,于是我跳线到FPGA另一个IO口,发现只要这样子RX就会一直为低电平,这会是什么原因呢?

您说的前两个应该是没有问题,我是用硬核的。不过我现在出现了更大的问题,我换了一块新的FPGA(原来那块 JTAG让我给弄烧了),剩下都木有改变,现在接进去后会发现FPGA的收数据引脚端一直保持低电平了,不能像原来那样保持高电平后一收到数据检测下降沿后出现正常的波形了。另外在之前那块FPGA好使的时候,我怀疑是FPGA的收数据引脚有问题,于是我跳线到FPGA另一个IO口,发现只要这样子RX就会一直为低电平,这会是什么原因呢?

学习学习,谢谢分享!

确实是器件的问题,我也是醉了~

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top