单片机应用产品的PROTEUS设计与仿真(图)
扫描二维码
随时随地手机看文章
本文从单片机应用产品研发实例出发,介绍了如何利用PROTEUS高效、正确地完成单片机应用产品的设计与仿真。
PROTEUS是单片机系统的设计与仿真平台
PROTEUS是英国Labcenter electronics公司研发的多功能EDA软件,它具有功能很强的ISIS智能原理图输入系统,有非常友好的人机互动窗口界面;有丰富的操作菜单与工具。在ISIS编辑区中,能方便地完成单片机系统的硬件设计、软件设计、单片机源代码级调试与仿真。
PROTEUS有三十多个元器件库,拥有数千种元器件仿真模型;有形象生动的动态器件库、外设库。特别是有从8051系列8位单片机直至ARM7 32位单片机的多种单片机类型库。它们是单片机系统设计与仿真的基础。
PROTEUS有多达十余种的信号激励源,十余种虚拟仪器。还有用来精确测量与分析的PROTEUS高级图表仿真(ASF)。它们构成了单片机系统设计与仿真的完整的虚拟实验室。
PROTEUS还有使用极方便的印刷电路板高级布线编辑软件(PCB)。特别指出,PROTEUS库中数千种仿真模型是依据生产企业提供的数据来建模的。因此,PROTEUS设计与仿真极其接近实际。
目前,PROTEUS已成为流行的单片机系统设计与仿真平台,应用于各种领域。笔者就利用PROTEUS完成了多种产品的开发,例如:“微电脑(单片机)防盗报警器”、“纯水机微电脑控制板”、“LED汉字显示屏”、“双单片机控制的万年历倒计时牌”等。实践证明:PROTEUS是单片机应用产品研发的灵活、高效、正确的设计与仿真平台,它明显提高了研发效率、缩短了研发周期,节约了研发成本。
PROTEUS改革了单片机应用产品的研发过程
单片机系统的传统开发过程一般可分为三步:
①单片机系统原理图设计,选择、购买元器件和接插件,安装和电气检测等(简称硬件设计);
②进行单片机系统程序设计,调试、汇编编译等(简称软件设计);
③单片机系统在线调试、检测,实时运行直至完成(简称单片机系统综合调试)。
PROTEUS促进了单片机产品研发过程的改革,有PROTEUS参与的单片机系统开发过程一般分为四步:
①在PROTEUS 平台上进行单片机系统电路设计、选择元器件、接插件、连接电路和电气检测等(简称PROTEUS 电路设计);
②在PROTEUS平台上进行单片机系统源程序设计、编辑、汇编编译、调试,最后生成目标代码文件(*.hex)(简称PROTEUS 软件设计);
③在PROTEUS平台上将目标代码文件加载到单片机系统中,并实现单片机系统的实时交互、协同仿真(简称PROTEUS 仿真);
④仿真正确后,安装实际单片机系统电路,并将目标代码文件(*.hex)下载到实际单片机中运行、调试。若出现问题,可与PROTEUS设计与仿真相互配合调试,直至运行成功(简称实际产品安装、运行与调试)。笔者的实践证明:按照PROTEUS仿真通过的设计来安装的实际系统,只要安装正确、元器件无误,焊接牢靠,基本都能顺利通过。
下面以笔者研发的“双单片机控制的万年历倒计时牌”(简称“倒计时牌”)为例,论述PROTEUS在单片机应用产品研发中的开发过程、实际操作。该“倒计时牌”已在部分中学用来作为高考日期倒计时警示牌。为精减论述,本文省去了农历、时温等部分。它由两块AT89S51、DS1302时钟芯片、16块LED数码管、3个倒计时初值设置拨码盘等构成。图1是它的PROTEUS设计与实时仿真片断。右边为双单片机控制的电路部分。电路连接除采用直接连线外还采用了PROTEUS提供的网络标号连接方法。左上方为显示部分,左下方分别为设置倒计时初置的3个拨码盘、音乐警示喇叭及3个调整开关。单片机U1、U6的晶振频率分别设置为12MHz、6MHz。该“倒计时牌”调整方便、性能稳定、性价比高。
图1 “倒计时牌”的PROTEUS设计与仿真片断
“倒计时牌”的PROTEUS电路设计
这是产品研发过程的第一步。
启动PROTEUS后,将出现用于设计与仿真的ISIS窗口。图2是“倒计时牌”PROTEUS设计时的ISIS界面情况。采用鼠标操作,非常方便。设计好图纸尺寸定义好文件名后,即可按设计需要从PROTEUS库中提取设计所需要的元器件,放置到ISIS编辑区中,进行电路连接等电路设计。设计好电路后可使用PROTEUS提供的电气检测工具对电路进行电气检测。若电路出现电气错误,会弹出信息报告。可根据报告排除电气错误,直至成功。
图2 “倒计时牌”PROTEUS设计时的ISIS界面情况
“倒计时牌”的PROTEUS软件设计
这是产品研发过程的第二步。
PROTEUS设计好硬件电路后,要进行单片机的软件设计。因是双单片机控制,所以要设计对应U1单片机的软件和U6单片机的软件。PROTEUS提供了在ISIS窗口界面中进行编写源程序、编译生成目标代码文件(*.HEX)的手段,可进行编写、编辑等各种操作。可通过在ISIS中点击菜单项Source的多级子菜单来实现。编写好源程序后,可左键单击菜单“Source”,在弹出子菜单中左键单击“Build All”选项,则将两个源程序编译生成各自的目标代码文件(WNL01.HEX和 CNTDAF.HEX)。若源程序有错,则弹出出错报告,可根据报告排错直至生成目标代码为止。图3是在ISIS中编辑源程序的现场情况,图中只显示出两个源程序的部分程序条。因篇幅关系不列完整程序了,若需要,可发邮件给zlb163com@163.com索取。
图3 “倒计时牌”的PROTEUS的软件设计
“倒计时牌”的PROTEUS仿真
这是产品研发过程的第三步。
首先要进行目标代码加载和设置晶振频率。将鼠标指向单片机U1,右键单击,再左键单击,则弹出如图4所示的“Edit Component”对话框,在“Program File”框中输入它的目标代码文件“WNL01.HEX”, 在“Clock Frequency”框中输入晶振频率12MHz,左键单击“OK”按钮即完成操作。再将鼠标指向单片机U6,同样操作可将它的目标代码文件CNTDAF.HEX加载到单片机U6中。再在“Clock Frequency”框中输入晶振频率6MHz。
左键单击仿真按钮则可实现交互式、实时仿真。仿真片段如图1所示。
仿真中,可用鼠标分别调节三个拨码盘设置倒记时初值(图1中初值设置为“096”);通过分别调节“调日历”、“调时”、“加一”3个按钮可校正万年历。
当倒记时值减至0时,则喇叭中发出警示音乐声。
“倒计时牌”实际产品的安装、运行与调试
这是产品研发过程的第四步。
“倒计时牌”交互式实时仿真通过后,可转到PROTEUS PCB DESIGN中,根据设计要求设计PCB电路板,设计中要注意布线的科学性。购买符合设计要求的元器件、接插件。细心安装实际的“倒计时牌”硬件电路。并将目标代码文件WNL01.hex、CNTDAF.HEX分别下载到实际的单片机U1(AT89S51)和U6(AT89S51)中,实际通电运行。
笔者的实践证明:只要元器件无误、安装正确、焊接牢靠,基本都能顺利通过。至此,胜利完成了这一单片机应用产品的研发,且省力、省财、省时。
图4 对U1加载目标代码文件、设置晶振频率
结论
实践证明,PROTEUS是单片机应用产品灵活、高效、正确的设计与仿真平台,改革了单片机应用产品的研发过程,为单片机应用产品研发提供了完整的虚拟实验室。