串口通信协议等基础知识请参考:基于友晶科技 TSP 开发板的FPGA 串口通信设计(Uart)(RS232) (也适用于C5G开发板)
DE10-Standard和DE1-SOC以及DE10-Nano开发板上暂没有外扩出UART口,不像TSP和C5G是分别板载了CP2102N和FT232R芯片,然后可通过mini USB口与PC进行串口通信(参考基于友晶科技 TSP 开发板的FPGA 串口通信设计(Uart)(RS232) (也适用于C5G开发板))。
如果想在DE10-Standard和DE1-SOC以及DE10-Nano开发板上验证串口通信设计,可以通过这些板子的40pin GPIO槽的两根GPIO pin 去外接一个如下图一样的简单模块:
这个USB-TO-TTL模块是基于CH340G芯片,它作为一种电平转换芯片,可将TTL转USB。在计算机与外部设备通信时,常常需要通过串口进行数据传输。然而,电脑的USB接口与外部设备的串口电平标准不同,因此需要通过CH340这类转换芯片进行转换。
CH340除了电平转换,同时将USB总线协议的数据转换程uart通讯协议的数据,从而实现USB转串口的功能。下面是CH340电路图:
安装CH340驱动后,电脑就能通过USB接口与外部设备进行串口通信。可到官网下载其驱动 https://www.wch.cn/downloads/CH341SER_EXE.html 然后安装到您的PC。
继续参考基于友晶科技 TSP 开发板的FPGA 串口通信设计(Uart)(RS232) (也适用于C5G开发板)的串口代码。Verilog代码无需修改,只需记得针对DE10-Standard开发板来修改引脚分配:
硬件连接如下:
- USB-TO-TTL模块上面有5V和3.3v的pin,利用跳线帽设置TTL为3.3v;
- GPIO槽的pin 30是GND pin,接USB-TO-TTL模块的GND;
- GPIO[0],FPGA串口接收端,接USB-TO-TTL模块的TXD pin(下图中黄色线);
- GPIO[1],FPGA串口发送端,接USB-TO-TTL模块的RXD pin(下图中橘色线);
- 连接12V电源到开发板;
- 用USB Blaster线缆连接开发板和PC;
- 将USB-TO-TTL模块插上PC的USB 接口。
-
下载sof文件到FPGA:
先从设备管理器里面找到串口的名称:
然后打开串口调试工具,设置串口为COM4,波特率设置为115200,发送任意字符,然后查看串口接收到的字符是否与之一致:
基于DE10-Standard的例程下载地址:https://pan.baidu.com/s/1C5aodkwcuJaxyGpcPfYiTQ 提取码: tera