这次教程开发程序所用到的软件为keil uVision2,该软件大家可以到实验室的下载中心进行下载;硬件实验平台主要采用我们实验室自行设计的实验板,有需要的请直接与我们联系。下面分别介绍这keil uVision2和实验板的使用方法,在程序编写完成后需把程序烧写到单片机中,我们是用ISP在线下载工具,这里一并进行介绍。
为了便于大家学习,这里我们写一个以1602液晶为显示器件的可显示时、分、秒的电子时钟程序为例介绍整体程序从编辑、编译到下载的全过程。(具休程序已事先写好并经正常调试无误,后面课程会具体介绍,这里暂不作讲解)
在正式的写程序之前,需进行keil uVision2软件的安装和实验板驱动程序的安装,相关的软件及驱动程序请大家直接在实验室网站下载中心进行下载,这里给出下载地址。keil uVision2软件件及安装方法、实验板驱动程序及安装方法。
安装安成后,即可按下面的步骤进行。
1、KEIL软件的使用及工程文件的建立
51单片机程序设计所用到的开发软件主要是keil uVision,它是由德国Keil Software公司开发的,2005年Keil公司被ARM公司收购,并于2009年发布了keil uVision4,这个版本的软件支持ARM系列的芯片,如现目前流行的STM32等芯片 ,我们这里使用的是uVision2版本。
(1)、打开KEIL软件
双击keil快捷方式图标(软件安装好后,一般在桌面上会有快捷方式,双击即可),出现启动界面如图1,紧接着出现编辑界面如图2。
图1启动keil软件时的界面
图2进入keil后的编辑界面
(2)、新建工程
进入keil编辑界面后,点击Project菜单中的NewProject选项如图3所示(注意,如果之前该软件已经建立过工程,需要点击Close Project后再新建工程)。
图3新建工程
(3)、选择该工程所要保存的路径,输入工程名。对于keil软件,一个工程里面通常包含若干个文件,为了便于管理,一般先建立一个文件夹用于存放该工程文件,这里我们在桌面上建立文件文件夹(当然也可以放在其它盘里面),取名为“zndz”,然后将工程文件也取名为“zndz”,并点击保存,如图4所示。
图4保存工程
(4)、选择单片机型号
点击“保存”后,会马上弹出一个要求用户选择单片机型号的对话框,里面有各个公司的单片机,用户根据自己采用单片机加以选择即可,如图5所示。我们实验板上的型号为STC89C52,大家会发现,此对话框里并没有该型号的单片机,但51内核的单片机具有通用性,所以我们选用任何一款89c52单片机都可以,这里我们选择Atmel公司的AT89C52,然后点击“确定”,如图5所示。
图6单片机型号选择
点击“确定”后会有一个启动代码复制提示框出现,如图7所示,里面的内容是问你是否需要复制8051单片机的启动代码,因为我们是采用C语言编程,这里我们直接点击“否”就可以了。
图6启动代码复制提示框
之后就会进入新的编辑界面,如图7所示,至此,一个单片机工程就建立好了,但这个工程并不是一个完整的工程,工程中还需要建相应的文件才行,下面我们开始建立文件。
图7选择单片机后的界面
(5)、建立文件
如图,点击图8编辑界面左上角的或点击New菜单片的File菜单,之后会出现如图9所示的界面
图8新建文件
图9建立文件后的界面
(6)、保存文件
文件建好后,还得将来文件添加到工程去,在添加之前我们先得对文件进行保存,点击按钮,此时会出现界面如图10所示,在文件名(N)后面的框中取名“zndz.c”,注意因为是采用C语言编程,所以文件名的后缀名为“.c”,如果是采用汇编语言,则后缀名应该“.asm”.然后点击保存。
图10文件保存
(7)、添加文件到工程
保存文件后,重新回到编辑界面,点击Target 1前面的“+”号,然后在Source Group 1上单击右键,此时会出现如图11所示的界面,选择Add Files to ‘Source Group 1’,之后会出现如图12所示的对话框。
图11 添加文件到工程
图12 文件选择对话框
此时选择zndz文件,然后点击add,如图13所示。
图13 文件选中后的对话框
点击add后,会回到编辑界面,大家注意,此时在Source Group 1下面多了一个文件文件zndz.c文件,我们的程序代码就可以在zndz.c里面写了。
图14将文件添加到工程后的界面
通过上面7步,我们学会了如何在keil建立一个工程和文件,并把文件添加到工作里面,下面我们就可以直接在文件里面编写程序了。
2、程序编编辑、编译
这里我们把不事先写好的电子钟程序(源程序请点击这里面下载)直接复制到编辑文件栏中,如图15,
图15 1602电子钟程序
因为此程序是事先调试过个,所以可经直接下载(后面的课程会具体讲到初次写程序后的一些调试过程)在进行下载前需做下面的工作。(具体为什么这样大家先不用管后面课程会讲到)
点击界面左上角快捷方式按钮,出现设置界面如图16。选择Output选项,然后在Creat Hex file选项前打钩,然后点击确定即可。
图16hex文件输出设置窗口
HEX文件设置后,会重新回到编辑界面,此时再次点击全部编译按键,此时会在最后面的编译信息窗口看到多出了creating hex file from “led1”…,如图17所示此时表明在工程文件中生成了hex文件。
图17生成hex文件后的窗口
此时我们就可以进行下面一步,程序的下载了。
3、程序的下载与实验结果
程序下载时需用到ISP在线下载软件,这里我们用的是STC_ISP_V3.5本 (软件下载请点击www.51hei.com)。STC_ISP_V3.5是宏晶科技公司提供的能直接在编程者电脑上使用的ISP在 线下载方式,将用户程序下载进STC单片机的软件。
本STC-ISP 软件无需安装,直接使用。打开 JB-MCU51-V7.0\软件\STC_ISP_V479 文件夹,双击 即可。
以下是烧录程序的主要界面。操作过程非常简单。图中红色的五个大数字就表示了整个过程。简简单单的五步就可以实现。
一、启动本烧录程序后,第一步就是选择烧录器件。本烧录软件支持STC全系列的
51单片机芯片,因此,第一步必须选择相对应的型号。
另外,‚APMemory‛是指该芯片的内存大小和起止地址,根据器件型号自动更改, 不必理会。
二、选择了器件型号,第二步就应该选择将要被烧录的.HEX机器码文件或.bin 二 进制文件。HEX 文件由单片机开发环境输入、编辑代码,最后编绎产生(keil 编 译产生)。如图所示:
三、选择串口,连接电脑和开发板,串口下载默认是COM1口,如果用RS232-USB 转接线下载,COM口就不一样了,可以右键我的电脑看到图示多出的COM3口。(当 然不同的电脑可能会不一样!)
四、选择波特率,一般情况下这都是默认的,最高波特率选择115200,最低波特率选择1200。
五、以上四个步骤完成后直接点击Download/下载进行下,会看到如下图所示提 示,此时给请给单片机断电复位(打开开关MCU OFF/ON)。
断电复位后可以看到如下图所示提示:
到此,一个完整的程序就下载到开发板上了,可以在实验板上看到8个led灯流水的效果了。