flhv 35hb q0im 44d2 st9g ddp3 m5ep t8cv u30d amyy

[FPGA作品] 勇敢的芯伴你玩转Altera FPGA连载57:3-8译码器实验

[复制链接]
标签:利用率 00so 下载app送28

版主

发表于 2018-3-26 16:13:33   419 查看 0 回复 显示全部楼层 倒序浏览
分享
勇敢的芯伴你玩转Altera FPGA连载573-8译码器实验
特权同学,版权所有
配套例程和更多资料下载链接:
http://pan.baidu.com.galaxykid.net/s/1i5LMUUD
         所谓3-8译码器,大家可以baidu或bing一下。相信学习FPGA的读者一定都上过数字电路的课程,所以这里对3-8译码器功能的实现给个真值表,如表8.1所示,一目了然。
表8.1 3-8译码器真值表
  
SW3
  
SW6,SW5,SW4
复位
点亮LED
X
X,X,X
0
全灭
OFF
X,X,X
1
全灭
ON
OFF,OFF,OFF
1
D2点亮
ON
OFF,OFF,ON
1
D3点亮
ON
OFF,ON,OFF
1
D4点亮
ON
OFF,ON,ON
1
D5点亮
ON
ON,OFF,OFF
1
D6点亮
ON
ON,OFF,ON
1
D7点亮
ON
ON,ON,OFF
1
D8点亮
ON
ON,ON,ON
1
D9点亮
注:X表示ON或OFF,即任意状态。
    本实例的工程代码如下。
module cy4(
            input ext_clk_25m, //外部输入25MHz时钟信号
            input ext_rst_n,   //外部输入复位信号,低电平有效
            input[3:0] switch, //4个拨码开关接口,ON -- 低电平;OFF -- 高电平
            output reg[7:0] led //8个LED指示灯接口   
        );                                                
//-------------------------------------
always @ (posedge ext_clk_25m or negedge ext_rst_n)      
    if(!ext_rst_n) led <= 8'hff;   //所有LED关闭
    else if(switch[0]) led <=8'hff;   //SW3处于OFF状态,所有LED关闭
    else begin  //SW3处于ON状态,点亮的LED位由SW4/SW5/SW6拨码开关的输入决定
        case(switch[3:1])
            3'b111: led <=8'b1111_1110;   //D2点亮
            3'b110: led <=8'b1111_1101;   //D3点亮
            3'b101: led <=8'b1111_1011;   //D4点亮
            3'b100: led <=8'b1111_0111;   //D5点亮
            3'b011: led <=8'b1110_1111;   //D6点亮
            3'b010: led <=8'b1101_1111;   //D7点亮
            3'b001: led <=8'b1011_1111;   //D8点亮
            3'b000: led <=8'b0111_1111;   //D9点亮
            default: ;
        endcase
    end
endmodule
       这个代码中只有一个always语句,这里对拨码开关做判断,首先判断拨码开关SW3(switch[0])为OFF,则让所有LED也都OFF;接着用case语句判断拨码开关SW4/SW5/SW6(switch[3:1])的输入状态,根据真值表,相应获得输出结果,点亮译码后的某个特定LED。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

只有小组成员才能发言,加入小组>>

138个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /8 下一条

快速回复 返回顶部 返回列表
-

推荐专区

技术干货集中营

专家问答

用户帮助┃咨询与建议┃版主议事

工程师杂谈

工程师创意

工程师职场

论坛电子赛事

社区活动专版

发烧友活动

-

嵌入式论坛

ARM技术论坛

Android论坛

Linux论坛

单片机/MCU论坛

FPGA|CPLD|ASIC论坛

DSP论坛

嵌入式系统论坛

-

电源技术论坛

电源技术论坛

无线充电技术

-

硬件设计论坛

PCB设计论坛

电路设计论坛

电子元器件论坛

控制|传感

总线技术|接口技术

-

测试测量论坛

LabVIEW论坛

Matlab论坛

测试测量技术专区

仪器仪表技术专区

-

EDA设计论坛

multisim论坛

PADS技术论坛

Protel|AD|DXP论坛

Allegro论坛

proteus论坛|仿真论坛

EasyEDA-中国人自已的EDA工具

Orcad论坛

-

综合技术与应用

电机控制

智能电网

光电及显示

参考设计中心

汽车电子技术论坛

医疗电子论坛

-

开源硬件

-

无线通信论坛

无线通信技术专区

天线|RF射频|微波|雷达技术

-

IC设计论坛

芯片测试与失效分析

Mixed Signal/SOC[数模混合芯片设计]

Analog/RF IC设计

设计与制造封装测试

-

厂商专区

TI论坛

TI Deyisupport社区

-

检测技术与质量

电磁兼容(EMC)设计与整改

安规知识论坛

检测与认证

-

消费电子论坛

手机技术论坛

平板电脑/mid论坛

音视/视频/机顶盒论坛

-

电子论坛综合区

聚丰众筹官方社区

新人报道区

聚丰供应链

-

论坛服务区

-

供求信息发布

供需广告

招聘┃求职发布区

电子展览展会专区