基于Proteus可视化设计
2019-08-10封雪郝颖于世东
封雪 郝颖 于世东
摘要:在单片机项目中,开发者不仅需要考虑硬件选择,方案设计,还要编写功能代码,仿真测试等。而对于非计算机专业的初学者来说,编程难度较大。Proteus可视化设计方法,利用流程图代替编写代码这一特点,大大减低了难度,从而激发学生学习积极性。
关键词:proteus;可视化;单片机
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2019)17-0243-03
开放科学(资源服务)标识码(OSID):
Abstract:In the single chip project, developers not only need to consider hardware selection, scheme design, but also write functional codes, simulation tests and so on. For beginners who are not computer majors, programming is more difficult. Proteus visual design method, using flow chart instead of writing code, greatly reduces the difficulty, thus stimulating students'learning enthusiasm.
Key words:Proteus; visualization; singlechip
1 引言
由于实验场地及时间的限制,致力于单片机教学的教师在线下教学中,目前大多数采用proteus进行单片机及外围器件的仿真。Proteus[1]软件是英国Lab Center Electronics公司出版的EDA工具软件。
单片机工程开发周期长,通常需要选择芯片、确定方案、设计硬件、编写功能代码,仿真测试、系统测试等等。在硬件电路设计方面,开发者需要查阅硬件手册,弄清元件的引脚用途,控制器的存储接口等,而且控制方式复杂。在软件设计方面,开发者至少要先学习一门编程语言。一般常用“c、c++”或汇编语言。然后再将二者综合应用起来。对于初学者来说难度较大。
2 Proteus可视化优点
Proteus可视化设计[2,3]过拖放方式完成原理图设计和代码编写过程。实际上,学生只要拖放相应模块,搭建程序流程图,并进行必要参数设置,即可实现相应功能。因此,开发者仅需要掌握微控制器的基本架构,这大大降低对编程和控制逻辑的设计要求。
3 相关模块
3.1 外设窗口
外设窗口中左侧为项目树。在此窗口中,开发者可以通过右键,然后在弹出的快捷菜单中选择添加流程图、添加外设或添加资源文件操作等操作,如图1所示。
如果外设成功添加到工程中后,点击外设左侧箭头,用户即可看到此外设所包含的所有方法。开发者同样可以通过拖放的方式,将方法放置到流程图编辑窗口,以实现其功能。这个过程,大大简化了初学者的学习难度。注意,每个设备要有不同的id。具有相同名称的端子被认为通过不可见线连接(网络标号)。
Proteus为外设提供了一些默认的方法。例如,led的on、off方法。因此,当开发者成功在工程中添加外设后,若想要使用某一外设的某一方法时,就可以在这一对话框中进行设置。
3.2 流程图工具栏
用户可以利用拖放的方法直接从外设窗口中或者从流程图工具栏将拖到流程图编辑窗口。流程图工具栏中包括事件模块、结束模块、分配模块、子程序调用、存储数据模块、I/O操作、延时、条件模块、循环、互连器等工具,如图2所示。
结构化程序设计主要包含3种结构,顺序结构、条件结构、循环结构。其中,条件结构可以通过条件模块实现;循环结构可以通过循环结构实现。
4 流水灯可视化设计案例
Proteus8.3以及以上的版本提供了Proteus可视化设计功能。我们以流水灯可视化设计作为案例,进一步说明可视化设计步骤。
4.1新建工程
(1)新建工程:通过工程向导,新建工程;
(2)设置工程名和保存路径;
(3)选择原理图大小;
(4)选择PCB布局;
(5)固件屏幕的设置,如图3所示;
(6)完成。
4.2 添加外设
在“外设窗口”中右键,在弹出的快捷菜单中选择“添加外设”,然后在弹出的“选择外设”对话框中,外设分类下选择“Grove”,再在下面列出的外设中选择“Grove LED”。选中外设后,用户会在右侧的预览区域中看到外设。图中的“D3”为外设的ID。
点击“OK”按钮后,在“外设窗口”中,即可看到添加的外设名称以及该外设已有的方法。同时,软件也会自动将外设添加至原理图中。这里,用户应注意修改外设的ID号。双击元件,然后在弹出的“编辑元件”对话框中ID下拉列表框中,选择元件的ID号。注意不要重复。同时,用户也不用进行外设与cpu的连接操作,proteus软件自动实现外设和cpu的连接。
4.3 设计流程图
流程图编辑窗口中仅包含一个名为“Main”的sheet,用户可以通过在“外设窗口”中右键,然后在弹出的快捷菜单中选择“添加图表”以实现其他图纸的添加。这里的“Main”图表的内容,实际上相当于程序设计中的主函数功能。最初的Main包含setup模块和loop模块。Setup模块中,通常设置外设初始状态或变量的初始值。Loop模块为循环结构,在这一模块设置的动作,将贯穿于整个工程的执行过程中。用户可以在“流程图工具栏”窗口中,利用拖拽的方法或在“外设窗口”中直接拖拽方法的形式,将方法添加至“流程图编辑窗口”。其中,外设所包含的各种方法已有Proteus软件实现。这样就大大降低了对初学者的编程要求。流水灯设计流程图,如图4所示.
4.4 仿真调试
用户可以通过点击窗口左下方的“仿真控制按钮”,进行功能的仿真与调试。如果原理图或流程图中由错误,则会在“VSM Studio 输出”窗口报错。用户可以根据提示进行修改。若工程中没有错误,用户即会看到仿真效果,如图5所示。
5 总结
通过案例,我们可以看到,基于流程图的proteus可视化设计方法,大大降低了对用户的编程和控制逻辑的设计要求。开发者仅需要掌握微控制器的基本架构,弄懂功能流程,通过拖拽的方式,即可实现相应功能,类似于“乐高”式学习,大大激发了初学者的学习兴趣。
同时,proteus也提供了反编译的功能,即可将流程图反编译为C代码。所以,也可以满足用户的后续学习要求,以提升用户设计能力和编程能力。
参考文献:
[1] 蓝天,陈永,王婷.单片机原理及实用技术[M].成都:西南交通大学出版社,2014.
[2] 董志敏.Ardunio工程可视化设计在教学中的应用[D].内蒙古大学,2016.
[3] 张江城,胡橙.基于Ardunio的高职高专单片机相关课程改革设计[J].中小企业管理与科技(上旬刊),2016,04:124-125.
【通聯编辑:李雅琪】