讲授伍宗富eda技术-电气与信息工程学院-湖南文理学院.ppt

讲授伍宗富eda技术-电气与信息工程学院-湖南文理学院.ppt

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
讲授伍宗富eda技术-电气与信息工程学院-湖南文理学院

《 E D A 技 术》 课 程 教 学 讲授:伍宗富 第十讲 VHDL设计应用实例 教学目的:使学生掌握正负脉宽数控调制信号发生器、空调系统有限状 态自动机、PID控制器的设计方法。 教学重点:正负脉宽数控调制信号发生器、PID控制器的设计 教学难点: PID控制器的设计 教学方法:讲授法、计算机辅助法。 课时计划:2学时 使用教材:EDA技术及应用.谭会生等.西安:西安电子科技大学出版社 主要参考文献: [1] 徐光辉等.CPLD/FPGA的开发和应用[M].北京:电子工业出版社 [2] 侯伯亨等.VHDL硬件描述语言与数字逻辑电路设计[M].西安:西安电子科技大学出版社 [3] [4] 周立功等.SOPC嵌入式系统基础教程[M].北京:北京航空航天大学出版社 课外作业: 上机调试 * 讲授:伍宗富 EDA技术 * 湖南文理学院电气与信息工程学院 课题: VHDL设计应用实例 一、正负脉宽数控调制信号发生器设计 二、空调系统有限状态自动机设计 三、键盘扫描电路的设计 六、作业 五 、课堂小结 四、数码管动态显示电路的设计 一、正负脉宽数控调制信号发生器设计 1.设计思路 信号发生器可由两个完全相同的可自加载加法计数组成,它的输 出信号的高低电平脉宽可分别由两组8位预置数进行控制。 如果将初始值可预置的加法计数器的溢出信号作为本计数器的初始预置加载信号LD,则可构成计数初始值自加载方式的加法计数器,从而构成数控分频器。图中D触发器的一个重要功能就是均匀输出信号的占空比,提高驱动能力,这对驱动,诸如扬声器或电动机十分重要。 -- 8位可自加载加法计数器的源程序LCNT8.VHD LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY LCNT8 IS --8位可自加载加法计数器 PORT(CLK,LD:IN STD_LOGIC; --工作时钟/预置值加载信号 --D:IN INTEGER RANGE 0 TO 255;--8位分频预置数 D:IN INTEGER RANGE 0 TO 15; CAO:OUT STD_LOGIC); --计数溢出输出 END ENTITY LCNT8; ARCHITECTURE ART OF LCNT8 IS --SIGNAL COUNT:INTEGER RANGE 0 TO 255; --8位计数器设置 SIGNAL COUNT:INTEGER RANGE 0 TO 15; BEGIN PROCESS (CLK) BEGIN IF CLKEVENT AND CLK= 1 THEN IF LD= 1 THEN COUNT=D; --LD为高电平时加载预置数 ELSE COUNT=COUNT+1; --否则继续计数 END IF; END IF; END PROCESS; PROCESS (CLK,COUNT) BEGIN IF CLKEVENT AND CLK=1 THEN -- IF COUNT=255 THEN CAO= 1; --计数满后,置于溢出位 IF COUNT=15 THEN CAO= 1; ELSE CAO= 0; END IF; END IF; END PROCESS; END ARCHITECTURE ART; 一、正负脉宽数控调制信号发生器设计 --正负脉宽数控调制信号发生器的源程序PULSE.VHD LIBRARY IEEE; --正负脉宽数控调制信号发生器顶层文件 USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY PULSE IS PORT (CLK:IN STD_LOGIC; --计数时钟 --A,B:IN STD_LOGIC_VECTOR(7 DOWNTO 0);--8位计数预置数 A,B:IN STD_LOGIC_VECTOR(3 DOWNTO 0); PSOUT:OUT STD_LOGIC); --计数溢出并分频输出

您可能关注的文档

文档评论(0)

wangyueyue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档