wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 5109|回復(fù): 1
收起左側(cè)

特權(quán)同學(xué)深入淺出玩轉(zhuǎn)FPGA源代碼

[復(fù)制鏈接]
ID:391144 發(fā)表于 2018-8-29 12:09 | 顯示全部樓層 |閱讀模式
特權(quán)同學(xué)深入淺出玩轉(zhuǎn)FPGA課程源代碼
  首先,感謝特權(quán)同學(xué)的分享、教導(dǎo),讓向我這樣的初學(xué)者,能夠有一個(gè)良好的入門(mén)平臺(tái)。。言歸正傳,這是我整理出來(lái)的代碼文檔,希望能幫到各位初學(xué)者。

1.分頻器
  1. `timescale 1ns / 1ps
  2. module clkdiv(
  3.                         clk,rst_n,
  4.                         clk_div       
  5.                 );
  6. input clk;                //50MHz
  7. input rst_n;        //低電平復(fù)位信號(hào)
  8. output clk_div;        //分頻信號(hào),連接到蜂鳴器
  9. //---------------------------------------------------
  10. reg[19:0] cnt;        //分頻計(jì)數(shù)器
  11. always @ (posedge clk or negedge rst_n)        //異步復(fù)位
  12.         if(!rst_n) cnt <= 20'd0;
  13.         else cnt <= cnt+1'b1;        //寄存器cnt 20ms循環(huán)計(jì)數(shù)
  14. //----------------------------------------------------
  15. reg clk_div_r;        //clk_div信號(hào)值寄存器
  16. always @ (posedge clk or negedge rst_n)
  17.         if(!rst_n) clk_div_r <= 1'b0;
  18.         else if(cnt == 20'hfffff) clk_div_r <= ~clk_div_r;        //每20ms讓clk_div_r值翻轉(zhuǎn)一次
  19. assign clk_div = clk_div_r;       
  20. endmodule
復(fù)制代碼
  1. 8.串口發(fā)送接收2
  2. `timescale 1ns / 1ps
  3. module my_uart_tx(clk,rst_n,clk_bps,rx_data,rx_int,rs232_tx,bps_start);

  4. input clk;                        // 50MHz主時(shí)鐘
  5. input rst_n;                //低電平復(fù)位信號(hào)
  6. input clk_bps;                // clk_bps的高電平為接收或者發(fā)送數(shù)據(jù)位的中間采樣點(diǎn)
  7. input[7:0] rx_data;        //接收數(shù)據(jù)寄存器
  8. input rx_int;                //接收數(shù)據(jù)中斷信號(hào),接收到數(shù)據(jù)期間始終為高電平,在此利用它的上升沿來(lái)啟動(dòng)發(fā)送數(shù)據(jù)
  9. output rs232_tx;        // RS232發(fā)送數(shù)據(jù)信號(hào)
  10. output bps_start;        //接收或者要發(fā)送數(shù)據(jù),波特率時(shí)鐘啟動(dòng)信號(hào)置位

  11. //---------------------------------------------------------
  12. reg rx_int0,rx_int1,rx_int2;        //rx_int信號(hào)寄存器,捕捉下降沿濾波用
  13. wire pos_rx_int;                                // rx_int下降沿標(biāo)志位

  14. always @ (posedge clk or negedge rst_n) begin
  15.         if(!rst_n) begin
  16.                         rx_int0 <= 1'b0;
  17.                         rx_int1 <= 1'b0;
  18.                         rx_int2 <= 1'b0;
  19.                 end
  20.         else begin
  21.                         rx_int0 <= rx_int;
  22.                         rx_int1 <= rx_int0;
  23.                         rx_int2 <= rx_int1;
  24.                 end
  25. end

  26. assign pos_rx_int =  rx_int1 & ~rx_int2;        //捕捉到上升沿后,neg_rx_int拉地保持一個(gè)主時(shí)鐘周期

  27. //---------------------------------------------------------
  28. reg[7:0] tx_data;        //待發(fā)送數(shù)據(jù)的寄存器
  29. //---------------------------------------------------------
  30. reg bps_start_r;
  31. reg tx_en;        //發(fā)送數(shù)據(jù)使能信號(hào),高有效
  32. reg[3:0] num;

  33. always @ (posedge clk or negedge rst_n) begin
  34.         if(!rst_n) begin
  35.                         bps_start_r <= 1'bz;
  36.                         tx_en <= 1'b0;
  37.                         tx_data <= 8'd0;
  38.                 end
  39.         else if(pos_rx_int) begin        //接收數(shù)據(jù)完畢,準(zhǔn)備把接收到的數(shù)據(jù)發(fā)出去
  40.                         bps_start_r <= 1'b1;
  41.                         tx_data <= rx_data;        //把接收到的數(shù)據(jù)存入發(fā)送數(shù)據(jù)寄存器
  42.                         tx_en <= 1'b1;                //進(jìn)入發(fā)送數(shù)據(jù)狀態(tài)中
  43.                 end
  44.         else if(num==4'd11) begin        //數(shù)據(jù)發(fā)送完成,復(fù)位
  45.                         bps_start_r <= 1'b0;
  46.                         tx_en <= 1'b0;
  47.                 end
  48. end

  49. assign bps_start = bps_start_r;

  50. //---------------------------------------------------------
  51. reg rs232_tx_r;

  52. always @ (posedge clk or negedge rst_n) begin
  53.         if(!rst_n) begin
  54.                         num <= 4'd0;
  55.                         rs232_tx_r <= 1'b1;
  56.                 end
  57.         else if(tx_en) begin
  58.                         if(clk_bps)        begin
  59.                                         num <= num+1'b1;
  60.                                         case (num)
  61.                                                 4'd0:        rs232_tx_r <= 1'b0;         //發(fā)送起始位
  62.                                                 4'd1:        rs232_tx_r <= tx_data[0];        //發(fā)送bit0
  63.                                                 4'd2:        rs232_tx_r <= tx_data[1];        //發(fā)送bit1
  64.                                                 4'd3: rs232_tx_r <= tx_data[2];        //發(fā)送bit2
  65.                                                 4'd4: rs232_tx_r <= tx_data[3];        //發(fā)送bit3
  66.                                                 4'd5: rs232_tx_r <= tx_data[4];        //發(fā)送bit4
  67.                                                 4'd6: rs232_tx_r <= tx_data[5];        //發(fā)送bit5
  68.                                                 4'd7:        rs232_tx_r <= tx_data[6];        //發(fā)送bit6
  69.                                                 4'd8: rs232_tx_r <= tx_data[7];        //發(fā)送bit7
  70.                                                 4'd9: rs232_tx_r <= 1'b1;        //發(fā)送結(jié)束位
  71.                                                  default: rs232_tx_r <= 1'b1;
  72.                                                 endcase
  73.                                 end
  74.                         else if(num==4'd11) num <= 4'd0;        //復(fù)位
  75.                 end
  76. end

  77. assign rs232_tx = rs232_tx_r;

  78. endmodule

  79. `timescale 1ns / 1ps
  80. module ps2_key(clk,rst_n,ps2k_clk,ps2k_data,rs232_tx);

  81. input clk;                        //50M時(shí)鐘信號(hào)
  82. input rst_n;                //復(fù)位信號(hào)
  83. input ps2k_clk;                //PS2接口時(shí)鐘信號(hào)
  84. input ps2k_data;        //PS2接口數(shù)據(jù)信號(hào)
  85. output rs232_tx;        // RS232發(fā)送數(shù)據(jù)信號(hào)


  86. wire[7:0] ps2_byte;        // 1byte鍵值
  87. wire ps2_state;                //按鍵狀態(tài)標(biāo)志位

  88. wire bps_start;                //接收到數(shù)據(jù)后,波特率時(shí)鐘啟動(dòng)信號(hào)置位
  89. wire clk_bps;                // clk_bps的高電平為接收或者發(fā)送數(shù)據(jù)位的中間采樣點(diǎn)

  90. ps2scan                        ps2scan(        .clk(clk),                                  //按鍵掃描模塊
  91.                                                                 .rst_n(rst_n),                               
  92.                                                                 .ps2k_clk(ps2k_clk),
  93.                                                                 .ps2k_data(ps2k_data),
  94.                                                                 .ps2_byte(ps2_byte),
  95.                                                                 .ps2_state(ps2_state)
  96.                                                                 );

  97. speed_select        speed_select(        .clk(clk),
  98.                                                                                 .rst_n(rst_n),
  99.                                                                                 .bps_start(bps_start),
  100.                                                                                 .clk_bps(clk_bps)
  101.                                                                                 );

  102. my_uart_tx                my_uart_tx(                .clk(clk),
  103.                                                                                 .rst_n(rst_n),
  104.                                                                                 .clk_bps(clk_bps),
  105.                                                                                 .rx_data(ps2_byte),
  106.                                                                                 .rx_int(ps2_state),
  107.                                                                                 .rs232_tx(rs232_tx),
  108.                                                                                 .bps_start(bps_start)
  109.                                                                                 );

  110. endmodule

  111. `timescale 1ns / 1ps
  112. module ps2scan(clk,rst_n,ps2k_clk,ps2k_data,ps2_byte,ps2_state);

  113. input clk;                //50M時(shí)鐘信號(hào)
  114. input rst_n;        //復(fù)位信號(hào)
  115. input ps2k_clk;        //PS2接口時(shí)鐘信號(hào)
  116. input ps2k_data;                //PS2接口數(shù)據(jù)信號(hào)
  117. output[7:0] ps2_byte;        // 1byte鍵值,只做簡(jiǎn)單的按鍵掃描
  118. output ps2_state;                //鍵盤(pán)當(dāng)前狀態(tài),ps2_state=1表示有鍵被按下

  119. //------------------------------------------
  120. reg ps2k_clk_r0,ps2k_clk_r1,ps2k_clk_r2;        //ps2k_clk狀態(tài)寄存器

  121. //wire pos_ps2k_clk;         // ps2k_clk上升沿標(biāo)志位
  122. wire neg_ps2k_clk;        // ps2k_clk下降沿標(biāo)志位

  123. …………
  124. …………
  125. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

完整的Word格式文檔51黑下載地址(共54頁(yè)):
特權(quán)同學(xué)-深入淺出玩轉(zhuǎn)FPGA源代碼.docx (46.16 KB, 下載次數(shù): 56)



回復(fù)

使用道具 舉報(bào)

ID:267435 發(fā)表于 2025-2-27 13:33 | 顯示全部樓層
正在找特權(quán)同學(xué)資料
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
成人免费在线观看av| 国产精品久久久久免费a∨| 精品国产一区探花在线观看| 午夜视频在线| 国产成a人亚洲精v品| 日韩精品一区二区在线播放 | 99成人在线观看| 日本人体一区二区| 91影院未满十八岁禁止入内| 日韩中文理论片| 一区二区三区欧美日| 日韩avvvv在线播放| 亚洲黄页网站| 欧美magnet| 国产免费av高清在线| 蜜桃传媒入口| 五月激情六月婷婷| 无码人妻丰满熟妇精品区| 国产成人无码精品久久二区三| 日韩激情视频网站| 色综合天天爱| 8848成人影院| 成人开心激情| 日韩av地址| 美国av免费观看| 欧美在线中文字幕高清的| 国产三级视频在线播放| 久久国产视频播放| 国产成人综合在线视频| 国产精品815.cc红桃| 国产成年人视频网站| 777av视频| 久久亚洲精品视频| 日韩精品在线免费播放| 欧美一区二区三区在线看| 黄网动漫久久久| 亚洲手机成人高清视频| 91色乱码一区二区三区| 国产成a人亚洲精| 精品一区二区综合| 免费亚洲一区| 在线综合亚洲| 在线不卡欧美| 一区二区三区午夜视频| 91综合久久| 欧美男男gaytwinkfreevideos| eeuss国产一区二区三区四区| 成人亚洲精品| 91av一区| a屁视频一区二区三区四区| 超级碰碰久久| 婷婷在线免费观看| 最好看的日本字幕mv视频大全| 国产精品a成v人在线播放| 18岁成人毛片| 久久久一二三区| 日本熟妇毛茸茸丰满| 国产精品99re| 国产精品男女视频| 精品成人无码久久久久久| 国产超碰人人爽人人做人人爱| 豆国产97在线 | 亚洲| 日本一级淫片免费放| 日本午夜小视频| 日韩 欧美 综合| 无码人妻精品一区二区三区蜜桃91| 国产又大又黄视频| 日本丰满少妇做爰爽爽| 国产成人三级在线播放 | 欧美日本一区二区| 欧美日韩午夜在线视频| 欧美一卡在线观看| 亚洲国产91色在线| 一区二区亚洲精品国产| 久久精品国产一区二区电影| 久久久久久12| 国产精品丝袜久久久久久高清| 国产主播精品在线| 国产一区二区三区奇米久涩| 天堂一区二区三区| 国产又粗又长又爽视频| 青青在线视频观看| 激情文学亚洲色图| 欧美熟妇精品黑人巨大一二三区| av资源在线免费观看| 精品99在线观看| 中文字幕在线天堂| 亚洲成人一二三区| 国产精品美女视频免费观看软件| 啪啪免费网站| 欧美18一12sex性处hd| yourporn在线观看视频| 国产传媒在线| 精品中文字幕一区二区三区| 欧美猛男做受videos| 狠狠色综合网| 国产女人18毛片水真多18精品| 亚洲人成精品久久久| 91精品国产自产在线观看永久∴ | 亚洲女人天堂视频| 久久精品免费播放| 国产精品久久久久久久久影视| 动漫一区二区在线| 亚洲一区二三| 天天干天天操天天做| 最近中文字幕在线mv视频在线| 免费一级全黄少妇性色生活片| 真实的国产乱xxxx在线91| 亚洲人成色777777精品音频| 开心婷婷激情五月| 97在线观看免费高清视频| 国产在线更新| 色综合视频一区二区三区日韩| 精品视频黄色| 免费精品99久久国产综合精品| www.久久热| 丝袜美腿一区二区三区动态图 | 女人让男人操自己视频在线观看| 一区视频网站| 99久久久久| 美国十次了思思久久精品导航| 99精品视频在线观看免费| 亚洲国产精品久久久久婷婷884 | 在线观看17c| 红桃视频一区二区三区免费| 日韩欧美综合视频| 亚洲精品一区二区三区四区| xxx在线视频| 男同在线观看| 日韩伦理一区二区| 在线不卡视频| 欧美激情在线一区二区| 欧美久久久久久蜜桃| 欧美麻豆久久久久久中文| 国产成人av一区二区三区| 欧美色图另类小说| 欧美黄色高清视频| 国产精品一级视频| 极品色影院av| mm视频在线视频| 美女毛片一区二区三区四区最新中文字幕亚洲 | 免费特级黄毛片| 福利成人在线观看| 亚洲网一区二区三区| 国产一区成人| 亚洲伦理在线精品| 亚洲欧美日韩一区二区三区在线| 国产日韩欧美在线观看| 国产日产欧美视频| 美女的奶胸大爽爽大片| 亚洲精品成人a| 欧洲伦理片一区 二区 三区| 日韩精品三级| 精品一区二区三区在线播放| 色综合一个色综合| 欧美富婆性猛交| 亚洲精品在线免费| 波多野结衣 在线| 亚洲欧美激情国产综合久久久| 色老板在线视频| 高清不卡一区| 麻豆视频观看网址久久| 欧美性极品xxxx做受| 久久久久久伊人| 免费网站在线观看视频 | 国产精品久久一级| 亚洲精品中文字幕有码专区| 粉嫩高清一区二区三区精品视频| 一级片黄色免费| 中文字幕第99页| av网站免费在线| 在线观看欧美| 国产美女娇喘av呻吟久久| 欧美三级日韩三级国产三级| 日本欧美黄网站| 免费观看精品视频| chinese国产精品| 天天干夜夜夜操| 91成人福利社区| 国产乱子伦视频一区二区三区| 欧美精品久久一区| 成人美女免费网站视频| 在线视频观看91| 精品国产一级片| p色视频免费在线观看| 久久看人人摘| 亚洲一区二区三区四区中文字幕| 国内精品中文字幕| 日本a√在线观看| 国产美女www爽爽爽视频| 巨骚激情综合| 欧美成人有码| 色综合色狠狠天天综合色| 国产精品一区二区三区毛片淫片| 性色av浪潮av| 高清av中文在线字幕观看1| 欧美hdxxx| 三级不卡在线观看| 日韩精品在线一区| 亚洲国产一区在线| 永久看片925tv| av天天av| 精品久久久久久久久久久aⅴ| 亚洲天堂网中文字| 97av在线视频| 欧美一级视频在线| 亚洲第一免费看片| 超级碰碰久久| 国产成人av一区二区三区在线| 亚洲女人天堂视频| 日韩xxxx视频| www.99视频| 巨大荫蒂视频欧美大片| 一区二区高清| 精品少妇一区二区三区在线播放| 日韩久久在线| 中文字幕在线看人| 99se视频在线观看| 日韩av在线播放中文字幕| 日韩高清人体午夜| 青青青青草视频| 午夜免费福利视频| 日韩大片免费观看| 成人网在线播放| 久久99国产精品久久久久久久久| 激情黄色小视频| 久精品在线观看| 国产精品99久久免费| 国产精品久久久久一区二区三区共| 欧美孕妇与黑人孕交| av网页在线观看| 2021天天操| 一二三区不卡| 日韩欧美电影一二三| 激情五月婷婷六月| 神马午夜精品95| 78精品国产综合久久香蕉| 欧美国产一区二区在线观看| 国产精品美女999| 夫妻性生活毛片| 深夜福利视频一区| 久久精品国产一区二区三区免费看 | 欧美国产中文| 亚洲成人五区| 亚洲午夜免费视频| 另类欧美小说| 亚洲图片视频小说| 外国成人直播| 亚洲欧洲日产国产综合网| 91久久精品日日躁夜夜躁国产| 人妻人人澡人人添人人爽| 三级在线播放| 国产在线精品一区二区三区不卡| 欧美激情欧美狂野欧美精品| 素人fc2av清纯18岁| 国产在线制服美女| 美女高潮久久久| 欧美黄色性视频| 免费黄色片网站| 男人的天堂av高清在线| 久久99国产精品久久99果冻传媒| 欧美另类交人妖| 成年人在线免费看片| 激情小说 在线视频| 国产成人免费xxxxxxxx| 国产精品一香蕉国产线看观看 | 免费在线看a| www欧美成人18+| 亚洲最大激情中文字幕| 欧美亚洲另类小说| 欧美日韩女优| 一本久道中文字幕精品亚洲嫩| 久久男人资源站| 国产麻豆精品入口在线观看| 偷偷www综合久久久久久久| 亚洲性线免费观看视频成熟| 免费a在线观看播放| 精品影院一区| 久久伊99综合婷婷久久伊| 国产精品国产一区二区| 国产综合视频在线| 天美av一区二区三区久久| 亚洲福利视频专区| av在线天堂网| 国产乱子伦三级在线播放| 91污片在线观看| 免费久久久一本精品久久区| 亚洲依依成人| 四季av一区二区三区免费观看| 国产亚洲精品久久久久久| 公肉吊粗大爽色翁浪妇视频| 黄色网在线看| 亚洲一区二区中文在线| 91午夜在线观看| japanese在线| 国产一区二区免费在线| 97视频资源在线观看| 女人18毛片水真多18精品| 精品国产91| x99av成人免费| 黄色片在线观看网站| 亚洲第一二三四区| 555www色欧美视频| av电影中文字幕| 日韩在线观看www| 一区二区三区不卡视频在线观看| 久久亚洲国产成人精品无码区| 干出白浆视频| 国产一区二区在线观看视频| 国产高清一区视频| 四虎中文字幕| 影音先锋亚洲精品| 国产精品扒开腿做爽爽爽视频| 99国产精品久久久久久久成人| 精品久久精品| 欧美激情国产精品| 中文字幕一区二区免费| 欧洲亚洲成人| 久久av.com| 亚洲性猛交富婆| 少妇久久久久| 久久99精品久久久久久琪琪| 日本免费在线观看视频| 国产亚洲成av人片在线观黄桃| 国产一区二区三区视频在线观看 | 一区二区在线播放视频| 欧美视频免费一区二区三区| 亚洲男人电影天堂| 精品一区二区中文字幕| 一区二区三区高清在线视频 | 一区二区三区免费看| 亚洲风情亚aⅴ在线发布| 国产精品美日韩| 老司机一区二区| 欧美3p视频| 国产伦精品一区二区三区免费优势 | 欧美激情xxxxx| 日韩经典中文字幕| 欧美日韩一区二区三区在线| 亚洲天堂精品视频| a亚洲天堂av| 久久欧美肥婆一二区| 亚洲欧美综合久久久| 国产精品3区| 91在线超碰| aaa在线观看| 天堂中文在线资| 97福利电影| 成人网18免费看| www.狠狠色.com| 美女又爽又黄免费动漫 | 日本不卡视频一区| 国产精品天天av精麻传媒| 国产肉体ⅹxxx137大胆| 国产卡一卡二在线| 正在播放一区| 亚洲最新在线| eeuss中文| 好吊色视频988gao在线观看| 99热都是精品| 国产色一区二区三区| 黄色免费视频大全| 簧片在线免费看| 国产又粗又猛大又黄又爽| 超级砰砰砰97免费观看最新一期 | 在线视频欧美性高潮| 主播福利视频一区| 欧美成人在线影院| 日韩av电影中文字幕| 成人黄色在线免费| 国产偷久久久精品专区| 日产精品久久久一区二区| 久久av高潮av| mm131国产精品| avtt香蕉久久| 黄色在线观看免费| 久久久久久久久久一级| 另类综合图区| freee性欧美| 男男做性免费视频网| 欧美xxx.com| 日本乱理伦在线| 99综合99| 99久久影视| 国产丶欧美丶日本不卡视频| 国产色综合久久| 欧美日韩国产电影| 日韩中文字幕在线精品| 国产精品电影观看| 热re99久久精品国产99热| 啊啊啊一区二区| 给我免费观看片在线电影的| 久久网免费视频| 免费国产黄色片| 成人au免费视频影院| 麻豆av在线导航| av综合网站| 久久国产直播| 国产精品天干天干在线综合| 欧美久久久久久久久久|