差别
这里会显示出您选择的修订版和当前版本之间的差别。
后一修订版 | 前一修订版 | ||
leds_on_sw [2021/09/15 22:39] gongyu 创建 |
leds_on_sw [2021/10/02 12:49] (当前版本) gongyu |
||
---|---|---|---|
行 1: | 行 1: | ||
- | ### 4. 开关控制LED的亮和灭 | + | ## 用开关、按键控制LED的亮和灭 |
+ | 在本示例中加入了输入按键/开关的控制,用4个开关和4个按键来控制8个LED的亮、灭。 | ||
+ | ### 1. 知识点 | ||
+ | * 控制输入的原理和构成方式 | ||
+ | * 开关和按键的不同 | ||
+ | * 在Verilog中用输入管脚的状态来控制输出管脚的状态 | ||
+ | |||
+ | ### 2. 原理图 | ||
+ | {{drawio>fpga_sw_leds.png}} | ||
+ | |||
+ | 如上图中所示,为了让大家体会FPGA 输入管脚的状态,开关和按键的连接方式做了不同的配置: | ||
+ | * 开关的状态缺省为低电平,没有按下时,该信号线被连接的10KΩ电阻拉到地上,当开关按下时,该信号线直通3.3V的电源线,变成高电平; | ||
+ | * 按键的状态缺省为高电平,没有按下时,该线号线被连接的10KΩ电阻拉到3.3V电源上,当按键按下时,该信号线直通到GND,变成低电平。 | ||
+ | |||
+ | |||
+ | ### 3. Verilog代码 | ||
<code verilog> | <code verilog> | ||
// ******************************************************************** | // ******************************************************************** | ||
行 37: | 行 52: | ||
+ | ### 4. 管脚分配 | ||
管脚分配如下: | 管脚分配如下: | ||
行 42: | 行 58: | ||
{{ :led_onoff_with_input.jpg? 1000 |}} <WRAP centeralign>将模块端口的16个信号分别分配给8个LED和4个按键、4个开关</WRAP> | {{ :led_onoff_with_input.jpg? 1000 |}} <WRAP centeralign>将模块端口的16个信号分别分配给8个LED和4个按键、4个开关</WRAP> | ||
+ | ### 5. 功能验证 | ||
将生成的JED文件下载到FPGA板以后的效果: | 将生成的JED文件下载到FPGA板以后的效果: | ||
{{ :ledwithinput.mp4 |}} | {{ :ledwithinput.mp4 |}} | ||
<WRAP centeralign>用开关和按键可以控制LED的on/Off, 正常开关和按键的状态都为高电平,8个LED都处于灭的状态,改变开关和按键的装填可以让LED亮起来,按键、开关和LED一一对应。</WRAP> | <WRAP centeralign>用开关和按键可以控制LED的on/Off, 正常开关和按键的状态都为高电平,8个LED都处于灭的状态,改变开关和按键的装填可以让LED亮起来,按键、开关和LED一一对应。</WRAP> | ||