APP下载

基于Proteus串行通信系统的教学研究与设计

2016-07-22王冬星马英瑞

大庆师范学院学报 2016年3期
关键词:单片机

王冬星,王 健,马英瑞,李 梓,李 娟

(大庆师范大学 计算机科学与信息技术学院,黑龙江 大庆 163712)



基于Proteus串行通信系统的教学研究与设计

王冬星,王健,马英瑞,李梓,李娟

(大庆师范大学 计算机科学与信息技术学院,黑龙江 大庆 163712)

摘要:单片机原理中串行通信理论知识的讲解相对较难,为将其理论知识融于“做中学”,让学生在学习过程中有直观认识,研究与设计了一个基于Proteus的串行通信教学系统,使学生在制作串行通信系统实物之前通过对仿真系统的调试,加深对单片机系统设计的理解,减少实验器材的消耗并避免一些危险的产生。基于仿真环境教授单片机串行通信知识,使学生能达到所见即所学,激发了学生的学习兴趣,提高了教学效果,为相关教学提供了借鉴。

关键词:Proteus;串行通信;单片机

0引言

2016年,物联网将攻克一批关键核心技术,被进一步扩大应用,在未来十年内会迎来其发展的高峰期,物联网技术人才也会炙手可热[1]。而众多高校的物联网专业均会开设《单片机原理与应用》之类的嵌入式课程,在此课程中对学生的电路设计、程序设计、系统综合设计与调试等能力进行训练,使其能对理论与实践进行良好融合,快速地适应企业岗位并对嵌入式系统设计有深刻认识。

传统的单片机教学是理论与实验相分离,实验时学生按照实验说明书在实验箱上连接固定电路,下载相关程序、调试、运行、观看实验现象,由于已知元器件固定,学生对电路设计较少、自行创新设计内容也较少,很难提高学生的自主学习能力[2];同时,学生在枯燥情况下会由于好奇心对实验箱进行破坏性操作,造成实验耗材的不必要损失,这种现象在讲授单片机串行通信知识时会更加明显一些。

Proteus由英国Labcenter electronic公司生产的一款电路分析与实物仿真软件,是目前最好的模拟单片机等元器件运行的仿真工具之一,对常见元器件,在硬件设计完成前通过Proteus进行硬件仿真,可以大量节约开发周期[3]。Keil是编写单片机程序的软件开发环境,Proteus与Keil联合使用,可以对单片机系统的设计进行软硬件联合调试,既方便设计开发过程,又节省了时间和费用;同时,基于Proteus仿真系统制作过程的教学演示,又引领学生进行了一步步深入的学习和思考,并让学生自主设计完善系统,达到了良好的教学效果[4]。因此,本文以Proteus为硬件仿真工具、Keil为软件开发环境,设计了一个基于Proteus的串行通信系统,为着重讲解单片机的通信理论、在仿真教学系统中忽略某些扩展电子元器件的使用,以达到更好的教学效果。

1系统设计

1.1通信系统总体设计

文章设计的通信教学演示系统的总体思想为:突出串行通信的使用,使上位机对信息进行控制和处理,然后将处理结果通过串行通信发送给下位机,其设计框图如图1所示。系统中,上位机通过矩阵键盘获得键值,将键值进行输出,当按下“串行通信开关后”,上位机将矩阵键盘获得的键值传送到下位机上,并在下位机上输出显示;按下“下位机显示关闭”键,下位机输出模块不再显示数值。

图1 系统结构图

串行通信是上位机与下位机联系的通道,上位机通过此通道将数据发送给下位机。每个单片机都有输出模块,为突出通信功能并简化输出模块,输出模块在此系统中用LED数码管显示,主要用于显示收到的数据和发送的数据。

1.2Proteus仿真系统设计

为方便讲解单片机通信原理,用Proteus的ISIS环境绘制单片机串行通信原理图,并加载程序调试运行,给学生以直观认识,易于梳理学生的学习难点,经实践证明教学效果良好,其教学流程如图2所示。

图2 基于Proteus的教学流程图

本系统的主要目的是让学生掌握单片机通信原理与控制流程,因此在仿真系统初始设计时,为减少外围电子器件对主要理论学习的影响而将外围电子器件省略,在后期学习时再逐渐被讲解和使用。根据2.1节介绍的系统结构,在Proteus的ISIS环境中绘制的仿真原理图,如图3所示,系统明显地具有输入、输出、串行通信和按键控制4个功能模块。

图3 仿真效果图

其中,上位机具有以下4个功能:

1.接收矩阵键盘的输入,对其输入的键值进行辨别。

2.将矩阵键盘输入的键值进行输出,在数码管上显示。

3.按键“串行通信开关”被按下,通过串行通信,将数码管上显示的数据传送给下位机。

4.按键“下位机显示关闭”被按下,通过串行通信控制,控制关闭下位机数码管、不显示数据。

下位机具有以下2个功能:

1.通过串行通信,接收上位机发送到数据。

2.将串行通信接收的数据输出,在数码管上显示;如果是按键“下位机显示关闭”被按下,关闭其输出模块,即控制其数码管不显示数据。

1.3程序设计

在程序讲解中重点要讲解单片机串行通信的结构、寄存器SCON的设置和单片机串行中断的使用方式。这3个部分也是单片机串行通信的理论讲解重点,在学生学习过程中也属于偏难的知识点,因此先通过演示系统例程,让学生有直观认识、然后让学生自行设计或更改例程来创作更好的系统。程序流程图如图4,注意上位机和下位机分别使用不同的程序,将程序生成的HEX文件分别下载到相应的单片机中进行运行。

图4 程序设计流程图

上位机发送数据的关键代码

void Send(unsigned char data_send) {

SBUF=data_send;//发送缓冲区接收发送字符

while(TI==0) ; //缓冲区没发完就等待

TI=0; //为了接收下一帧数据,需将TI清0

}

下位机接收数据的关键代码

unsigned char Receive(void){

unsigned char data_rev;

while(RI==0) ;//只要接收中断标志位RI没有被置"1"

//等待,直至接收完毕(RI=1)

RI=0; //为了接收下一帧数据,需将RI清0

data_rev=SBUF;//将接收缓冲器中的数据存于data_rev

return data_rev;

}

1.4扩展设计

学生在掌握通信系统原理与编写程序技巧后,应能对上述通信系统进行扩展设计,例如:

1.将上述系统改成双机串行通信,2个单片机都能接收和发送。

2.修改输出模块和输入模块,形成更丰富串行通信演示系统。

3.自学外围电子元器件,制作实物串行通信系统。

基于原有系统的扩展训练,提高了学生的动手能力,无疑是对他们创新创业的一个很好训练。

2结语

基于Proteus串行通信系统的教学演示和设计,缩短了平时通信原理知识的授课学时,通过所见即所得的仿真效果,加深了学生学习的印象,提高了教学效率。利用仿真环境进行教学,省去了实验器材的消耗,避免了一些危险情况的产生,值得相关教学借鉴。

[参考文献]

[1] 王乃国,朱香卫.物联网应用技术专业人才需求及高职生的岗位分析[J].中国职业技术教育,2014(31):76-79.

[2] 高庆华,王洁.基于Proteus的单片机综合设计实验教学[J].实验室科学,2015,18(5):119-121.

[3] 王冬星 许有军.单片机技术及C51仿真与应用[M].北京:北京理工大学出版社,2015.

[4] 吴小红.基于Proteus软件的单片机实验室构建的研究[J].通讯世界,2016(1):262-263.

作者简介:王冬星(1977-),女,黑龙江大庆人,副教授,从事计算机应用和软硬件协调设计研究。

基金项目:黑龙江省高等教育教学改革项目“地方本科院校转型过程中计算机应用技术型人才培养模式的研究与实践”;大庆师范学院教育教学改革项目(JY1521)。

中图分类号:G642.0

文献标识码:A

文章编号:2095-0063(2016)03-0033-03

收稿日期:2016-02-05

DOI 10.13356/j.cnki.jdnu.2095-0063.2016.03.009

猜你喜欢

单片机
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
小议PLC与单片机之间的串行通信及应用
MSP430单片机在仿真中要注意的几点问题
基于单片机的平衡控制系统设计
基于单片机的三维LED点阵设计
Microchip推出两个全新PIC单片机系列
基于Proteus的单片机控制系统的仿真设计