FPGA串口回环实现帧头+命令帧+数据+校验码的传输协议
试验任务
数据格式: 头 命令 数据 数据 校验
PC发送: 0x55 0x00 0x01 0x02 0xXX (其中,最后的0xXX是前面几个字节的异或)
PC发送: 0x55 0x01 0x01 0x02 0xXX (其中,最后的0xXX是前面几个字节的异或)
数据格式: 头 命令 数据 校验
FPGA回应:0x66 0x00 0x03 0xXX (FPGA回应的数据是收到2个数据的和,不考虑溢出)
FPGA回应:0x66 0x01 0x03 0xXX
另外要求,如果头部不是0x55开头,FPGA不做出回应就是串口上不显示
具体实现
代码主要参考的是明德扬的串口回环工程的代码,主要在接收端做了一点的改动,接收了四个字节的数据,然后FIFO部分也做了略微的调整,包括输入输出的位宽,以及在FIFO模块输出到串口发送模块的输入,对数据进行了一些处理使之符合上面的传输要求,下面是具体的效果图。
实验效果
需要详细代码的可以联系本人,上一篇文章中由本人联系方式