资源预览内容
第1页 / 共24页
第2页 / 共24页
第3页 / 共24页
第4页 / 共24页
第5页 / 共24页
第6页 / 共24页
第7页 / 共24页
第8页 / 共24页
第9页 / 共24页
第10页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
EDA技术及其应用第4章 应用VHDL设计数字系统 项目1:电子琴的设计设计目标:设计一个电子琴,具有8个按键,当按下某一个按键的时 候,能够演奏8个音符之一: 1、2、3、4、5、6、7、H1视频演示知识点:o 熟练掌握计数器的设计方法;o 熟练掌握可变分频器的设计方法;o 熟练掌握IF语句的使用;o 熟练掌握CASE语句的使用;项目1:电子琴的设计项目分析:o设计问题:如何发出不同音调的声音?需要:可变分频器(数控分配器)项目1:电子琴的设计项目1:电子琴的设计项目分析:o设计关键1:可变分频器(数控分配器)!项目1:电子琴的设计LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT10 ISPORT (CLK,RST,EN : IN STD_LOGIC; CNT: OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT : OUT STD_LOGIC ); END CNT10;p知识回顾:10进制计数器设计项目1:电子琴的设计ARCHITECTURE behav OF CNT10 IS BEGINPROCESS(CLK, RST, EN)VARIABLE CNTI : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINIF RST = 1 THENCNTI := (OTHERS =0) ; -计计数器异步复位 ELSIF CLKEVENT AND CLK=1 THEN -检测时钟检测时钟 上升沿IF EN = 1 THEN -检测检测是否允许计许计数(同步使能)IF CNTI 0); -大于等于9,计计数值值清零 END IF;END IF;END IF; IF CNTI = 9 THEN COUT 0) ; -计计数器异步复位 ELSIF CLKEVENT AND CLK=1 THEN -检测时钟检测时钟 上升沿IF EN = 1 THEN -检测检测是否允许计许计数(同步使能)IF CNTI 0); -大于等于N-1,计计数值值清零 END IF;END IF;END IF; IF CNTI = N-1 THEN COUT 0) ; -计计数器异步复位 ELSIF CLKEVENT AND CLK=1 THEN -检测时钟检测时钟 上升沿IF EN = 1 THEN -检测检测是否允许计许计数(同步使能)IF CNTI 0); -大于等于N/2,计计数值值清零 END IF;END IF;END IF;IF CNTI div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num div_num=0 ; en = 0; CODE=“0000“; HIGH =0; - 同时按多个键,0Hz,不响END CASE; 项目1:电子琴的设计总结知识点回顾:o 计数器的设计;o 可变分频器的设计;项目2:课后练习,音乐播放器的设计设计目标:o设计一个音乐播放器,具有“开始播放”、“暂停播放”和“ 停止播放”3个按键;o当按下“开始播放”按键的时候,能够重新开始演奏一首动 听的乐曲;o当按下“暂停播放”按键的时候能够在暂停演奏和继续演奏 之间切换;o当按下“停止播放”按键的时候能够中止播放。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号