名称:UART串口收发及LCD1602显示设计Verilog代码Quartus ep1c3开发板(文末获取)
软件:Quartus
语言:Verilog
代码功能:
UART串口收发及LCD1602显示
1、设计串口发送和接收代码
2、按下发送键,将端口预置的数据发送出去
3、接收的数据通过LCD1602显示
LCD1602显示内容为:
" receive data=*** "//液晶显示的第一行的数据
" My UART TEST " //液晶显示的第二行的数据
本代码已在ep1c3开发板验证,ep1c3开发板如下,其他开发板可以修改管脚适配:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 管脚分配
6. Testbench
7. 仿真图
整体仿真
LCD分频模块
LCD驱动模块
串口接收模块
串口发送模块
部分代码展示:
/****************为LCD_Drvier模块产生500Hz的时钟信号**************/ module Clock_Gen(clk_50M,rst,clk_LCD); input clk_50M,rst; //rst为全局复位信号(高电平有效) output clk_LCD; wire clk_counter; reg [11:0] cnt; //对时钟进行计数分频 wire clk_equ; reg [9:0] count; reg clk_BUF; parameter counter = 48; //多少分频 /******************************************************************************** ** 模块名称:分频器 ** 功能描述:通过计数器实现分频功能. ********************************************************************************/ always@(posedge clk_50M) begin if(!rst) //低电平复位 cnt <= 12'd0; else if(clk_equ) cnt <= 12'd0; else cnt <= cnt+1'b1; end
源代码
点击下方的公众号卡片获取