第1-2讲:搭建开发环境
表1:需要的工具软件
序号 |
软件工具 |
说明 |
1 |
Keil C51 9.52安装文件 |
Keil C51集成开发环境。 |
2 |
ch341ser驱动 |
USB最新驱动可到沁恒官网下载:www.wch.cn/downloads/CH341SER_EXE.html |
3 |
stc-isp-15xx-v6.90D软件 |
可到STC官网下载该软件最新安装包:www.stcmcudata.com |
Keil C51是美国Keil公司(该公司2005年被ARM公司收购)出品的51系列兼容单片机C语言软件开发系统。
与汇编相比,C语言在功能、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。Keil C51是支持8051微控制器体系结构的Keil开发工具,适合每个阶段的开发人员,不管是专业的应用工程师,还是刚学习嵌入式软件开发的学生。
扩展知识:Keil公司开发的ARM开发工具MDK(Microcontroller Development Kit),是用来开发基于ARM核的系列微控制器的嵌入式应用程序。
本文档中使用的Keil C51版本是9.52,打开后的主界面如图所示。
图1:Keil C51主界面
开发板配套资料包里面已经下载好了Keil C51安装文件,安装文件的位置在开发板资料包的“...\第2部分:开发软件工具\ 1 - KEIL C51安装软件”目录下。
图2:安装Keil C51
图3:勾选Keil C51安装协议
此处,可以根据自己的需要选择安装路径,本文档设置的默认安装路径是C:\Keil_51,即安装在C盘,(也可选择安装路径是D:\Keil_51或者其他盘)。
图4:添加Keil C51安装路径
图5:填写Keil C51安装信息
图6:Keil C51安装中
图7:Keil C51安装完后
开发板上设计了USB转TTL电路,使用的USB转串口芯片是CH340,使用前需要安装驱动。
CH340和CH341是共用同一个驱动的,因此看到驱动的名称是“CH341ser”时不用奇怪,按照下面的步骤安装即可。
图8:打开CH340驱动软件
用Type-C USB数据线将开发板J1连接到电脑的USB口,并将开发板上的电源开关拨到“ON”的位置,确认开发板的电源指示灯已经点亮后,再安装USB转串口驱动即可。
需要使用USB数据线连接电脑和开发板并打开开发板上的电源开关后才能查看。
选中“我的电脑”后右键打开属性窗口,再打开设备管理器,在设备管理器中查看CH340的端口号,如下图所示。
图9:设备管理器中查看CH340设备
STC-ISP-15xx是 STC(宏晶科技)针对STC单片机提供的专用的ISP下载软件, STC-ISP-15xx使用简便,并且集成了众多的实用工具,如串口调试助手、波特率和定时器计算工具等,现已被广泛使用。该软件版本会在STC官网上不断更新,用户后续可查看并下载最新版本,STC官网:STC: 32位 8051 单片机创新者, ISP/IAP 技术创新者,中华有为:除了胜利,我们已无路可走
STC-ISP-15xx是绿色软件,无需安装,解压后即可使用,但是我们需要使用STC-ISP-15xx软件将STC器件/头文件和仿真驱动添加到Keil,否则,Keil里面是找不到对应的芯片的,操作步骤如下。
图10:打开STC-ISP软件
图11:添加头文件和仿真设置
图12:添加头文件和仿真设置成功
在编写和调试程序的时候,我们经常会遇到需要注释代码块的情况(多行代码),这里我们给出两种常用的批量注释方法。
批量注释方法:先选中需要注释的代码,然后点击下图中红框内的按钮即可批量注释代码。
图13:批量注释
取消批量注释方法:先选中需要取消注释的代码,然后点击下图中红框内的按钮即可批量取消代码注释。
图14:批量取消注释
下图中使用条件编译命令“#if…endif”注释了36、37、38行这三行代码,如果要取消注释,把0改为1即可,这种方法简单快捷,在调试中很实用。
图15:使用条件编译命令注释代码块
浏览程序的时候,经常需要返回到上次浏览的位置或者前进到上次返回的位置,这时,可以使用下图所示的快捷按键。
图16:前进和返回
开发和调试程序时,经常需要查看一些变量或函数的定义,这时可以按照下图所示的方法跳转到变量或函数定义的位置,查看变量或函数。
图17:跳转到变量或函数定义位置
开发和调试程序时,查找功能是必不可少的,Keil C51中使用查找功能的步骤如下(以在整个工程中查找为例说明)。
图18:打开查找窗口
图19:查找窗口
图20:查找结果
m51文件将单片机存储器的使用情况以及变量的信息展示给开发人员,通过分析m51文件,开发人员可以了解,往往可帮忙解决许多棘手的问题。m51文件快递打开方法如下图所示。
图21:打开工程map文件
图22:提示信息
图23:编译报错
当我们在keil中选中函数或者变量右键跳转到定义的时候,弹出错误提示“无可用的浏览信息”,从而无法跳转,如下图所示。
图24:无法跳转到定义
原因主要有以下两个方面:
图25:点击魔术棒
在弹出的对话框中切换到output选项卡,之后勾选“Browse information”选项,勾选后需要重新编译工程。
使用Keil C51打开工程时,提示“Err:Device not found”,如下图所示。
图27:Err:Device not found
这是因为我们没有使用STC-ISP-15xx软件将STC器件/头文件和仿真驱动添加到Keil,按照下图所示,将STC器件/头文件和仿真驱动添加到Keil即可。
图28:添加头文件和仿真设置