云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于FPGA的串口通信设计

基于FPGA的串口通信设计

  • 62 次阅读
  • 3 次下载
  • 2025/7/7 15:11:07

input TX_En_Sig; input [7:0]TX_Data; input BPS_CLK;

output TX_Done_Sig; output TX_Pin_Out;

/********************************************************/ reg [3:0]i; reg rTX; reg isDone;

always @ ( posedge CLK or negedge RSTn ) if( !RSTn )

begin

i <= 4'd0;

rTX <= 1'b1; isDone

<= 1'b0;

end

else if( TX_En_Sig ) case ( i )

endcase

if( BPS_CLK ) begin i <= i + 1'b1; rTX <= 1'b0; end

4'd1, 4'd2, 4'd3, 4'd4, 4'd5, 4'd6, 4'd7, 4'd8 : if( BPS_CLK ) begin i <= i + 1'b1; rTX <= TX_Data[ i

4'd9 :

if( BPS_CLK ) begin i <= i + 1'b1; rTX <= 1'b1; end

4'd10 :

if( BPS_CLK ) begin i <= i + 1'b1; rTX <= 1'b1; end

4'd11 :

if( BPS_CLK ) begin i <= i + 1'b1; isDone <= 1'b1; end

4'd12 :

begin i <= 4'd0; isDone <= 1'b0; end

4'd0 :

- 1 ]; end

/********************************************************/

assign TX_Pin_Out = rTX; assign TX_Done_Sig = isDone;

/*********************************************************/

Endmodule

附录2:接收模块:

module rx_control_module (

CLK, RSTn, );

input CLK;

input RSTn;

input H2L_Sig; input RX_En_Sig;

H2L_Sig, RX_Pin_In, BPS_CLK, RX_En_Sig,

Count_Sig, RX_Data, RX_Done_Sig

input RX_Pin_In; input BPS_CLK;

output Count_Sig; output [7:0]RX_Data; output RX_Done_Sig;

/********************************************************/ reg [3:0]i; reg [7:0]rData; reg isCount; reg isDone;

always @ ( posedge CLK or negedge RSTn ) if( !RSTn )

begin

i <= 4'd0;

rData <= 8'd0; isCount <= 1'b0; isDone <= 1'b0;

end

else if( RX_En_Sig ) case ( i )

if( H2L_Sig ) begin i <= i + 1'b1; isCount <= 1'b1;

4'd1 :

if( BPS_CLK ) begin i <= i + 1'b1; end

4'd2, 4'd3, 4'd4, 4'd5, 4'd6, 4'd7, 4'd8, 4'd9 : if( BPS_CLK ) begin i <= i + 1'b1; rData[ i - 2 ] <=

4'd10 :

if( BPS_CLK ) begin i <= i + 1'b1; end

4'd11 :

if( BPS_CLK ) begin i <= i + 1'b1; end

4'd12 :

4'd0 :

end

RX_Pin_In; end

begin i <= i + 1'b1; isDone <= 1'b1; isCount <= 1'b0;

4'd13 :

begin i <= 4'd0; isDone <= 1'b0; end

end

endcase

/********************************************************/

assign Count_Sig = isCount; assign RX_Data = rData; assign RX_Done_Sig = isDone;

/*********************************************************/

endmodule

附录3:波特率发生器

module rx_bps_module (

CLK, RSTn, );

input CLK;

input RSTn; input Count_Sig; output BPS_CLK;

/***************************/

reg [12:0]Count_BPS; Count_Sig, BPS_CLK

搜索更多关于: 基于FPGA的串口通信设计 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

input TX_En_Sig; input [7:0]TX_Data; input BPS_CLK; output TX_Done_Sig; output TX_Pin_Out; /********************************************************/ reg [3:0]i; reg rTX; reg isDone; always @ ( posedge CLK or negedge RSTn ) if( !RSTn ) begin i <=

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com