色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 實(shí)驗(yàn)11:RS觸發(fā)器

          實(shí)驗(yàn)11:RS觸發(fā)器

          作者: 時(shí)間:2023-10-10 來(lái)源:電子森林 收藏

          本實(shí)驗(yàn)的任務(wù)是描述一個(gè)電路,并通過(guò)STEP 開(kāi)發(fā)板的12MHz晶振作為觸發(fā)器時(shí)鐘信號(hào)clk,撥碼開(kāi)關(guān)的狀態(tài)作為觸發(fā)器輸入信號(hào)S,R,觸發(fā)器的輸出信號(hào)Q和非Q,用來(lái)分別驅(qū)動(dòng)開(kāi)發(fā)板上的LED,在clk上升沿的驅(qū)動(dòng)下,當(dāng)撥碼開(kāi)關(guān)狀態(tài)變化時(shí)LED狀態(tài)發(fā)生相應(yīng)變化。

          本文引用地址:http://cafeforensic.com/article/202310/451322.htm

          基本RS觸發(fā)器可以由兩個(gè)與非門(mén)按正反饋方式閉合構(gòu)成。通常將Q端的狀態(tài)定義為鎖存器的狀態(tài),即Q=1時(shí),稱(chēng)為鎖存器處于1的狀態(tài);Q=0時(shí),稱(chēng)鎖存器處于0的狀態(tài),電路具有兩個(gè)穩(wěn)態(tài)。電路要改變狀態(tài)必須加入觸發(fā)信號(hào),因是與非門(mén)構(gòu)成的基本RS觸發(fā)器,所以,觸發(fā)信號(hào)是低電平有效。非Rd和非Sd是一次信號(hào),只能一個(gè)個(gè)加,即它們不能同時(shí)為低電平,因?yàn)闀?huì)有邏輯矛盾(Q == 非Q)。


          用數(shù)據(jù)流描述實(shí)現(xiàn)的RS觸發(fā)器
          程序清單rsff.v
          <code verilog> module rs
          ff

           ( 
            input wire clk,r,s,			//rs觸發(fā)器輸入信號(hào)		
            output reg q,				//輸出端口q,在always塊里賦值,定義為reg型
            output wire qb				//輸出端口非q
           );
           assign qb = ~q;
           always@(posedge clk)
          begin
          	case({r,s})
          		2'b00:  q <= q;      //r,s同時(shí)為低電平,觸發(fā)器保持狀態(tài)不變
          		2'b01:  q <= 1'b1;	   //觸發(fā)器置1狀態(tài)
          		2'b10:  q <= 1'b0;   //觸發(fā)器置0狀態(tài)
          		2'b11:  q <= 1'bx;   //r,s同時(shí)為高電平有效,邏輯矛盾,觸發(fā)器為不定態(tài)
          	endcase
          end
          endmodule
          </code>

          仿真文件rsfftb.v

            `timescale 1ns/100ps    //仿真時(shí)間單位/時(shí)間精度
             module rs_ff_tb();       
              reg    clk,r,s;         	//需要產(chǎn)生的激勵(lì)信號(hào)定義
              wire   q,qb;      	  //需要觀(guān)察的輸出信號(hào)定義
              //初始化過(guò)程塊
              initial
              begin
          	  clk = 0;
          	  r = 0;
          	  s = 0;
          	  #50
          	  r = 0;
          	       s = 1;
          	  #50
          	  r = 1;
                    s = 0;
          	  #50
          	  r = 1;
          	       s = 1;
          	  #50
          	  r = 0;
          	       s = 1;
              end
             always #10 clk = ~clk;      //產(chǎn)生輸入clk,頻率50MHz
             //module調(diào)用例化格式
             rs_ff  u1 (      //rs_ff表示所要例化的module名稱(chēng),u1是我們定義的例化名稱(chēng)
          		.clk(clk),     //輸入輸出信號(hào)連接。
          		.r(r),
          		.s(s),
          		.q(q),    //輸出信號(hào)連接
          		.qb(qb)   
                       );
            endmodule
          1. 打開(kāi),建立工程。
          2. 新建設(shè)計(jì)文件,并鍵入設(shè)計(jì)代碼。
          3. 綜合并分配管腳,將輸入信號(hào)clk,r,s分配至撥碼開(kāi)關(guān),將輸出信號(hào)q,qb分配至板卡上的LED。clk/C1,r/M7,s/M8,q/N13,qb/M12
          4. 根據(jù)仿真教程,實(shí)現(xiàn)對(duì)本工程的仿真,驗(yàn)證仿真結(jié)果是否與預(yù)期相符。
          5. 如果仿真無(wú)誤,構(gòu)建并輸出編程文件,燒寫(xiě)至的Flash之中。
          6. 觀(guān)察輸出結(jié)果。
          1. 仿真結(jié)果如下圖所示:
          2. 實(shí)驗(yàn)現(xiàn)象:撥動(dòng)撥碼開(kāi)關(guān)撥至01,led1亮,led2滅。撥動(dòng)撥碼開(kāi)關(guān)撥至10,led1滅,led2亮。撥動(dòng)撥碼開(kāi)關(guān)撥至00,保持上一個(gè)狀態(tài)。


          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉