天天看点

手把手教你学单片机_手把手进行KeilC编程调试和仿真

编者按:停课不停学是当前全国疫情阶段实施在教育系统的基本要求。作为职业技能院校的授课和学习,都采用网上授课的形式实施,一般理论课程还好进行,但实践技能课程的授课就要要相对麻烦些。操作录屏示范,操作示范演示等均为线上授课之必须。但这些方式对于学生来讲,有些还是难以进行,那么最为传统的文字教学,则也是非常的重要。本文则是一篇适用于大学中单片机教学的操作实训编写,非常适合实践课程的教学。步骤详实,操作环环相扣。本文作为疫情教学的实践课程模板,欢迎更多的实践课程老师撰写在疫情期间的授课经验分享。

单片机的Keil C编程,还是难到了很多单片机编程的初学者,往往看书看视频都容易懵圈,笔者通过亲自操作和体验,总结出一个比较完整的Keil C单片机编程的调试、仿真及程序下载等完整过程,很详细的手把手演示,供初学者进行单片机学习编程入门。

首先我们需要安装好Keil uVision4集成编译软件、stc-isp-15xx-v6.86O程序下载烧录软件(不需安装)、及CH340串口驱动软件。(如有不会的可参考笔者在2019电子报第48~51期的第9版关于Keil C的应用文章)

然后我们启动Keil C软件,就可以开启编程之旅了,如图1所示。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

            图1

一、编程篇

启动起来的Keil uVision4软件是空白的,如图2。如果已经有工程文件可以关闭工程或者打开工程文件,我们这里是新建工程和文件。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

                图2

新建工程需要点击菜单

手把手教你学单片机_手把手进行KeilC编程调试和仿真

,再选择

手把手教你学单片机_手把手进行KeilC编程调试和仿真

项,如图3。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

                图3

选择新建uVision工程后,则会出现选择存放位置的页面,需要在专门的位置建立工程文件夹,用于存放工程及相关的文件,一般不要建在桌面或C盘,文件路径尽量短,且最后不要使用中文文件名,如图4。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图4

    建好工程文件夹和项目文件夹,则需要写上工程名字,工程名字尽量简洁便于识别,工程名文件的默认扩展名是Project Files(*uvproj) ,如图5。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

  图5

点击“保存”按钮后,窗口弹出

手把手教你学单片机_手把手进行KeilC编程调试和仿真

“添加标注8051代码到项目”的对话框,选“确定”即可,随后会出现选择单片机型号的页面,如图6。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

    图6

这里选择Atmel里面的AT89S52与实训平台对应,然后点击“OK”完成单片机型号的选择。然后需要新建项目文件,点击菜单

手把手教你学单片机_手把手进行KeilC编程调试和仿真

,然后选择

手把手教你学单片机_手把手进行KeilC编程调试和仿真

项,选择新建过后,则在软件主窗口自动出现Text1的文件编辑页面,点击软件里面的保存菜单项或图标,则在出现的页面“文件名”后面输入文件的名字,文件名同样要尽量简洁明了,尽量不要用中文。文件名的扩展名默认是All Files(*.*),虽然扩展名是所有文件,但这里是要建立C文件,在文件名后面必须要输入“.c”,如果是汇编程序,则输入“.asm”,如图7。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图7

点击“保存”过后,则新建并保存了项目文件,该文件可以进行编辑程序,但是还没有加载到对应的工程里面。在左边“Project”窗口里面的

手把手教你学单片机_手把手进行KeilC编程调试和仿真

处,鼠标右击,在出现的菜单页面选择                          

手把手教你学单片机_手把手进行KeilC编程调试和仿真

选项,如图8。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图8                          

在出现的选择对话框里面选中需要加载的C文件,点击“Add”则相应的C文件已经加入到当前工程中,如图9。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图9

现在,在当前工程管理窗口里面已经有加入的当前项目文件了,接下来就可以进行编程,期待已久的编程现在就可以开始了。              首先,需要在主窗口的第一行添加头文件,则输入#include,如果字体较小,可以进行设置调整。点击快捷菜单按钮

手把手教你学单片机_手把手进行KeilC编程调试和仿真

,打开设置页面,选择里面的

手把手教你学单片机_手把手进行KeilC编程调试和仿真

页面,在Window”窗口里面选择

手把手教你学单片机_手把手进行KeilC编程调试和仿真

,在“Element”里面选择

手把手教你学单片机_手把手进行KeilC编程调试和仿真

,点击

手把手教你学单片机_手把手进行KeilC编程调试和仿真

按钮,在弹出的“Font”页面

手把手教你学单片机_手把手进行KeilC编程调试和仿真

里面选择合适的字体大小,如图10。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图10

这里我们编制一个LED间隔500ms闪烁的程序。要编制单片机控制发光二极管LED闪烁的单片机C程序,先要熟悉硬件连接情况和定义引脚,用STC89C52单片机控制LED硬件连接可以参考图11。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图11

由图11可以看出,要控制LED闪烁,只需要控制LED的阴极的高低电平,即是控制LED的导通与截至,也就是控制与之相连接的单片机STC89C52的P1_1脚即P1^0口的高低电平,以500ms的时间间隔转换,则可以用循环延时实现。在编程中,根据C程序的格式进行位定义和变量说明,再进行编写主程序,程序如图12。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图12

在用到程序体“{}”时,要成对出现,括号内的语句用“;”隔开,每一层用“Tab”键缩进,缩进的空格数可以点击

手把手教你学单片机_手把手进行KeilC编程调试和仿真

快捷按钮,进入设置页面进行设置,如图13。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图13

    编制完程序先进行保存,再进行编译,编译时点击快捷按钮上的编译按钮

手把手教你学单片机_手把手进行KeilC编程调试和仿真

。此三个按钮第一个表示编译当前界面的C文件,用时最短;第二个表示联合编译当前工程文件过程,比较常用;第三个表示联合编译整个过程,所有文件重新编译,用时较多。我们一般选择第二个编译按钮,进行程序编译,编译主要是把C程序翻译成对应的机器指令,编译通过会在程序窗口下面的Build Output的窗口将相应信息显示出来,如图14。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图14 

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图15

编译中如果出现语法、逻辑错误,也会在BuildOutput的窗口将相应的警告或错误信息显示出来,如图15是头文件后面多了分号的错误消息显示。

编译完程序,需要下载烧写到单片机运行,能下载到单片机的程序分为hex(十六进制)和bin(二进制)文件两种,也就是能够在单片机上运行的可执行文件,我们这里需要在编译后生成hex文件。点击软件设置快捷按钮

手把手教你学单片机_手把手进行KeilC编程调试和仿真

,进入相关设置项,如图16。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

 图16

在图17中,选择

手把手教你学单片机_手把手进行KeilC编程调试和仿真

页面按钮,在

手把手教你学单片机_手把手进行KeilC编程调试和仿真

选项前面进行勾选,则在编译后系统会生成相应的hex文件,如图17。在设置时,需要在

手把手教你学单片机_手把手进行KeilC编程调试和仿真

页面里面设置晶振频率,在

手把手教你学单片机_手把手进行KeilC编程调试和仿真

项后面设置为与单片机配置相适应的晶振频率,我们这里是11.0592M。

手把手教你学单片机_手把手进行KeilC编程调试和仿真

图17

至此一个基本的单片机控制LED灯闪烁的C程序就编写完成了,如果程序没有错误,就可以进行下载烧录程序到单片机进行执行应用了。

西南科技大学城市学院 刘光乾 陈丹 马兴茹