第2课 keil软件及工程文件的建立
KEIL使用方法简介PPT课件

修改晶振频率 单位MHz
单击 开始仿真 注: 仿真前应先编译
寄存器列表
程序对应的汇编语句
程序 PC指针位置
复位 全速运行 停止 单步进入语句内 单步不进入语句内 从语句内返回 程序运行时间(单位:秒)
外围: 中断
I/O 串口 定时器/计数器
写在最后
成功的基础在于好的学习习惯
The foundation of success lies 样的自行展开
工程创建好的样子
3、创建文件
单击 创建新文件
这个可以不一样 单击这里保存文件并定义文件类型
自己写文件名和后缀 后缀决定文件类型 填写完成后单击保存返回
4、添加文件到工程
右键单击 左键单击
1 、
如果找不到文件 单击 这个下三角找到相应的
文件后缀 选择后就可
1、单击选择Output 2、选中Creat HEX file 3、单击OK结束
单击 编译整个工程 并生成.HEX文件
6、KEIL仿真
KEIL仿真虽然不是老师要求的内容 但是对以后单片机的学习非常有用 使用KEIL仿真可以单步运行每一条语句并观察各I/O 口、寄存器、内存的变化 如果设置了晶振频率还可以大致显示运行时间 所以我在这里简单介绍一下 不感兴趣的可以不看
以看到这个路径中的对
应后缀文件了
2、 选择文件后 单击Add添加文 件到工程
注: 添加文件后窗口不会自 行关闭 需要关闭的时候单击 Close关闭窗口
1、双击左侧文件列表中 的文件打开 2、已打开文件可以在上 面标签中选择 3、按照相应语言规则编 写程序
5、生成.HEX文件
单击 打开Target Options
30
谢谢大家
KEIL软件使用说明

目录1 Keil工程的创建 (2)2 编写程序代码 (4)3 用Keil进行调试/仿真程序代码 (8)3.1 用Keil软件调试/仿真 (8)3.2 用SST89E516RD芯片进行调试/仿真 (14)KEIL软件使用说明Keil是美国Keil Software公司出品的一套非常好用的8051系列单片机软件开发系统。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。
如果你使用C 语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。
1 Keil工程的创建接下来,我们给大家介绍一下Keil的工程是如何创建的。
我们创建一个名字为LED的工程,其中单片机我们假设选用A T89S52。
①首先,双击KEIL文件图标名,然后点击【保存】按键。
图2-3 新建工程③接下来会弹出如下图2-4对话框,选择单片机的生产厂家以及型号。
图2-4 选择单片机厂家我们这里选择【Atmel】公司的【AT89S52】芯片,在图2-5的【Description】中可以看到该单片机资源的简单介绍,然后点【确定】即可。
图2-5 选择相应的单片机④弹出一个是否需要添加启动代码的对话框,如图2-6。
我们这里选择【是】即可。
添加进入工程的启动代码为“STARTUP.A51”。
图2-6 添加启动代码⑤由下图2-7所示,我们的工程已经创建成功了。
图2-7 创建工程成功2 编写程序代码①工程创建完后,接着我们来编写程序代码。
在图2-7中,单击【File】菜单中的【New】选项,或者单击界面上的快捷图标,会弹出如图2-9对话框。
在【文件名】中,我们输入相应的文件名。
文件名用户可以随意取,不一定要和工程名字一样。
如果用C语言编写代码,则扩展名必须为c,如图2-9所示;如果用汇编编写代码,则扩展名为asm。
keil工程文件的建立以及简单代码的编写

KEIL工程的建立以及简单程序的编写下载相关软件及硬件实验平台单片机系统设计主要包括硬件设计和软件设计,对于单片机初者来说主要在于软件的学习,也就是程序设计,等大家程序这块掌握得差不多了,再去结合具体的项目学习做硬件,最终掌握单片机系统设计的方法。
而在进行软件学习的时候需要用到单片机实验板进行实验验证,实验板建议直接购买,当然如果电子技术基础好的话,自己做板也是可以的。
这次教程开发程序所用到的软件为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菜单中的New Project选项如图3所示(注意,如果之前该软件已经建立过工程,需要点击Close Project后再新建工程)。
实验一 KEIL软件的使用及P1口控制

实验一KEIL软件的使用及P1口控制一实验目的1、学习KEIL软件的使用方法及单片机实验平台2、学习P1口的控制方法3、学习延时子程序的编写和单片机延时计算方法二实验原理1、KEIL软件是德国Keil公司开发的基于Windows平台的单片机集成开发环境软件。
KEIL软件包括编译器、连接器、库管理器和仿真调试器,通过集成开发环境(μVision)将这些部分组合在一起。
2、P1口是一个八位的准双向I/O口,其中一位的内部结构如图所示,输出驱动电路有一只场效应管和一个上拉电阻组成。
每一根口线都可以分别定义成输入或输出线。
做输出线时,写入“1”,则Q’为“0”,T1截止,P1.X输出高电平,写入“0”,则Q’为“1”,T1导通,P1.X输出低电平。
做输入线时,必须先向该口线写“1”,使T1截止。
3、程序延时分析方法:延时=指令个数X机器周期机器周期=12÷nMHZ n为单片机时钟频率三实验要求与步骤实验(一):用P1口做输出口,接八位逻辑电平显示,程序功能使发光二极管从右到左轮流循环点亮。
1、使用单片机最小应用系统1模块。
关闭该模块电源,用扁平数据线连接单片机P1口与八位逻辑电平显示模块。
(并口线与右侧的8个插孔是串联等效的。
)2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。
3、打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加P1_A.ASM源程序,进行编译,直到编译无误。
4、进行软件设置,选择硬件仿真,选择串行口,设置波特率为38400。
5、(先接通仿真器电源再开启试验箱电源)打开模块电源和总电源,点击开始调试按钮,点击RUN按钮运行程序,观察发光二极管显示情况。
发光二极管单只从右到左轮流循环点亮。
注:软件具体操作见附录实验(二):用P1.0、P1.1作输入接两个置位开关,P1.2、P1.3作输出接两个发光二极管。
Keil C51的使用

编辑课件
16
5、移除文件
要把某个文件从工程中移除,可在此文件上单击右键, 然后单击“Remove File ’ ’ ”。
移除不是删除,文件依然存在。
编辑课件
17
我来演示
1、打开一个已有的工程项目(不是默认项目)。 2、打开一个已有的工程项目,修改单片机型号。
3、打开一个已有的工程项目,删除原有的文件,装 入一个已有的C语言文件。
此时光标在编辑窗口里闪烁,就可以输入用户的应 用程序了。
或者把已有的程序从其他地方直接复制到程序编辑 窗口内。
文件的建立也可以用Windows环境的附件中的记 事本或写字板等纯文本编辑软件完成。
参见教材《单片机的C5编1辑应课件用程序设计》第 309 页 27
新建文件时,建议首先保存空白文件。
编辑课件
11
如果在选择了目标器件后,想更改器件,可选择 Project菜单中的Select Device for Target‘Tartet 1’。
由于不同厂家的许多型号性能相近,因此,如果找不 到用户要求的芯片信号,可以选择其他公司的相近型 号。
参见教材《单片机的C5编1辑应课件用程序设计》第 308 页 12
uVision2支持的所有CPU器件的型号根据生产厂家 形成器件组。
用户可根据需要选择相应的器件组并选择相应的器 件型号。
编辑课件
10
通过滚动条,选择生产厂商、目标CPU。
如:Atmel器件组内的AT89C51单片机。首先找到 Atmel公司,然后单击左边的“+”号展开该组。选择 AT89C51之后,单击“确定”。
程序输入完毕后别忘了再次保存。
参见教材《单片机的C5编1辑应课件用程序设计》第 309 页 28
新唐M0单片机入门--KEIL工程的建立(基于MDK4.72a)

首先,感谢21IC论坛,提供了网友交流学习的场所;其次,感谢缥缈九哥的无私帮助!-----------------------------------------------------分割线--------------------------------------------------------工程建立本人以前有51开发的经验,对于keil开发环境还算是比较熟悉.在使用新唐单片机建立工程之前,在21IC论坛的新唐版块和M0助学园地版块看了很多资料.其中提供了新唐工程模板,还有一些建立工程的PDF教程.发现其中的资料有些老,并且很多内容没有详细的介绍,使人不明其所以然,遂有了新写一篇的想法!介绍一下我的开发环境:1.系统:XP SP32.keil版本:MDK4.72A,下载自ARM官方网站,和谐文件来自网络.3.NU-LINK驱动.6059内部测试版本.(缥缈九哥提供).说一下介绍开发环境的原因.之前电脑上装的是NDK4.71a的版本,结果NU-LINK下载过程中会出现MDK崩溃的情况,试过了N次重装,MDK依然崩溃.在本人接近崩溃的情况下,上论坛求助,得到了缥缈九哥的帮助.知道了问题是系统,软件和驱动三者驱动的原因.XP系统下,MDK版本高于454,不能使用5905,6040等较新版本的驱动! 为了解决系统崩溃的问题,特地下载了MDK4.72a版本,崩溃问题依然没有解决.但发现了新的特性,就是新唐的单片机已经集成在了MDK的这个版本中.所以开发环境果断使用了MDK4.72a.该版本下,建立工程简化了很多,下边着重介绍工程建立的配置.下图为新建的工程文件管理窗口,为方便文件管理,项目文件设置了文件夹目录.右键Target 1位置选择菜单第一项,可以进入如下配置界面(也可以使用快捷键ALT + F7),这个配置界面叫做”Options for Target”.下边对这个配置界面着重介绍一下.第一项”Device”,是器件选择项.在MDK4.72a版本中,新唐的单片机已经像你曾经使用的51单片机一样存在于器件选项当中,选择新唐单片机也变得十分简单.(如图)第二项”Target”,在下图中可以看到两个打着”√”的选项,在以前的版本中,这两个设置选项需要自己配置,现在新建项目,器件选择后,这两个选项会出现默认值,不需要修改.左边的”IROM1”后边填写的数字是FLASH的起始地址和大小,右边”IRAM1”后边填写的数字是RAM的起始地址和大小.第三项”Output”,产生目标文件的设置选项.该选项中可以设置目标文件的输出目录,目标文件的名称,勾选可选项的第二项,可以生成HEX文件,用来烧写芯片.第四项”Listing”,产生列表文件的配置选项.同样可以配置目录,和配置列表文件中输出的信息.该项设置不影响编译和调试.第五项”User”,用于用户配置一些命令,完成特定的功能.可以看到这个选项中一共分为三个部分.1编译C文件前的用于命令,2构建目标前的用户命令,3构建目标后的用户命令.下图中有两条用户命令,分别用于产生bin文件和TXT文件,使用的是fromelf命令.不使用该两项命令不会影响编译.bin 文件应该是烧写目标芯片用的,TXT文件用于输出相关编译信息,应该是高手研究代码效率用的.(两个文件的用处都是猜想,没有依据).fromelf.exe使用说明(更详细的请看相关的ARM文档)命令的格式为:fromelf [options] input_file命令选项如下:--help 显示帮助信息--vsn 显示版本信息--output file 输出文件(默认的输出为文本格式)--nodebug 在生成的映象中不包含调试信息--nolinkview 在生成的映象中不包含段的信息二进制输出格式:--bin 生成Plain Binary格式的文件--m32 生成Motorola 32位十六进制格式的文件--i32 生成Intel 32位十六进制格式的文件--vhx 面向字节的位十六进制格式的文件t--base addr 设置m32,i32格式文件的基地址--text 显示文本信息文本信息的标志-v 打印详细信息-a 打印数据地址(针对带调试信息的映象)-d 打印数据段的内容-e 打印表达式表print exception tables-f 打印消除虚函数的信息-g 打印调试表print debug tables-r 打印重定位信息-s 打印字符表-t 打印字符串表-y 打印动态段的内容-z 打印代码和数据大小的信-c 打印汇编代码.第六项” C/C++”,用于配置C编译时的代码优化.由于一直没有进行代码优化,对相关的功能也没有深入研究过,不多写了.说两点, 1. “√”的勾选项对代码大小影响极大,选择了编译结果5K多,不选择17K多;2.对于头文件不在项目目录及编译器目录下的头文件,需要进行头文件包含.第七项”ASM”,汇编选项.M0是Thumb指令集,应该勾选该选项!不过不选择也可以编译,编译后并可以运行,不知道选不选择有何区别,希望高手指点下!第九项”Debug”,选择调试工具,及相关配置.第十项,选择目标板Flash编程的工具.--------------------------------------------------------分割线-----------------------------------------------------半主机调试模式设置1.工程需要加入的文件,<retarget.c>,并且在该文件定义如下宏:#define DEBUG_ENABLE_SEMIHOST2.在启动文件<startup_NUC1xx.s>中修改第十行为:SEMIHOSTED SETL {TRUE}3.调试时,在工程中使用printf()函数就会输出信息到KEIL的调试串口窗口.效果如图,说明:我使用半主机调试模式,没有帖子里边写的那么复杂,可能因为新版本的原因!梦回唐朝(dwh000)2013-9-10。
GD32 Keil5工程创建步骤

第一步:安装DFP软件包(1)按照Keil uVision5, 步骤略。
我的keil版本如下:(2)下载GD3210X的DFP软件包。
下载地址:插件包下载完成后,有3个文件。
(3)安装DFP软件包。
双击.pack文件进行安装,如下图所示:点击next,将包文件复制到上面的路径位置。
如下图:GigaDevice文件夹就是安装好的软件包。
第二步:创建Keil工程(1)通常要新建3个文件夹。
如下图所示:(2)打开keil5,新建project.将工程文件放到Mdk-Arm目录下面。
弹出器件选择界面:在Device下拉框,选择Software Packs,选择GD32F103RB,点击OK接着弹出Mannage RTM界面,选中CMSIS的CORE和设备外围库文件,如下所示:点击OK,CMSIS工具自动添加库文件到./Mdk-Arm/RTE目录中,工程目录如下所示:(3)在Keil5中,打开文件管理界面:依次创建文件组:Application/Utilites/Documents(4)将main.c gd32f10x_it.c sysstick.c相关文件拷贝到userr文件夹,并添加到Application 文件组中。
(5)设置编译的头文件目录:将DFP包的CMSIS相关头文件路径都加进去,将RTE_Components.h配置头文件路径加进去。
如下图所示:Main文件内容如下:注意:(1)此项目是用MDK CMSIS配置工具建立的,CMSIS配置工具会自动将选用的标准库源码的C文件从Kiel5的DFP包标准库目录下拷贝到当前的项目中:./Mdk-Arm/RTE路径下,但是没有将头文件拷贝过来。
所以此项目的编译依赖实际的Keil5安装环境:没有安装DFP包或头文件目录跟工程设置的包含路径不对应的话,就会出现编译失败。
也就是说,将一个项目拷贝到另一台电脑时,编译可能失败。
(2)main.c/systick.c和gd32f10x_it.c是从例程中拷贝过来的.(3)头文件的前面出现感叹号,表示没有正确的引用。
Keil uVision2等软件使用

实验一 Keil uVision2等软件使用(2学时)一. 实验目的1. 熟悉Keil uVision2 软件的使用方法;2. 熟悉仿真器的用法;3. 熟悉烧录芯片的过程。
二. 实验设备1. Keil Keil uVision2 开发系统一台;2. +5V电源一台;3. 仿真器一条;4. 单片机实验仪一台。
三. 实验内容及步骤(一)Keil uVision2软件的实验步骤:1.点击桌面快捷图标,可以直接进入主画面:2. 新建的工程要起个与工程项目意义一致的名字,可以是中文名;我们这里的程序是实验测试程序,所以起的名字为 Test ,并将 Test 工程“保存”到C:\Keil下:3. Keil环境要求我们为 Test 工程选择一个单片机型号;我们选择 Atmel 公司的 89C51(虽然我们使用的是89S51,但由于89S51与89C51内、外部结构完全一样,所以这里依然选择“89C51”)。
“确定”后工程项目就算建立了。
4. 点击“文件”中的“新建”,新建一个空白文档;这个空白文档就是让我们编写单片机程序的场所。
在这里你可以进行编辑、修改等操作。
mov p0,#B ;将二进制代码送P0口ajmp $ ;程序在此原地踏步end ;程序结束标志5. 保存文件,保存文件时,其文件名最好与前面建立的工程名相同(当然这里为 Test 了),其扩展名必须为 .Asm!“文件名”中一定要写全,如:Test.Asm;6.将Asm文件添加到工程中。
具体做法如下:(见下图)鼠标右键点击“Source Group 1”,在弹出的菜单中选“增加文件到组Source Group 1”:在接下来出现的窗口中,选择“文件类型”为“Asm源文件(*.a*,*.src)”(由于我们使用的是汇编语言,所以选择Asm源文件),选中刚才保存的Test.Asm,按“Add”,再按“关闭”,文件就添加到了工程中。
7.设置目标属性:向工程添加了源文件后,鼠标右键点击“TarGet 1” ,在弹出的菜单中选“目标 Target 1 属性”,如下图:在打开的话框中,选择“输出”选项卡,在这个选项卡中,“E生成HEX文件”选项前要打勾,按“确定”退出。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2 课keil 软件及工程文件的建立
单片机系统设计主要包括硬件设计和软件设计,对于单片机初者来说主要在于软件的学习,也就是程序设计,等大家程序这块掌握得差不多了,再去结合具体的项目学习做硬件,最终掌握单片机系统设计的方法。
而在进行软件学习的时候需要用到单片机实验板进行实验验证,实验板建议直接购买,当然如果电子技术基础好的话,自己做板也是可以的。
这次教程开发程序所用到的软件为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进入。