基于Proteus的51单片机系统电路设计与仿真
2014-10-29滕辉公茂法李玉午
滕辉++公茂法++李玉午
摘 要
本文通过对自己设计调试51单片机硬件实验经历的反思,分析其中的缺点,提出一种新的设计调试方法,即以新款的EDA仿真软件Proteus为平台,设计出一套符合潮流需要的实验调试系统。
【关键词】Proteus 单片机 实验调试系统
电子设计的传统方法是:选取实物元器件,连接电路,加载程序,调试分析。该方法对于单片机系统设计缺乏相应程序的即时联调,而常用的PROTEL、ORCAD、EWB等软件也无法满足此要求,由此,更加凸显了单片机系统设计周期长、开发费用高等缺点。
EDA设计的新方法是:以Proteus软件为平台,开发一套51系列的单片机仿真实验系统。板上集成译码器、继电器、双色点阵等模块,实验从易到难,能够对较复杂的项目有直观的认识。文中涉及到的核心芯片是由ATMEL公司开发的AT89C51,并配合第三方软件KEIL,用以改写软件程序,使得在设计调试的过程中可以多次使用已开发的成果。除了具备一般硬件实物板的所有功能外,开发出的虚拟实验系统还具有很好的联调联试仿真功能。
1 PROTEUS 软件的主要结构
PROTEUS 是由英国 Lab center Electronics 公司开发的 EDA 工具软件。主要由两个程序组成:ARES 和 ISIS。前者主要用于 PCB 自动或人工布线及其电路仿真,后者主要采用原理布图的方法绘制电路并进行相应的仿真。除上述基本应用外,该软件的革命性功能还在于它的电路虚拟仿真是互动的。
2 PROTEUS功能模块电路以及软件的设计
2.1 译码器模块
采用AT89C51,LED-RED,RESISTOR,POWER,74LS138等元件,组成如附图所示原理图,实现单片机一组端口进行段码控制。
程序设计:设置输出初值 0FEH,顺次点亮与 P2 端口相连的LED灯,之外的LED灯全部熄灭;随后,循环右移 1位输出初值带进位,并移位输出。移位输出 8 次后,依次循环。
程序调试完成后生成.HEX 文件,加载该文件,运行 Proteus ISIS。
2.2 继电器模块
采用AT89C51、RTE24005F、DIODE、LAMP、PNP、RESISTOR等元件,组成如附图所示原理图,使继电器动作。
程序设计: PNP晶体管的一侧接在单片机的P2.4端口,当靠近单片机侧端线加低电平,使三极管接通,继电器和指示灯正常工作。
程序调试完成后生成.HEX 文件,加载该文件,运行 Proteus ISIS。
2.3 双色点阵模块
采用AT89C51、74HC595、SIP8HX2等元件,组成如附图所示原理图,实现双色点阵运行。
程序设计:采用无返回值的Ms延时函数,向单片机发送字节,并在发送n个字节后由74HC595锁存。在74HC595级联发送数据后,方使锁存有效。此时,8列红色点阵显示心形,并加载防重影函数。以此类推,使用8列绿色点阵反向显示同样图形,闪烁红绿心形图案。
程序调试完成后生成.HEX 文件,加载该文件,运行 Proteus ISIS。
2.4 液晶显示屏模块
采用AT89C51、BUTTON、RESISTANT、LCD等元件,组成如附图所示原理图,驱动液晶显示屏。
程序设计:首先运行无返回值的us延时函数,尔后进行判忙流程,忙则等待,直至写入命令函数和数据函数。随后执行清屏函数,提示“press any key”。初始化函数,执行按键扫描函数,使用行列反转扫描法,并检测有无按键按下。
程序调试完成后生成.HEX 文件,加载该文件,运行 Proteus ISIS。
我设计的 51 系列单片机仿真实验系统只是运用了Proteus软件功能的一个部分,其对PCI、ARM7、AVR等CPU都能进行仿真实验。自己所做的仅是抛砖引玉,提出电子设计的新理念—EDA仿真开发。另外,应用EDA技术来开发电子产品,不仅是提高电子设计效率的需要,也是我国电子工业立于世界的需要。
3 附图
以上为部分模块的仿真结果,仿真时只需顺次连线于单片机运行即可,整体如图1所示:
参考文献
[1]蔡美琴,张为民,沈新群著.MCS-51系列单片机系统及其应用[M].北京:高等教育出版社,1992.
[2]叶建波,朱双东著.基于Proteus的单片机电路的虚拟仿真[J].电子工程师,2008.
作者简介
滕辉(1989-),男,山东省招远市人。现在读于山东科技大学硕士。研究方向为电力系统及其自动化。
公茂法,现为山东科技大学教授。
作者单位
山东科技大学 山东省青岛市 266500endprint