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

RS485接口收发测试FPGA读写实验Verilog逻辑源码Quartus工程文件+文档说明资料 F

更新时间:2021-08-09 16:28:28 大小:17M 上传用户:xzxbybd查看TA发布的资源 标签:rs485接口fpgaverilogquartus 下载积分:2分 评价赚积分 (如何评价?) 打赏 收藏 评论(1) 举报

资料介绍

RS485接口收发测试FPGA读写实验Verilog逻辑源码Quartus工程文件+文档说明资料,FPGA为CYCLONE4系列中的EP4CE6E22C8. 完整的工程文件,可以做为你的学习设计参考。                                                  

实验任务和现象

任务:使用两块开发板,一块用作发送,一块用作接收。通过4个按键改变数据,并用LED将发送和接收的数据显示出来。

现象:两块开发板LED显示的效果一样,并且按下不同的按键,可以改变LED的显示,同时接收的板子接到数据后改变LED显示。

•5、设计思路

我们依旧采用串口的设计思路,设计程序,但因为

MAX485是半双工器件,所以需要接收和发送状态切换,有两个时能端,我们的开发板,将两个接到一起用一个引脚控制。

我们以串口发送为例:

以波特率9600为例子说明,波特率9600接收一个bit的时间为1s/9600=104us,即每隔104us发送一个数据。

module RS485_Revc ( 

input                  sys_clk        ,

input                  sys_rst_n      ,

input                  RO             ,

output   wire          RE_DE          ,

output   reg  [7:0]    LED

                 );


/***************reg define****************/ 

reg    [7:0]       buff                   ;         

reg    [7:0]       data_out               ;

reg    [15:0]      counter                ;  

reg                rxd_din1               ;    //uart rxd input ;   

reg                rxd_din2               ;    //uart rxd input ;      

reg                rxd_negedge_sig_flag    ;

    

/***************wire define***************/

wire               rxd_negedge_sig        ;



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

**                              Main Program    

**  

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

assign  RE_DE = 1'b0;

always @ (posedge sys_clk or negedge sys_rst_n) begin 

    if ( sys_rst_n ==1'b0 ) begin 

           rxd_din1 <= 1'b0;

           rxd_din2 <= 1'b0;          

     end

     else begin

           rxd_din1  <= RO           ;

           rxd_din2  <= rxd_din1;            

     end   

end


assign rxd_negedge_sig = (~rxd_din2) &(rxd_din1); 


always @ (posedge sys_clk or negedge sys_rst_n) begin 

    if ( sys_rst_n ==1'b0)  

           rxd_negedge_sig_flag <= 1'b0;        

    else  

           rxd_negedge_sig_flag  <= rxd_negedge_sig;                    

end


always @ (posedge s

image.pngimage.pngimage.png

部分文件列表

文件名大小
RS485/
RS485/RS485/
RS485/RS485/RS485Reve/
RS485/RS485/RS485Reve/RS485_Revc.asm.rpt7KB
RS485/RS485/RS485Reve/RS485_Revc.done
RS485/RS485/RS485Reve/RS485_Revc.fit.rpt
RS485/RS485/RS485Reve/RS485_Revc.fit.smsg1KB
RS485/RS485/RS485Reve/RS485_Revc.fit.summary1KB
RS485/RS485/RS485Reve/RS485_Revc.flow.rpt7KB
RS485/RS485/RS485Reve/RS485_Revc.map.rpt
RS485/RS485/RS485Reve/RS485_Revc.map.summary
...

全部评论(1)

  • 2021-11-26 16:46:44haggard49

    比较简单,接口和我要的不一样,再找找

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载