基于FPGA的UART串口通信实验(VHDL语言实现)
一、前言: 最近在做UART串口通信的相关实验时,在网上查了很多资料,发现网上的大部分文章只注重理论,不注重代码,很多代码有错误不说,而且难以理解。故在完成此实验后,起了写一篇博客的心思,以供有想做相关实验且基础比较薄弱的朋友参阅。 二、实验要求: (1)实现和 PC 双向通信 (2)可通过 FPGA 的键盘扫描,在开发板上设置控制参数,输入发送内容 (3)通信波特率可调 (4)LCD 液晶屏实现菜单、接收到的数据显示 注:关于UART串口通信实验的相关理论网上很多,而且都很详细,我在这里都不赘余了,我的重点是代码及其分析。本次使用到的FPGA开发板为: Cyclone Ⅱ EP2C5Q208C8 核心的MAGIC3200_EP2C5 开发板。 三、引脚分配: 四、代码及其分析: 注:此处代码有两个文件,一个是主文件,另外一个是按键消抖文件。 先上按键消抖文件,此处代码比较好理解。 ------------------------------------------------按键消抖文件--------------------------------------------------------- library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC