欢迎来到天天文库
浏览记录
ID:18834260
大小:241.00 KB
页数:10页
时间:2018-09-26
《可编程微波炉控制器的设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、可编程微波炉控制器的设计相关专题:电子应用时间:2011-10-0809:35来源:icbuy亿芯网 随着大规模集成电路技术和计算机技术的不断发展,在涉及通信、国防、航天、医学、工业自动化、计算机应用、仪器仪表等领域的电子系统设计工作中,EDA技术的含量正以惊人的速度上升;电子类的高新技术项目的开发也日益依赖于EDA技术的应用。设计者的工作仅限于利用软件的方式来完成对系统硬件功能的描述,在EDA工具的帮助下并应用相应的FPGA/CPLD器件,就可以得到最后的设计结果。尽管目标系统是硬件,但整个设计和修改过程如同完成软件设计一样方便和高效,从而使产品的开发周期大为缩短
2、、性能价格比大幅提高。不言而喻,EDA技术将迅速成为电子设计领域中的极其重要的组成部分。 1系统硬件设计框图 本系统设计采用AlteraMAXⅡ系列性价比较高的EPM240T100C5可编程逻辑器件作为信号处理及系统控制核心,完成包括分频、计数、显示等一系列工作,结合所需的外围模块,组成一个最小系统,完成按键控制、LED显示、音频提示。总体设计如图1所示。 利用CPLD/FPGA可编程的特点,使电路大为简化,利用软件QuartusII和硬件描述语言VHDL对数字系统进行编程、调试和仿真,使得设计、调试方便便捷,充分地发挥了CPLD/FPGA的优势及特点。 2微
3、波炉控制器的整体设计方案 根据该微波炉的功能设计要求,软件设计可由:分频器、状态控制器、数据装载器大、计时器、显示器、微波加热信号锁存器6个模块组成。各模块之间的关系如图2所示。 2.1分频器fredivn的设计 在接口电路中,时钟信号的作用至关重要,一般CPLD的外部时钟信号可达到几十MHz,但是由于一些接口电路的特性所致,这样高频率的时钟不适合电路工作,所以应该引入时钟分频电路产生适合接口的工作频率。分频模块的设计用于产生合适的扫描时钟、计数时钟和闪烁时钟,其外部接口如图3所示。时钟发生器的输入是全局时钟clk,是从50MHz的石英晶振得到的信号。输出信号是
4、扫描时钟clk1kHz、clk5Hz和clk1Hz。 部分关键程序如下: ------1kHz分频--------------- process(clk) variablecount0:integerrange0to24999; begin ifclk’eventandclk=’1’then ifcount0=24999then clk0<=notclk0; count0:=0; elsecount0:=count0+1; endif; endif; clk1kHz<=clk0; endprocess; ------5Hz分频------
5、--------- process(clk0) variablecount1:integerrange0to99; begin ifclk0’eventandclk0=’1’then ifcount1=99thenclk1<=notclk1;count1:=0; elsecount1:=count1+1; endif; endif; clk5Hz<=clk1; endprocess; -----1Hz分频----------------- process(clk0) variablecount2:integerrange0to499; be
6、gin ifclk0′eventandclk0=′1′then ifcount2=499thenclk2<=notclk2;count2:=0; elsecount2:=count2+1; endif; endif; clk1Hz<=clk2; endprocess; end; 2.2状态控制器state的设计 通常状态机是控制单元的主体,它接收外部信号及数据单元产生的状态信息,产生控制信号。微波炉状态控制器state的功能是控制微波炉工作过程中的状态转换,并发出有关控制信息,因此可用一个状态机实现。通过对微波炉工作过程中的转换条件及输出信号进行分
7、析,可得到其状态转换图如图4所示。 该状态机有8个状态。当状态机的reset信号为0时,状态机复位到idle状态,当reset信号为1时,状态机处于工作状态或待机状态。状态机的转换关系是:当前状态是idle状态,在时钟上升沿到来时,如果输入信号test=0或stall_1=0或stall_2=0或stall_3=0,则转入下一状态tap1或tap2或tap3或tap4,否则仍停留在idle状态,实现了微波炉上电复位时处于待机状态。当test=0时,状态机转入测试状态tap1。当stall_1=0或stall_2=0或stall_3=0时,状态机转入
此文档下载收益归作者所有