0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于FPGA按鍵控制LED-ISE操作工具

電子發(fā)燒友論壇 ? 來(lái)源:FPGA技術(shù)江湖 ? 2023-08-16 09:28 ? 次閱讀

本系列將帶來(lái)FPGA的系統(tǒng)性學(xué)習(xí),從最基本的數(shù)字電路基礎(chǔ)開(kāi)始,最詳細(xì)操作步驟,最直白的言語(yǔ)描述,手把手的“傻瓜式”講解,讓電子信息、通信類專業(yè)學(xué)生、初入職場(chǎng)小白及打算進(jìn)階提升的職業(yè)開(kāi)發(fā)者都可以有系統(tǒng)性學(xué)習(xí)的機(jī)會(huì)。

系統(tǒng)性的掌握技術(shù)開(kāi)發(fā)以及相關(guān)要求,對(duì)個(gè)人就業(yè)以及職業(yè)發(fā)展都有著潛在的幫助,希望對(duì)大家有所幫助。后續(xù)會(huì)陸續(xù)更新 Xilinx 的 Vivado、ISE 及相關(guān)操作軟件的開(kāi)發(fā)的相關(guān)內(nèi)容,學(xué)習(xí)FPGA設(shè)計(jì)方法及設(shè)計(jì)思想的同時(shí),實(shí)操結(jié)合各類操作軟件,會(huì)讓你在技術(shù)學(xué)習(xí)道路上無(wú)比的順暢,告別技術(shù)學(xué)習(xí)小BUG卡破腦殼,告別目前忽悠性的培訓(xùn)誘導(dǎo),真正的去學(xué)習(xí)去實(shí)戰(zhàn)應(yīng)用。話不多說(shuō),上貨。

按鍵控制LED-ISE操作工具

利用按鍵控制LED的要求為:按一下按鍵,改變一下LED的狀態(tài)。按鍵按一次,LED由熄滅變?yōu)辄c(diǎn)亮,按鍵再按一次,LED由點(diǎn)亮變?yōu)橄纭?/p>

硬件介紹

開(kāi)發(fā)板上面有四個(gè)按鍵,當(dāng)按鍵按下時(shí),將對(duì)應(yīng)的網(wǎng)絡(luò)置成低電平;當(dāng)按鍵釋放時(shí),將對(duì)應(yīng)的網(wǎng)絡(luò)置成高電平。

開(kāi)發(fā)板上面有四個(gè)LED發(fā)光二極管,F(xiàn)PGA輸出高電平時(shí),LED點(diǎn)亮;FPGA輸出低電平時(shí),LED熄滅。

設(shè)計(jì)原理

通常的按鍵所用開(kāi)關(guān)為機(jī)械彈性開(kāi)關(guān),當(dāng)機(jī)械觸點(diǎn)斷開(kāi)、閉合時(shí),由于機(jī)械觸點(diǎn)的彈性作用,一個(gè)按鍵開(kāi)關(guān)在閉合時(shí)不會(huì)馬上穩(wěn)定地接通,在斷開(kāi)時(shí)也不會(huì)一下子斷開(kāi)。因而在閉合及斷開(kāi)的瞬間均伴隨有一連串的抖動(dòng)。

按鍵抖動(dòng)會(huì)引起一次按鍵被誤讀多次。為確保CPU對(duì)鍵的一次閉合僅作一次處理,必須去除鍵抖動(dòng)。在鍵閉合穩(wěn)定時(shí)讀取鍵的狀態(tài),并且必須判別到鍵釋放穩(wěn)定后再作處理。

抖動(dòng)時(shí)間的長(zhǎng)短由按鍵的機(jī)械特性決定,一般為5ms~10ms。這是一個(gè)很重要的時(shí)間參數(shù),在很多場(chǎng)合都要用到。按鍵穩(wěn)定閉合時(shí)間的長(zhǎng)短則是由操作人員的按鍵動(dòng)作決定的,一般為零點(diǎn)幾秒至數(shù)秒。

我們可以在按鍵和主控設(shè)備之間加入消抖電路(消抖芯片、電容等),此種方法會(huì)增大PCB面積和花費(fèi)一定的物料費(fèi)用。大多數(shù)的板子直接將按鍵和主控設(shè)備相連接,將帶有抖動(dòng)的波形輸入到主控設(shè)備內(nèi)部,由內(nèi)部進(jìn)行消抖處理。

單片機(jī)一般采用延遲重采樣的方式進(jìn)行消抖。當(dāng)檢測(cè)信號(hào)為低時(shí),延遲一段時(shí)間(一般為20ms),再次檢測(cè)信號(hào)是否為低,如果為低,則證明按鍵按下,否則認(rèn)為按鍵沒(méi)有按下,繼續(xù)下一次檢查。

在FPGA設(shè)計(jì)時(shí),筆者推薦另外一種方式:持續(xù)采樣。當(dāng)檢測(cè)到信號(hào)持續(xù)為低10ms,認(rèn)為按鍵按下;當(dāng)檢測(cè)到信號(hào)持續(xù)為高10ms,認(rèn)為按鍵釋放。

在設(shè)計(jì)時(shí),需要考慮到外部的按鍵信號(hào)為異步信號(hào),需要進(jìn)行同步處理。具體請(qǐng)參考附錄2 FPGA中的同步信號(hào)、異步信號(hào)和亞穩(wěn)態(tài)。

每次按鍵按下的時(shí)間的長(zhǎng)短不一,經(jīng)過(guò)消抖后,低電平的持續(xù)長(zhǎng)度長(zhǎng)短也不一樣。此長(zhǎng)度遠(yuǎn)遠(yuǎn)大于一個(gè)時(shí)鐘周期的長(zhǎng)度。要求每次按下只能夠切換一次LED的狀態(tài),所以不能夠直接用此電平當(dāng)做輸出翻轉(zhuǎn)的使能。

經(jīng)過(guò)消抖的波形,每次按下只有一個(gè)下降沿(按鍵按下時(shí))、只有一個(gè)上升沿(按鍵釋放時(shí))。所以通過(guò)檢測(cè)下降沿(上升沿)的變化,產(chǎn)生一個(gè)新的信號(hào)------脈沖(一個(gè)時(shí)鐘周期的脈沖),利用此脈沖作為翻轉(zhuǎn)的使能即可。利用檢測(cè)到下降沿的脈沖翻轉(zhuǎn)時(shí),LED的狀態(tài)會(huì)在按下時(shí)就會(huì)改變;利用檢測(cè)到上升沿的脈沖翻轉(zhuǎn)時(shí),LED的狀態(tài)會(huì)在釋放時(shí)發(fā)生改變。本設(shè)計(jì)中采用檢測(cè)到下降沿的脈沖進(jìn)行翻轉(zhuǎn)。

設(shè)計(jì)架構(gòu)和信號(hào)說(shuō)明

本設(shè)計(jì)模塊命名為key_led。

a1f9a89a-3bc8-11ee-9e74-dac502259ad0.png

在設(shè)計(jì)中,共分為三個(gè)模塊。

key_filter(按鍵消抖模塊):將外部輸入的帶有抖動(dòng)的波形進(jìn)行消抖。

edge_check(邊沿檢測(cè)模塊):將消抖后的波形進(jìn)行下降沿檢測(cè),并產(chǎn)生對(duì)應(yīng)的脈沖。

led_ctrl(led控制模塊):利用脈沖,翻轉(zhuǎn)led的輸出狀態(tài)。

a20f2512-3bc8-11ee-9e74-dac502259ad0.png

key_filter設(shè)計(jì)實(shí)現(xiàn)

本設(shè)計(jì)采用狀態(tài)機(jī)實(shí)現(xiàn),狀態(tài)機(jī)的具體原理請(qǐng)參看相關(guān)文章。

對(duì)key_n信號(hào)為異步信號(hào),需要進(jìn)行同步兩拍,命名為key_n_r和key_n_rr。狀態(tài)機(jī)的判斷信號(hào)為key_n_rr信號(hào)。

本設(shè)計(jì)共分為四個(gè)狀態(tài),KEY_OFF(按鍵釋放狀態(tài)),SHAKE_ON(按鍵按下時(shí)抖動(dòng)判斷狀態(tài)),KEY_ON(按鍵按下?tīng)顟B(tài)),SHAKE_OFF(按鍵釋放時(shí)抖動(dòng)判斷狀態(tài))。

按鍵沒(méi)有按下時(shí),一直KEY_OFF狀態(tài),當(dāng)按鍵信號(hào)變?yōu)榈碗娖綍r(shí),就轉(zhuǎn)入SHAKE_ON狀態(tài),檢測(cè)低電平的持續(xù)時(shí)間。如果持續(xù)時(shí)間沒(méi)有達(dá)到T_10ms就變?yōu)楦唠娖?,則清零計(jì)數(shù)器并返回KEY_OFF狀態(tài);如果持續(xù)時(shí)間沒(méi)有達(dá)到T_10ms并且也一直為低電平,則繼續(xù)在SHAKE_ON狀態(tài)計(jì)數(shù);如果持續(xù)時(shí)間達(dá)到T_10ms并且為低電平,則清零計(jì)數(shù)器并進(jìn)入KEY_ON狀態(tài)。在KEY_ON狀態(tài),外部輸入為低電平時(shí),則繼續(xù)在KEY_ON狀態(tài);如果外部輸出為高電平,則轉(zhuǎn)入SHAKE_OFF狀態(tài)。在SHAKE_OFF狀態(tài),如果持續(xù)時(shí)間沒(méi)有到達(dá)T_10ms就變?yōu)榈碗娖剑瑒t清零計(jì)數(shù)器并返回KEY_ON狀態(tài);如果持續(xù)時(shí)間沒(méi)有達(dá)到T_10ms并且一直為高電平,則繼續(xù)在SHAKE_OFF狀態(tài)計(jì)數(shù);如果持續(xù)時(shí)間達(dá)到T_10ms并且一直為高電平,則清零計(jì)數(shù)器并轉(zhuǎn)入KEY_OFF狀態(tài)。

在KEY_OFF和SHAKE_ON狀態(tài),認(rèn)為按鍵沒(méi)有按下;在KEY_ON和SHAKE_OFF狀態(tài),認(rèn)為按鍵為按下;

狀態(tài)轉(zhuǎn)移圖如下:

a2291e7c-3bc8-11ee-9e74-dac502259ad0.png

a24e2938-3bc8-11ee-9e74-dac502259ad0.png

設(shè)計(jì)代碼為:

module key_filter (
 
 input   wire   clk,
 input   wire   rst_n,
 
 input   wire   key_n,
 
 output  reg   okey_n
);


 parameter T_10ms  = 500_000;


 localparam  KEY_OFF = 4'b0001;
 localparam  SHAKE_ON = 4'b0010;
 localparam  KEY_ON = 4'b0100;
 localparam  SHAKE_OFF = 4'b1000;
 
 reg     [3:0]   c_state;
 reg     [3:0]   n_state;
 reg          key_n_r;
 reg          key_n_rr;
 reg     [18:0]  cnt;
 
 always @ (posedge clk) key_n_r <= key_n;
 ?always @ (posedge clk) key_n_rr <= key_n_r;
 ?
 ?always @ (posedge clk, negedge rst_n) begin
 ? ?if (rst_n == 1'b0)
 ? ? ?c_state <= KEY_OFF;
 ? ?else
 ? ? ?c_state <= n_state;
 ?end
 ?
 ?always @ * begin
 ? ?case (c_state)
 ? ? ?KEY_OFF ? ?: ? ?begin
 ? ? ? ?if (key_n_rr == 1'b1)
 ? ? ? ? ?n_state = KEY_OFF;
 ? ? ? ?else
 ? ? ? ? ?n_state = SHAKE_ON;
 ? ? ?end ?
 ? ?
 ? ? ?SHAKE_ON ? ?: ? ?begin
 ? ? ? ?if (key_n_rr == 1'b1)
 ? ? ? ? ?n_state = KEY_OFF;
 ? ? ? ?else
 ? ? ? ? ?if (cnt < T_10ms - 1'b1)
 ? ? ? ? ? ?n_state = SHAKE_ON;
 ? ? ? ? ?else
 ? ? ? ? ? ?n_state = KEY_ON;
 ? ? ?end
 ? ?
 ? ? ?KEY_ON ? ?: ? ?begin
 ? ? ? ?if (key_n_rr == 1'b0)
 ? ? ? ? ?n_state = KEY_ON;
 ? ? ? ?else
 ? ? ? ? ?n_state = SHAKE_OFF;
 ? ? ?end
 ? ? ?
 ? ? ?SHAKE_OFF ?: ? ?begin
 ? ? ? ?if (key_n_rr == 1'b0)
 ? ? ? ? ?n_state = KEY_ON;
 ? ? ? ?else
 ? ? ? ? ?if (cnt < T_10ms - 1'b1)
 ? ? ? ? ? ?n_state = SHAKE_OFF;
 ? ? ? ? ?else
 ? ? ? ? ? ?n_state = KEY_OFF;
 ? ? ?end
 ? ? ?
 ? ? ?default ?: ? ?n_state = KEY_OFF;
 ? ?endcase
 ?end
 ?
 ?always @ (posedge clk, negedge rst_n) begin
 ? ?if (rst_n == 1'b0)
 ? ? ?cnt <= 19'd0;
 ? ?else
 ? ? ?case (c_state)
 ? ? ? ?KEY_OFF ? ?: ? ?begin
 ? ? ? ? ?cnt <= 19'd0;
 ? ? ? ?end
 ? ? ?
 ? ? ? ?SHAKE_ON ?: ? ?begin
 ? ? ? ? ?if (key_n_rr == 1'b0 && cnt < T_10ms - 1'b1)
 ? ? ? ?cnt <= cnt + 1'b1;
 ? ? ?else
 ? ? ? ?cnt <= 19'd0;
 ? ? ? ?end
 ? ? ? ?
 ? ? ? ?KEY_ON ? ?: ? ?begin
 ? ? ? ? ?cnt <= 19'd0;
 ? ? ? ?end
 ? ? ? ?
 ? ? ? ?SHAKE_OFF ?: ? ?begin
 ? ? ? ? ?if (key_n_rr == 1'b1 && cnt < T_10ms - 1'b1)
 ? ? ? ?cnt <= cnt + 1'b1;
 ? ? ?else
 ? ? ? ?cnt <= 19'd0;
 ? ? ? ?end
 ? ? ? ?
 ? ? ? ?default ? ?: ? ?cnt <= 19'd0;
 ? ? ?endcase
 ?end ?
 ?
 ?always @ (posedge clk, negedge rst_n) begin
 ? ?if (rst_n == 1'b0)
 ? ? ?okey_n <= 1'b1;
 ? ?else
 ? ? ?if (c_state == KEY_ON || c_state == SHAKE_OFF)
 ? ? ? ?okey_n <= 1'b0;
 ? ? ?else
 ? ? ? ?okey_n <= 1'b1;
 ?end


endmodule

(左右移動(dòng)查看全部?jī)?nèi)容)

localparam可以定義參數(shù),與parameter的區(qū)別在于,parameter定義的參數(shù)可以在例化時(shí)進(jìn)行參數(shù)修改,而localparam定義的參數(shù)在例化時(shí)則不能夠修改。定義狀態(tài)機(jī)狀態(tài)時(shí),一般采用localparam的定義方式。在不希望別人修改參數(shù)時(shí),也可以定義為localparam。

edge_check設(shè)計(jì)實(shí)現(xiàn)

在一個(gè)波形中,如果當(dāng)前時(shí)刻為低電平,上一個(gè)時(shí)刻為高電平,則認(rèn)為波形中有一個(gè)下降沿;如果當(dāng)前時(shí)刻為高電平,上一個(gè)時(shí)刻為低電平,則認(rèn)為波形中有一個(gè)上升沿。

在數(shù)字電路設(shè)計(jì)時(shí),可以采用寄存器來(lái)存儲(chǔ)上一個(gè)時(shí)刻的值。

a269ca12-3bc8-11ee-9e74-dac502259ad0.png

在寄存器電路中,Q的值,永遠(yuǎn)是上一個(gè)CLK的有效邊沿所采樣的D值。因此Q為上一時(shí)刻值,而D為當(dāng)前時(shí)刻的值。

設(shè)計(jì)代碼為:

module edge_check (


 input   wire      clk,  // 50MHz 
 input   wire      wave, // wave in
 
 output  wire      flag_pos, // flag - posedge
 output  wire      flag_neg // flag - negedge
);


 reg            wave_r;
 
 always @ (posedge clk) wave_r <= wave;
 ?
// ?assign flag_pos = (wave == 1'b1 && wave_r == 1'b0) ? 1'b1 : 1'b0;
 ?assign flag_pos = wave & (~wave_r);
 ?
// ?assign flag_neg = (wave == 1'b0 && wave_r == 1'b1) ? 1'b1 : 1'b0;
 ?assign flag_neg = (~wave) & wave_r;


endmodule

(左右移動(dòng)查看全部?jī)?nèi)容)

在設(shè)計(jì)中,注釋掉的兩行代碼和其下方的一行代碼的功能是相同的。例:對(duì)于上升沿脈沖來(lái)說(shuō),現(xiàn)在為1,過(guò)去為0即為上升沿。由于寄存器每個(gè)時(shí)鐘周期都刷新,滿足這個(gè)要求的只會(huì)存在一個(gè)時(shí)鐘周期,所以flag_pos為一個(gè)時(shí)鐘周期的脈沖。

led_ctrl設(shè)計(jì)實(shí)現(xiàn)

本模塊中,利用脈沖進(jìn)行l(wèi)ed狀態(tài)的翻轉(zhuǎn)即可。

設(shè)計(jì)代碼為:

module led_ctrl (


 input   wire     clk,
 input   wire     rst_n,
 
 input   wire     flag,
 
 output  reg      led
);


 always @ (posedge clk, negedge rst_n) begin
  if (rst_n == 1'b0)
   led <= 1'b0;
 ? ?else
 ? ? ?if (flag == 1'b1)
 ? ? ? ?led <= ~led;
 ? ? ?else ?
 ? ? ? ?led <= led;
 ?end


endmodule

(左右移動(dòng)查看全部?jī)?nèi)容)

key_led設(shè)計(jì)實(shí)現(xiàn)

本模塊只是負(fù)責(zé)將上述的三個(gè)模塊按照架構(gòu)圖的方式進(jìn)行連接,形成最終的設(shè)計(jì)。

設(shè)計(jì)代碼為:

module key_led (


 input  wire      clk,
 input  wire      rst_n,
 input  wire      key_n,
 
 output wire      led
);


 wire          okey_n;
   wire                      flag;


key_filter key_filter_inst(
 
.clk  (clk),
.rst_n  (rst_n),
  
.key_n  (key_n),
  
.okey_n  (okey_n)
);
 
 edge_check edge_check_inst(


  .clk     (clk),  // 50MHz 
  .wave     (okey_n), // wave in
  
  .flag_pos   (), // flag - posedge
  .flag_neg   (flag) // flag - negedge
 );


 led_ctrl led_ctrl_inst(


  .clk     (clk),
  .rst_n    (rst_n),
  
  .flag     (flag),
  
  .led     (led)
 ); 
 
endmodule

(左右移動(dòng)查看全部?jī)?nèi)容)

在設(shè)計(jì)中,采用了按鍵按下時(shí)的脈沖(檢測(cè)到下降沿的脈沖),按鍵按下時(shí)led的狀態(tài)即可進(jìn)行翻轉(zhuǎn)。

a27dcc88-3bc8-11ee-9e74-dac502259ad0.png

功能仿真

在仿真時(shí),將按鍵消抖中的T_10ms的參數(shù)修改為20,即持續(xù)時(shí)間不超過(guò)400ns都不認(rèn)為是有效按下或者抬起。

仿真代碼如下:

將okey_n、flag信號(hào)添加出來(lái)。

`timescale 1ns/1ps


module key_led_tb;


 reg       clk;
 reg       rst_n;
 reg       key_n;
 
 wire      led;
 
 key_led key_led_inst(


   .clk    (clk),
   .rst_n   (rst_n),
   .key_n   (key_n),
   
   .led    (led)
  );


 initial clk = 1'b0;
 always # 10 clk = ~clk;
 
 initial begin
  rst_n = 1'b0;
  key_n = 1'b1;
  # 201
  rst_n = 1'b1;
  # 200
//-------------- on shake-------------  
  @ (posedge clk);
  # 2;
  key_n = 1'b0;
  # 320
  @ (posedge clk);
  # 2;
  key_n = 1'b1;
  # 159
  @ (posedge clk);
  # 2;
  key_n = 1'b0;
  # 320
  @ (posedge clk);
  # 2;
  key_n = 1'b1;
  # 159
//--------------------------------------
//---------key on ---------------------  
  @ (posedge clk);
  # 2;
  key_n = 1'b0;
  # 5000
//------------------------------------  
//---------off shake ----------------
  @ (posedge clk);
  # 2;
  key_n = 1'b0;
  # 320
  @ (posedge clk);
  # 2;
  key_n = 1'b1;
  # 159
  @ (posedge clk);
  # 2;
  key_n = 1'b0;
  # 320
//-------------------------------------
//-----------key off----------------  
  @ (posedge clk);
  # 2;
  key_n = 1'b1;
  # 10000
  $stop;
 end


endmodule

(左右移動(dòng)查看全部?jī)?nèi)容)

a2997410-3bc8-11ee-9e74-dac502259ad0.png

通過(guò)RTL仿真圖,可以清晰的看到okey_n信號(hào)將key_n的抖動(dòng)濾除掉;flag信號(hào)為okey_n信號(hào)的下降沿時(shí)所產(chǎn)生的脈沖;led在flag信號(hào)為高時(shí),反正翻轉(zhuǎn)。

分配管腳、下板測(cè)試之前,應(yīng)該將按鍵消抖里面的T_10ms參數(shù)重新改為500_000,否則下板后可能會(huì)達(dá)不到消抖的效果。

下板觀察現(xiàn)象:

a2adc186-3bc8-11ee-9e74-dac502259ad0.png

下板成功后,可以修改在設(shè)計(jì)中使用上升沿的脈沖,得到的現(xiàn)象應(yīng)該是按鍵釋放時(shí),LED的狀態(tài)發(fā)生反轉(zhuǎn)。

切記:每次修改代碼,一定要進(jìn)行重新編譯,否則更改將不會(huì)生效。

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598931
  • led
    led
    +關(guān)注

    關(guān)注

    240

    文章

    22907

    瀏覽量

    650122
  • Xilinx
    +關(guān)注

    關(guān)注

    70

    文章

    2137

    瀏覽量

    120396
  • 發(fā)光二極管
    +關(guān)注

    關(guān)注

    13

    文章

    1179

    瀏覽量

    66004
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    4771

    瀏覽量

    96177

原文標(biāo)題:【教程分享】FPGA零基礎(chǔ)學(xué)習(xí):按鍵控制LED-ISE操作工具

文章出處:【微信號(hào):gh_9b9470648b3c,微信公眾號(hào):電子發(fā)燒友論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    STM32按鍵控制LED的亮滅

    使用一個(gè)按鍵控制LED的亮滅,按鍵按下時(shí)LED亮起,按鍵松開(kāi)時(shí)LED熄滅。通過(guò)
    的頭像 發(fā)表于 12-11 14:19 ?3100次閱讀
    STM32<b class='flag-5'>按鍵控制</b><b class='flag-5'>LED</b>的亮滅

    FPGA導(dǎo)航按鍵控制LED的方法

    FPGA按鍵控制LED軟件芯片功能代碼代碼解釋軟件軟件使用的是ISE14.6(因?yàn)楦F沒(méi)買7系列,勸大家買個(gè)7系列的板子,這個(gè)軟件裝著還挺費(fèi)事,不如Vivado好用,且6和7軟件不通用)
    發(fā)表于 01-18 10:31

    LED流水燈設(shè)計(jì)-ISE操作工具

    燈設(shè)計(jì)-ISE操作工具在軟件設(shè)計(jì)時(shí),第一個(gè)例程總是“hello world!”,那么學(xué)習(xí)硬件時(shí),也會(huì)有硬件的“hello world”------流水燈。在FPGA開(kāi)發(fā)板上有四個(gè)LED
    發(fā)表于 03-31 18:44

    按鍵控制LED-ISE操作工具

    LED-ISE操作工具利用按鍵控制LED的要求為:按一下按鍵,改變一下LED的狀態(tài)。
    發(fā)表于 04-03 19:36

    數(shù)碼管驅(qū)動(dòng)設(shè)計(jì)-ISE操作工具

    設(shè)計(jì)-ISE操作工具Xilinx ISE 系列實(shí)操所使用的開(kāi)發(fā)設(shè)備為叁芯智能科技研發(fā)的SANXIN B02 FPGA開(kāi)發(fā)板,如果有想入手的大俠,可登陸叁芯智能科技官方淘寶店咨詢以及購(gòu)買
    發(fā)表于 04-04 21:23

    音樂(lè)蜂鳴器設(shè)計(jì)-ISE操作工具

    設(shè)計(jì)-ISE操作工具Xilinx ISE 系列實(shí)操所使用的開(kāi)發(fā)設(shè)備為叁芯智能科技研發(fā)的SANXIN B02 FPGA開(kāi)發(fā)板,如果有想入手的大俠,可登陸叁芯智能科技官方淘寶店咨詢以及購(gòu)買
    發(fā)表于 04-04 21:46

    IP CORE 之 PLL- ISE 操作工具

    不多說(shuō),上貨。IP CORE 之 PLL- ISE 操作工具本篇實(shí)現(xiàn)基于叁芯智能科技的SANXIN -B02 FPGA開(kāi)發(fā)板,如有入手開(kāi)發(fā)板,可以登錄官方淘寶店購(gòu)買,還有配套的學(xué)習(xí)視頻。Xilinx
    發(fā)表于 04-06 16:04

    IP CORE 之 ROM 設(shè)計(jì)- ISE 操作工具

    不多說(shuō),上貨。IP CORE 之 ROM 設(shè)計(jì)- ISE 操作工具本篇實(shí)現(xiàn)基于叁芯智能科技的SANXIN -B02 FPGA開(kāi)發(fā)板,如有入手開(kāi)發(fā)板,可以登錄官方淘寶店購(gòu)買,還有配套的學(xué)習(xí)視頻
    發(fā)表于 04-07 20:09

    IP CORE 之 RAM 設(shè)計(jì)- ISE 操作工具

    不多說(shuō),上貨。IP CORE 之 RAM 設(shè)計(jì)- ISE 操作工具本篇實(shí)現(xiàn)基于叁芯智能科技的SANXIN -B02 FPGA開(kāi)發(fā)板,如有入手開(kāi)發(fā)板,可以登錄官方淘寶店購(gòu)買,還有配套的學(xué)習(xí)視頻
    發(fā)表于 04-10 16:43

    IP CORE 之 FIFO 設(shè)計(jì)- ISE 操作工具

    不多說(shuō),上貨。IP CORE 之 FIFO 設(shè)計(jì)- ISE 操作工具本篇實(shí)現(xiàn)基于叁芯智能科技的SANXIN -B02 FPGA開(kāi)發(fā)板,如有入手開(kāi)發(fā)板,可以登錄官方淘寶店購(gòu)買,還有配套的學(xué)習(xí)視頻。FIFO
    發(fā)表于 04-11 20:50

    數(shù)控車床操作工職業(yè)標(biāo)準(zhǔn)

    數(shù)控車床操作工職業(yè)標(biāo)準(zhǔn)(試行)1.職業(yè)概況1.1職業(yè)名稱:數(shù)控車床操作工1.2職業(yè)定義:操作數(shù)控車床,進(jìn)行工件車削加工的人員。1.3職業(yè)等級(jí):本職業(yè)共設(shè)四個(gè)等級(jí),
    發(fā)表于 02-24 15:50 ?14次下載

    利用FPGA DIY開(kāi)發(fā)板實(shí)現(xiàn)按鍵控制LED的顯示

    asean的 FPGA DIY 按鍵控制LED顯示的視頻
    的頭像 發(fā)表于 06-20 14:06 ?6999次閱讀
    利用<b class='flag-5'>FPGA</b> DIY開(kāi)發(fā)板實(shí)現(xiàn)<b class='flag-5'>按鍵控制</b><b class='flag-5'>LED</b>的顯示

    FPGA入門系列實(shí)驗(yàn)教程之按鍵控制LED亮滅的詳細(xì)資料說(shuō)明

    實(shí)現(xiàn)按鍵控制LED亮滅。通過(guò)這個(gè)實(shí)驗(yàn),掌握采用Verilog HDL語(yǔ)言編程實(shí)現(xiàn)按鍵控制LED亮滅方法。
    發(fā)表于 06-11 16:50 ?31次下載
    <b class='flag-5'>FPGA</b>入門系列實(shí)驗(yàn)教程之<b class='flag-5'>按鍵控制</b><b class='flag-5'>LED</b>亮滅的詳細(xì)資料說(shuō)明

    【嵌入式】按鍵控制 LED

    【嵌入式】按鍵控制 LED 實(shí)驗(yàn)1. 操作內(nèi)容2. 原理解釋2.1 實(shí)驗(yàn)箱按鍵電路2.2 實(shí)驗(yàn)箱LED電路2.3 寄存器說(shuō)明3.
    發(fā)表于 10-20 14:21 ?3次下載
    【嵌入式】<b class='flag-5'>按鍵控制</b> <b class='flag-5'>LED</b>

    基于stm32的按鍵控制led亮滅

    基于stm32的按鍵控制led亮滅資料文件分享
    發(fā)表于 09-21 15:50 ?38次下載