微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于单片机及CPLD的多间隔脉冲产生电路

基于单片机及CPLD的多间隔脉冲产生电路

时间:06-06 来源:互联网 点击:

摘要:单片机具有逻辑控制功能灵活的特点,复杂可编程逻辑器件(CPLD)具有集成度高、可靠性好及工作速度快的优点,基于二者各自的优点,设计了一种脉宽固定为1 μs,周期可调的单头、双头、三头三路脉冲产生电路,该脉冲发生器可实现在脉冲不间断的情况下改变周期,其波形要求精度高、漂移小、抗干扰能力强。
关键词:单片机;复杂可编程逻辑器件;脉冲发生器;计数器

脉冲信号发生电路在电路实验和设备检测等工程中具有十分广泛的用途,例如某测试系统,需要给被测产品加入可调的多间隔脉冲激励信号,以使被测产品能按照要求工作在不同的状态。随着各种数字设备和工业标准持续、快速的发展以及市场对缩短产品开发周期的客观要求,脉冲信号发生电路已成为信号源市场的一大主流,其市场份额在迅速增长;同时,目前国内在测试中使用的脉冲发生电路几乎全部依赖进口。因此,研制出具有实用价值的脉冲发生电路,对满足国内、国际市场的需求具有重要意义。

1 系统总体结构
1.1 系统设计思想
系统采用模块化设计,单片机AT89S52和CPLD是整个系统的CPU,控制系统的协调。首先通过4x4按键模块设置系统脉冲信号的周期,选择脉冲输出方式,并给出状态指示;CPLD接收输入信号后与单片机进行数据通信,并将脉冲信号周期通过LCD1602显示,然后经过单片机和CPLD的数据处理,产生所需的脉冲信号,由CPLD输出。其中状态指示由3个不同颜色(红、绿、黄)的发光二极管给出,其电平由CPLD的I/0口输出;4x4按键模块键盘的前10个键位为数字0~9、第11个为小数点、第12到第14个为脉冲选择键A1,A2,A3用于选择输出方式(单头、双头、三头),另加一个确认键。

1.2 AT89S52单片机简介
AT89S52是一种低功耗、高性能的8位微控制器,具有8 k字节在系统可编程Flash存储器。AT89S52使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,AT89S52拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。
AT89S52具有以下标准功能:8 k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0 Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
1.3 EPM7128SLC84的特点
EPM7128SLC84是Altera公司开发的CPLD器件,属于MAX 7000S系列。在高集成度PLD器件中,MAX7000S系列是速度最快的类型之一,它内部为第二代MAX(MultipleArray Matrix)结构。除了集成度高的优点外,器件内部单元(cell)之间的连接采用连续的金属线,这种互连结构为单元之间提供了固定的、短时延的信号通道,从而消除了内部延时的难以预测性,并有效地提高了芯片资源的利用效率。
EPM7128SLC84是基于EEPROM的可编程CMOS器件,其主要性能指标为:外部引脚数目为84,内部等效门数为2 500左右;内部有128个逻辑宏单元(Maerocell),每16个宏单元组成一个逻辑阵列块(LAB),每个逻辑阵列块对应8个I/O引脚;除通用I/O引脚外,EPM7128SLC84有两个全局时钟、一个全局使能和一个全局清零输入;器件最高计数频率为151.5 MHz,内部互连延时为1ns。
EPM7128SLC84的主要特点为:支持通过JTAG口进行5 V电压的在片编程;宏单元的工作速率和功耗可编程选择,用户可决定每一个宏单元的工作模式——选择一般模式或是节能模式(功耗降低50%或更多,但延时加大);宏单元的触发器有独立的清零、预置、时钟和时钟使能控制,可通过编程进行设置;器件的引脚输出可设置,有以下3种选项:1)多电平I/O接口,通过硬件设置可使引脚输出支持5 V或3.3 V两种电平;2)输出回转速率(Slew-Rate)控制,用户可决定每一I/O引脚的输出回转速率,大回转速率缩小了信号通道的延时,但有可能加大瞬态躁声;3)集电极开路选择。具有一个完善、友好的软件环境支持器件开发,Ahera公司的EDA软件MAX+PlusⅡ集成了设计文件编辑、编译、仿真、时序分析和器件编程等各项功能,并能直接控制器件内部宏单元或输出引脚的设置;Altera的硬件描述语言AHDL与CPLD硬件结合紧密,并且提供优化的Megafunetion函数库,支持灵活地描述各类常用复杂电路,如计数器、锁相环等。

2 硬件电路设计
2.1 单片机电路设计
单片机应用系统工作时,除了进入系统正常的初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键以重新启动。所以系统的复位电路必须准确、可靠地工作。单片机的复位都是靠外部电路实现的,在时钟电路工作后,只要在单片机的RST引脚上出现24个时钟振荡脉冲(即2个机器周期)以上的高电平,单片机便实现初始化状态复位。为了保证应用系统可靠地复位,系统采用按键电平复位方式。
单片机AT89S52的P1口与液晶显示模块LCD1602的数据端口相连,P3.2控制液晶模块的读写;对比度调整端连接一个10 kΩ的可调电阻,用来调整液晶显示亮度。另外,单片机的P2口与CPLD的8个I/O口相连,以进行数据传输,其电路设计如图2所示。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top