亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? hc164_driver.v

?? 該設計的應用前景非常廣泛
?? V
字號:
////////////////////////////////////////////////////////////////////////////////
//                __     ___ _               ___ ____                         //
//                \ \   / (_) |__   ___  ___|_ _/ ___|                        //
//                 \ \ / /| | '_ \ / _ \/ __|| | |                            //
//                  \ V / | | |_) |  __/\__ \| | |___                         //
//                   \_/  |_|_.__/ \___||___/___\____|                        //
//                                                                            //
////////////////////////////////////////////////////////////////////////////////
// 	   Copyright (C) 2003-2006 VibesIC, Inc.   All rights reserved.           //
//----------------------------------------------------------------------------//
// This source code is provided by VibesIC,and be verified on VibesIC FPGA    //
// development kit. The source code may be used and distributed without       //
// restriction provided that this copyright statement is not removed from the //
// file and that any derivative work contains the original copyright notice   //
// and the associated disclaimer.                                             //
//----------------------------------------------------------------------------//
// THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED     //
// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF       //
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL THE//
// AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,     //
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES(INCLUDING, BUT NOT LIMITED TO,//
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,OR PROFITS; //
// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,   //
// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR    //
// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF     //
// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                                 //
//----------------------------------------------------------------------------//
// 本設計由威百仕( VibesIC )提供,并在其產品中驗證通過,您可以在此基礎上修改,//
// 復制并分發,但請您保留版權聲明部分。我們并不承諾本設計可以用做商業產品,同時//
// 我們不保證設計的通用性。為了方便更新以及修改請保留設計的版本信息,并對自行 //
// 修改部分添加足夠的注釋。對設計如有其他建議,請到網站進行討論。              //
//                                                                            //
////////////////////////////////////////////////////////////////////////////////
//  Company:       www.richic.com                                             //
//  Company bbs:   www.edacn.net                                              //
//  Engineer:      mail007 (Gavin.xue)                                        //
//                                                                            //
//  Target Device: XC3S400-PQ208                                              //
//  Tool versions: Simulation:    ModelSim SE 6.2a                            //
//                 Synthesis:     XST(ise8.1...sp3)                           //
//                 Place&Routing: ISE8.1...sp3                                //
//                 Others tools:  UltraEdit-32 12.10a                         //
//  Create Date:   2005-9-15 14:59                                            //
//  Description:                                                              //
//                                                                            //
//  LOG:                                                                      //
//       1. Revision 1.0 (Initial version)  2005-9-15 14:59    mail007        //
//                                                                            //
//       2. Revision 1.1  2006-12-22 11:48   alex_yang                        //
//          Updata ISE version from v6.3 to v8.1                              //
//          Modify for VX-SP306                                               //
////////////////////////////////////////////////////////////////////////////////
`timescale 1ns/1ns

  // ---------------------------------------------------------------------------
  //HC164用來驅動數碼管以及LED指示燈,動態掃描數碼管的是利用視覺暫留的特性進行顯
  //示景物引起人的視覺印象,在景物消失后還能在視網膜上保持0。1秒的時間叫做視覺暫
  //留。可以將數據刷新速率可以為10Hz(0.1s),同時我們需要對四位數據進行掃描,因此
  //數據刷新速率最低應該為10Hz×4。最高可以為50MHz(HC164可以工作在50-175MHz)。
  //根據實際情況我們可以定為 762.939453125 = 50MHz/2**16,
  //因此接口處led,seg_value,dot數據的變化速率最大不能超過為50MHz/2**14
  // ---------------------------------------------------------------------------

module hc164_driver(
    clk,
    rst_n,
    led,
    dot,
    seg_value,
    hc_cp,
    hc_si
    );

  // ---------------------------------------------------------------------------
  //
  //  input signals
  //  led[3:0] :       led3-led0 對應原理圖中D5,D4,D3,D2四位LED燈,高電平有效。
  //  seg_value[15:0] :四位共陰極數碼顯示的數據,從高到低每4bit為數碼管一位。
  //  dot[3:0] :       四位共陰極數碼管顯示的小數點位,從高到低
  //  hc_si :          本模塊數據串行輸出,hc164數據串行輸入。
  //  hc_cp :          本模塊輸出,hc164時鐘輸入。
  //  
  // ---------------------------------------------------------------------------
  input           clk;
  input           rst_n;  
  input   [3 :0]  led; 
  input   [3 :0]  dot;       
  input   [15:0]  seg_value; 
  output  reg     hc_cp;                //HC164 Clock input active Rising edges
  output          hc_si;                //HC164 Data input

  reg     [5 :0]  tx_cnt;
 
  // ---------------------------------------------------------------------------
  //
  //  信號命名說明
  //  hc_data : 送到兩個hc164中16bit的數據(每個hc164有8bit),hc164 data input
  //  hc_data_44bit: hc_data的第四個4BIT數據,
  //                 LED顯示信號,對應原理圖中HC_Q15,HC_Q14,HC_Q13,HC_Q12四位,
  //                 用來點亮D5,D4,D3,D2四位LED燈,高電平有效。
  //  hc_data_34bit: hc_data的第三個4bit數據,即hc_data[11:8];對應原理圖中
  //                 HC_Q11,HC_Q10,HC_Q9,HC_Q8數碼管位選信號,低電平有效。
  //  hc_data_31bit: hc_data的第三個1bit數據,即hc_data[2];對應原理圖中HC_Q2,數
  //                 碼管小數點位,高電平有效。 
  //  hc_data[7:0]: 包括hc_data_31bit,這8bit用來做為數碼管段選信號,高電平有效
  //
  // ---------------------------------------------------------------------------
  reg   [6:0]   hex2led;        //hex-to-seven-segment decoder output 
  reg   [3:0]   hc_data_34bit;  
  reg           hc_data_31bit;    
  
  wire  [15:0]  hc_data = {led,
                          hc_data_34bit,
                          hex2led[6:2],
                          hc_data_31bit,
                          hex2led[1:0]
                          };
  // ---------------------------------------------------------------------------
  //
  //  之所以需要取反,是因為對hc_si賦值時從最低位開始,而原理圖中設計希望從最高位
  //  開始發送數據。
  //
  // ---------------------------------------------------------------------------
  wire  [15:0]  hc_data_inv = {
                          hc_data[0],
                          hc_data[1],
                          hc_data[2],
                          hc_data[3],
                          hc_data[4],
                          hc_data[5],
                          hc_data[6],
                          hc_data[7],
                          hc_data[8],
                          hc_data[9],
                          hc_data[10],
                          hc_data[11],
                          hc_data[12],
                          hc_data[13],
                          hc_data[14],
                          hc_data[15]
                          };

  reg [15:0]  clk_cnt;
  always @ ( posedge clk or negedge rst_n )
    if ( !rst_n ) clk_cnt <= 16'd0;
    else  clk_cnt <= clk_cnt + 1'b1;
      
  // ---------------------------------------------------------------------------
  // 
  //  數據管4位計數器,本計數器用來區分每位數值,位碼,以及每位的小數點等三個
  //  信息,每一位數值將通過hex2led模塊變換成數碼管位碼。
  //
  // ---------------------------------------------------------------------------
  reg [1:0] seg_led_num;
  always @ ( posedge clk or negedge rst_n )
    if (!rst_n ) seg_led_num <= 2'b00;
    else if ( clk_cnt == 16'hFFFF ) seg_led_num <= seg_led_num + 1'b1;

  reg   [3:0] hex;
  always @ ( * )
    case ( seg_led_num )
      2'b00: hex = seg_value[15:12];
      2'b01: hex = seg_value[11:8];
      2'b10: hex = seg_value[7:4];
      2'b11: hex = seg_value[3:0];
    endcase 
  
  // ---------------------------------------------------------------------------
  // hex-to-seven-segment decoder
  //
  // segment encoding
  //      11
  //      ---  
  //  10 |   | 7
  //      ---   <- 5
  //  1  |   | 4
  //      --- .  3
  //       2 
  //  Q[6:0] = p11 p10 p7 p5 _ p4 p2 p1 
  // ---------------------------------------------------------------------------
  always @ ( * )
    begin
      case (hex)                        //數值 
	      4'h1  : hex2led = 7'b0010_100;	//1          
	      4'h2  : hex2led = 7'b1011_011;	//2   
	      4'h3  : hex2led = 7'b1011_110;	//3   
	      4'h4  : hex2led = 7'b0111_100;	//4   
	      4'h5  : hex2led = 7'b1101_110;	//5   
	      4'h6  : hex2led = 7'b1101_111;	//6   
	      4'h7  : hex2led = 7'b1010_100;	//7   
	      4'h8  : hex2led = 7'b1111_111;	//8   
	      4'h9  : hex2led = 7'b1111_100;	//9   
	      4'hA  : hex2led = 7'b1111_101;	//A   
	      4'hB  : hex2led = 7'b0101_111;	//b   
	      4'hC  : hex2led = 7'b1100_011;	//C   
	      4'hD  : hex2led = 7'b0011_111;	//d   
	      4'hE  : hex2led = 7'b1101_011;	//E   
	      4'hF  : hex2led = 7'b1101_001;	//F   
	    default : hex2led = 7'b1110_111;	//0   
    endcase
  end
 
  always @ ( * )
    case ( seg_led_num )
      2'b00:hc_data_34bit[3:0] = 4'b0111;
      2'b01:hc_data_34bit[3:0] = 4'b1011;
      2'b10:hc_data_34bit[3:0] = 4'b1101;
      2'b11:hc_data_34bit[3:0] = 4'b1110;
    endcase  

  always @ ( * )
    case ( seg_led_num )
      2'b00:hc_data_31bit = dot[3];
      2'b01:hc_data_31bit = dot[2];
      2'b10:hc_data_31bit = dot[1];
      2'b11:hc_data_31bit = dot[0];
    endcase  
  
  // ---------------------------------------------------------------------------
  // 
  // HC164 的 hc_si 以及hc_cp信號的產生,通過一個6位的計數器來控制.hc_si從信號
  // hc_data_inv的最低位開始發送,原理圖中需要從最高位發送,因此在此之前需要對整
  // 個信號取反。
  //
  // ---------------------------------------------------------------------------  
  always @ ( posedge clk or negedge rst_n )
    if (!rst_n ) tx_cnt <= 6'd0;
    else if ( clk_cnt[15] ) tx_cnt <= 6'd0;      
    else if ((!clk_cnt[15]) && (tx_cnt <= 6'd32 )) tx_cnt <= tx_cnt + 1'b1;

  always @ ( posedge clk or negedge rst_n )
    if (!rst_n)  hc_cp <= 1'b0;
    else if ( clk_cnt[15] ) hc_cp <= 1'b0;
    else if ((!clk_cnt[15]) && (tx_cnt < 6'd32 )) hc_cp <= !hc_cp;

  assign  hc_si = hc_data_inv[tx_cnt[4:1]];
    
endmodule

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
狠狠色丁香九九婷婷综合五月| 精品国产乱码91久久久久久网站| 国产乱人伦精品一区二区在线观看 | 不卡一卡二卡三乱码免费网站| 一区二区三区成人| 国产三级欧美三级| 亚洲欧洲成人自拍| 美日韩一区二区| 精品一区二区三区在线播放 | 麻豆精品国产传媒mv男同| 成人黄色小视频在线观看| 亚洲一卡二卡三卡四卡| 天天色图综合网| 成人自拍视频在线| 一区二区三区视频在线看| 国产乱码精品一区二区三 | 日韩电影在线一区二区三区| 99精品国产热久久91蜜凸| 中文字幕一区二区三区精华液| 成人免费视频播放| 中文字幕欧美国产| 视频一区视频二区中文字幕| 色综合天天综合网天天看片| 久久综合色播五月| 亚洲一区二区视频在线观看| 成人爱爱电影网址| 欧美日韩国产在线播放网站| 欧美丰满少妇xxxxx高潮对白| 久久久久久久免费视频了| 午夜精品久久久久久久久久久| 玖玖九九国产精品| 精彩视频一区二区三区| 秋霞午夜av一区二区三区| 日韩在线观看一区二区| 奇米888四色在线精品| 欧美日韩国产在线观看| 亚洲高清免费一级二级三级| √…a在线天堂一区| 韩国女主播一区| 亚洲国产精品久久久男人的天堂| 日韩美女视频一区二区在线观看| 91天堂素人约啪| 国产一区二区精品久久| 麻豆精品国产91久久久久久| 亚洲成人免费av| 国产性天天综合网| 在线成人小视频| 国产精品亚洲第一 | 欧美日韩综合不卡| 久久超碰97中文字幕| 亚洲欧美一区二区三区国产精品 | 国产精品网友自拍| 韩国成人在线视频| 最新国产精品久久精品| 91丨九色丨蝌蚪富婆spa| 国产在线看一区| 一区二区高清视频在线观看| 国产精品一区二区三区乱码| 欧美精品色一区二区三区| 久久精品亚洲精品国产欧美kt∨| 偷窥少妇高潮呻吟av久久免费| 日韩一区二区在线播放| 国产成人av电影在线| 国内偷窥港台综合视频在线播放| 久久se精品一区精品二区| 蜜臀久久久99精品久久久久久| 国产原创一区二区| 精品在线亚洲视频| 色婷婷精品久久二区二区蜜臂av| 欧美色手机在线观看| 欧美伦理影视网| 欧美午夜一区二区三区 | 国产欧美va欧美不卡在线| 成人小视频在线观看| 天堂久久一区二区三区| 亚洲激情在线播放| 国产精品美女一区二区三区| 日本高清不卡一区| 青草国产精品久久久久久| 国内精品久久久久影院色 | 午夜电影一区二区三区| 99久久精品免费看国产| 久久99国产精品久久99| 日本成人在线网站| 同产精品九九九| 欧美精品vⅰdeose4hd| 欧美激情中文字幕一区二区| 亚洲成a人片在线不卡一二三区| 国产精品影音先锋| 69av一区二区三区| 亚洲伊人伊色伊影伊综合网| 色婷婷综合久久久久中文| 久久综合九色综合欧美98| 国产婷婷一区二区| 亚洲视频图片小说| 一区二区免费看| 男女视频一区二区| 久久精品久久99精品久久| 国产成人鲁色资源国产91色综| 不卡的电视剧免费网站有什么| 国产综合久久久久影院| 久久99精品国产麻豆婷婷洗澡| 韩国女主播成人在线| 91精品国产免费久久综合| 欧美日韩一区二区三区四区五区 | 欧美一区三区二区| 粉嫩嫩av羞羞动漫久久久| 色综合天天综合狠狠| 精品入口麻豆88视频| 一区二区日韩av| 91麻豆精品国产91久久久更新时间| 亚洲综合图片区| 日韩欧美国产综合| 国产宾馆实践打屁股91| 中文字幕高清一区| 国产精品美女久久久久久久| 不卡视频在线观看| 国产日韩av一区二区| 亚洲国产sm捆绑调教视频| 亚洲女爱视频在线| 国内精品嫩模私拍在线| 91玉足脚交白嫩脚丫在线播放| 色一情一伦一子一伦一区| 欧美日韩一区二区三区四区| 欧美一区二区视频网站| 亚洲欧美自拍偷拍色图| 精品国产伦一区二区三区免费| 中文字幕一区二区日韩精品绯色| 成人一区二区三区中文字幕| 精品一二三四在线| 午夜精品一区二区三区三上悠亚| 日本一区二区免费在线| 免费高清成人在线| 久久久久久久综合狠狠综合| 久久久精品一品道一区| 日本一道高清亚洲日美韩| 亚洲成人一二三| 免费人成精品欧美精品| 成人一道本在线| 337p亚洲精品色噜噜| 日韩一区二区在线观看视频播放| 欧美老年两性高潮| 在线观看亚洲精品视频| 欧美精品日韩一本| 日韩在线播放一区二区| 日韩视频不卡中文| 久久不见久久见免费视频1 | 亚洲国产中文字幕| 久久嫩草精品久久久久| 91国在线观看| 久久精品国产**网站演员| 一区二区三区自拍| 亚洲天堂av一区| 国产亚洲一区二区三区在线观看| 东方aⅴ免费观看久久av| www激情久久| 久久电影网电视剧免费观看| 精品国产成人在线影院 | 亚洲精品美腿丝袜| 国产一区二区视频在线| 午夜视频在线观看一区二区 | 国产一区中文字幕| 欧美精品久久久久久久多人混战| 欧美国产在线观看| 麻豆一区二区三| 欧美三级在线播放| 亚洲人精品午夜| 激情文学综合丁香| 精品国产制服丝袜高跟| 日韩有码一区二区三区| 欧美丝袜丝交足nylons图片| 日韩一区欧美小说| 国产成人在线视频免费播放| 91精品国产综合久久精品| 视频一区在线播放| 欧美日韩免费在线视频| 一区二区三区免费在线观看| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 久久久国际精品| 国产真实乱偷精品视频免| 精品国产一区二区精华| 久久精品免费观看| 日韩三级精品电影久久久| 天堂在线一区二区| 欧美精品久久一区二区三区| 麻豆成人久久精品二区三区小说| 欧美高清一级片在线| 亚洲国产一区二区三区| 欧美日韩在线观看一区二区| 亚洲精品视频一区二区| 在线影院国内精品| 国产日韩欧美精品一区| 一本久久精品一区二区| 怡红院av一区二区三区| 色综合 综合色| 亚洲一区中文在线| 欧美精品粉嫩高潮一区二区| 亚洲国产精品久久一线不卡| 宅男噜噜噜66一区二区66| 捆绑调教美女网站视频一区|