搜索
您的当前位置:首页正文

编译软件Keil在单片机课程教学中的应用

来源:二三娱乐
2009年12月第12期

   高教论坛HigherEducationForum

Dec.2009.No112

编译软件Keil在单片机课程教学中的应用

郑春来1,韩团军1,李 鑫2

(1.陕西理工学院,陕西 汉中 723003 2.汉中市质量监督局 陕西 汉中 723003)

摘要:单片机课程是电子信息类专业的重要课程,本文介绍了仿真软件Keil在单片机课堂教学中的应用。叙述了使用仿真软件,查看内部RAM、ROM和寄存器,以及执行程序时,内部寄存器和存储器的变化。使学生对单片机的内部结构和程序的执行有一个清楚全面的认识,增加了课堂教学的实践性,提高了学生的学习兴趣,使知识的理解和掌握变的更加容易。

关键词:单片机;Proteus;Keil;虚拟仿真

中图分类号:TP314    文献标识码:A    文章编号:1671-9719(2009)12-0096-02作者简介:郑春来(1976—),男,陕西汉中人,陕西理工学院讲师,主要研究方向为自动控制原理。收稿日期:2009-08-04 修稿日期:2009-09-15

程序。

  ORG  0000H

MOVMOVMOVDIVMOVMOVMOVMOVDIVSWAPADDMOVMOVEND

20H,#5CHA,20HB,#100AB21H,AR1,AA,BB,#10ABAA,B22H,AR2,22H

  引言

单片机技术课程是一门实践性很强的课程,由于课堂教学的局限性,使这门课程变得枯燥,不易理解。如果把单片机仿真软件带入课堂,可以使课堂教学变得生动有趣,实践性更强。可以极大的提高学生的学习兴趣,使知识的理解和掌握变得更加容易。

Keil公司的8051微控制器系列软件开发工具,

适合专业应用软件工程师使用,也适合刚刚了解嵌入式软件开发的学生使用,是目前最好的51单片机开发工具之一。KeilμVision3IDE是基于Win2

dows的软件开发平台,包括C编译器、宏汇编、

连接器/定位器、以及创建HEX文件、调试目标程序等,是一种集成化的文件管理编译环境,使用十分方便[1]。

本文讲述了KeilμVision3IDE软件在单片机课堂教学中的应用,如何引导、启发学生,使学生尽快掌握51单片机的结构,以及单片机开发的基本流程。

  一、数据运算与转换例程讲解

1.编写分析程序

51单片内部结构和汇编指令讲完之后,为了

在编写程序的同时,引导学生分析程序,确定相应存储器中的值,和最终结果,以备和仿真结果比较。

2.查看机器码及内部ROM

编译连接通过后,首先看一下程序存储器,点击Debug→Start/stopDebugSession按钮,然后再点击View→DisassemblyWindow,进入反汇编窗口,它显示高级别的源代码及其相关的汇编指令,如图1所示。

图1中,①是用户编写的汇编指令,②经过软件编译后,相应的汇编指令。如图示1,我们编写程序时用的B助记符,软件汇编指令为B(0xF0),给出了直接地址。③代表程序存储器的地址,④与③相对应,④表示③所指示的地址中存放的机器码。

加深学生对单片机内部RAM、内部ROM、机器码、的认识,举了数据运算与转换的例子。以

AT89C51单片机为MCU,将内部RAM的20H单

元中的8位无符号二进制数转换为三位BCD码,并将结果存放在21H(百位)和22H(十位、个位)两单元中[2]。程序设计,打开keil软件,编写

96

图1 反汇编窗口

接着,查看内部ROM。点击View→Memory

Window按钮,在Memory#1界面Address栏输图3 片内存储器

  二、结论

使用KeilμVision3IDE软件,讲解了数据运算与转换这样一个例程,增加了课堂教学的实践性,提高了学生的学习兴趣。使学生对指令、程序、机器码的含义及区别更加清楚,对51单片机的体系结构有了更深的理解,对程序的执行有了深刻的认识,熟悉了程序调试的方法,了解了单片机开发的基本流程。笔者在课堂中还使用了Proteus软件仿真[2],将转换结果由并口输出,添加HEX文件后[3],可以看见高低电平颜色不同,或使用发光二极管观察转换结果。参考文献:

[1]徐爱钧,彭秀华.KeilCx51V7.0单片机高级语言编

(责任编辑:梁弘毅)

入C:0x00回车。出来的是程序存储器列表,及相应空间存放的机器码,如图2所示。并说明图1和图2的关系。

图2 片内ROM

通过这部分讲解,使学生明白了指令、程序、机器码、ROM的含义,以及它们之间的关系。

3.查看SFR及片内RAM

在Memory#2界面Address栏输入D:0x00回车,此时该窗口显示的是片内RAM中值。然后点击Debug→Step,进入单步执行,当然使用快捷键更方便。如图3所示,执行的过程中可以看到寄存器、片内RAM中的值,随着程序的执行而变化。

对比仿真软件执行结果与前面程序分析结果。通过讲解,使学生明白程序执行时寄存器、片内

RAM的变化情况。

程与μVision2应用实践[M].北京:电子工业出版社,2004.

[2]李建中.单片机原理及应用(第二版)

[M].西安:

西安电子科技大学出版社,2008:81-82.

[3]周景润,张丽娜,刘印群.PROTEUS入门实用教程

[M].北京:机械工业出版社,2007:31-40.

基金项目:陕西理工学院教改项目(XJG0730)。

TheApplicationofSimulationSoftware

KeilinTeachingProcessofMCUCourse

ZHENGChun-lai1,HANTuan-jun1,LIXin2

(1.ShaanxiUniversityofTechnology,Hanzhong723003,China;2.HanzhongQualitySupervisionBureau,Hanzhong723003,China)

Abstract:Single-chipmicrocomputercourseisanimportantcurriculuminelectronicinformationspecialty.Inthispaper,theapplicationsofsimulationsoftwareKeilinMCUteachingprocessisintroduced.ItdescribedhowtoreadinternalRAM,ROMandregister,andthechangeofinternalregistersandmemorywhileprogramexecuting.ThisteachingprocesscanmakestudentsunderstandtheinternalstructureofMCUandprogramexecutionbetter,italsocanincreasethepracticalityofteach2ing,enhancestudents’interest,makeknowledgeeasiertounderstandandmasteratthesametime.Keywords:single-chipmicrocontroller;Proteus;Keil;virtualsimulation

97

因篇幅问题不能全部显示,请点此查看更多更全内容

Top