verilog的串口发送程序例程.doc

verilog的串口发送程序例程.doc

ID:50555824

大小:32.50 KB

页数:4页

时间:2020-03-10

verilog的串口发送程序例程.doc_第1页
verilog的串口发送程序例程.doc_第2页
verilog的串口发送程序例程.doc_第3页
verilog的串口发送程序例程.doc_第4页
资源描述:

《verilog的串口发送程序例程.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、`include"uart_tx.v"modulelicheng(clk,,rst_n,rs232_tx);inputclk;//时钟信号50Minputrst_n;//复位信号,低有效outputrs232_tx;//数据输出信号wireclk_bps1;speed_select_txspeed_tx(//数据发送波特率控制模块.clk(clk),.rst_n(rst_n),.clk_bps(clk_bps1));uart_txuart_tx(.clk(clk),.rst_n(rst_n),.clk_bps(clk_bps1),.rs232_tx(rs232_tx));endmo

2、dule//=================================波特率产生模块=====================================modulespeed_select_tx(clk,rst_n,clk_bps);//波特率设定inputclk;//50M时钟inputrst_n;//复位信号outputclk_bps;//接收数据中间采样点,reg[12:0]cnt;//分频计数器regclk_bps_r;//波特率时钟寄存器always@(posedgeclkornegedgerst_n)if(!rst_n)cnt<=13'd0;elseif(

3、cnt==5207)cnt<=13'd0;elsecnt<=cnt+1'b1;//波特率时钟启动always@(posedgeclkornegedgerst_n)beginif(!rst_n)clk_bps_r<=1'b0;elseif(cnt==2603)//当波特率计数到一半时,进行采样存储clk_bps_r<=1'b1;elseclk_bps_r<=1'b0;endassignclk_bps=clk_bps_r;//将采样数据输出给uart_tx模块endmodule///////////////////////////////////////////////////////

4、//////////////////////////////////////////////moduleuart_tx(clk,rst_n,clk_bps,rs232_tx);inputclk;inputrst_n;inputclk_bps;//中间采样点outputrs232_tx;//发送数据信号reg[7:0]rx_data;regtx_en;//发送信号使能,高有效reg[3:0]num;initialbeginrx_data=8'b11111111;endalways@(posedgeclkornegedgerst_n)beginif(!rst_n)begintx_en<

5、=1'b0;//num<=0;endelsebeginif(num==4'd11)begintx_en<=1'b0;endelsebegintx_en<=1'b1;endendendregrs232_tx_r;always@(posedgeclkornegedgerst_n)beginif(!rst_n)beginnum<=4'd0;rs232_tx_r<=1'b1;endelsebeginif(tx_en)beginif(clk_bps)beginnum<=num+1'b1;case(num)4'd0:rs232_tx_r<=1'b0;//起始位4'd1:rs232_tx_r<=

6、rx_data[0];//数据位开始4'd2:rs232_tx_r<=rx_data[1];4'd3:rs232_tx_r<=rx_data[2];4'd4:rs232_tx_r<=rx_data[3];4'd5:rs232_tx_r<=rx_data[4];4'd6:rs232_tx_r<=rx_data[5];4'd7:rs232_tx_r<=rx_data[6];4'd8:rs232_tx_r<=rx_data[7];4'd9:rs232_tx_r<=1'b1;//数据结束位,1位default:rs232_tx_r<=1'b1;endcaseendendelsenum<=4

7、'd0;//发送完成,复位endendassignrs232_tx=rs232_tx_r;endmodule

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。