Proteus仿真技术在单片机教学中的应用研究
2018-07-23安徽商贸职业技术学院周正贵
安徽商贸职业技术学院 周正贵
单片机应用技术是高职院校电子类专业中开设的一门专业课程。在课程实践教学中,除动手焊接实物单片机电路板外,一般采用Proteus软件进行仿真,实现虚实结合,提高课堂教学效率。Proteus是英国Lab Center Electronics公司出版的教学仿真平台,软件集成了丰富的单片机芯片及外部元器件,支持Keil编译器。下面重点分析RS485通信技术教学案例,以简易秒表控制系统为例。
一、仿真硬件电路设计
仿真教学系统采用单片机双机串口通信,甲机单片机端口设计开始、暂停、复位三个按键。双机串口通信转换芯片使用MAX487,半双工通信,即每个单片机可作为发送端或接收端。甲机MAX487电路接口电路如图1所示。
图1 甲机MAX487接口电路
乙机外围接口电路如图2所示。乙机P1端口连接动态显示数码管,显示秒表数字,位选端口连接P2^5和P2^6端口,MAX487电路和甲机MAX487相连接,实现串口通信,本系统甲机作为发送端,己机作为接收端,接收按键值信息并控制秒表的工作。
图2 乙机接口电路
二、软件设计原理分析
软件代码使用C语言编程,集成开发环境使用Keil平台。串口通信代码设计思路:甲机启动后,首先运行串口初始化函数,建立和乙机通信,且P2^0控制端口为高电平,使得甲机为发送端;其次不间断执行按键扫描程序,即开始、暂停、复位三个按键按下后,必须发送三个标志数值给乙机,乙机接收到数据后,执行相应指令。
乙机数码管动态显示采用中断设计,即每间隔几十微秒,执行一次动态扫描,确保扫描不停止,实现显示功能。秒表延时一秒函数,使用定时器中断完成。代码设计思路:乙机程序运行后,首先运行串口初始化函数,执行中断服务程序完成动态扫描,然后,不间断执行串口接收函数,获取相应按键值后,控制延时一秒定时器的工作,实现开始、暂停、复位功能。程序执行流程如图3所示。
图3 乙机工作流程
三、小结
本文主要讨论了Proteus仿真软件在单片机教学中的应用,较详细介绍了双机通信原理,分析了利用单片机内部定时器、中断系统资源设计软件代码思路,有助于学生进一步了解仿真软件在单片机教学中的应用。