推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

FPGA CPLD设计Verilog例程串口通信实验工程文件源码+说明文档

更新时间:2020-07-03 16:25:27 大小:432K 上传用户:xzxbybd查看TA发布的资源 标签:fpgacpldverilog串口通信 下载积分:3分 评价赚积分 (如何评价?) 收藏 评论(0) 举报

资料介绍

FPGA CPLD设计Verilog例程串口通信实验工程文件源码+说明文档


先简单说说串口通信(UART),该实验只针对RS232 标准。如图5.11 所示,该接口电路

使用了MAX3232CSE 作为电平转换芯片。典型的RS232 信号在正负电平之间摆动,在发送数

据时,发送端驱动器输出正电平在+5~+15V,负电平在-5~-15V 电平。接收器典型的工作电

平在+3~+12V 与-3~-12V 之间。由于发送电平与接收电平的差仅为2V 至3V 左右,所以其

共模抑制能力差,再加上双绞线上的分布电容,其传送距离最大为约15 米,最高速率为

20kb/s。RS232 是为点对点(即只用一对收、发设备)通讯而设计的,其驱动器负载为3~7kΩ。

该实验要实现的功能是CPLD 实时监测RS232_RX 信号是否有数据,若接收到数据,则

把接收到的数据通过RS232_TX 发回给对方。上位机用的是串口调试助手。

在代码设计中,发送数据的波特率是可选的,可以是9600bps,19200bps,38400bps,57600bps

或115200bps。这部分在模块speed_select 里,用户可以根据需要进行配置。发送的数据帧

格式为:1bit 起始位(保持一个传输位周期的低电平),8bit 数据,无校验位,1bit 停止位。

如图5.14 所示,该设计分为4 个模块实现,4 个模块的划分主要是依据数据流的方向。

my_uart_rx 模块主要是完成数据的接收,speed_select(speed_rx)模块主要响应my_uart_rx

模块发出的使能信号进行波特率计数,并且回送一个数据采样使能信号。my_uart_tx 模块在

my_uart_rx 模块接收好一个完整的数据帧后启动,将接收到的数据返回给对方,它的波特率

控制是由speed_select(speed_tx)模块产生。


部分文件列表

文件名大小
uartverilog/
uartverilog/db/
uartverilog/db/.cmp.kpt
uartverilog/db/logic_util_heursitic.dat5KB
uartverilog/db/my_uart_top.(0).cnf.cdb2KB
uartverilog/db/my_uart_top.(0).cnf.hdb1KB
uartverilog/db/my_uart_top.(1).cnf.cdb2KB
uartverilog/db/my_uart_top.(1).cnf.hdb1KB
uartverilog/db/my_uart_top.(2).cnf.cdb5KB
uartverilog/db/my_uart_top.(2).cnf.hdb1KB
uartverilog/db/my_uart_top.(3).cnf.cdb3KB
...

全部评论(0)

暂无评论