版权声明:本文为博主原创文章,转载请附上原文出处链接。
前言
今天介绍下STC32G12K128开发板如何下载程序。
一、内容
本文档描述使用宏晶官方下载软件STC-ISP给艾克姆科技IK-STC32G12K开发板下载程序的方式。
二、开发板程序下载
1.关于HEX文件和BIN文件
单片机可被下载执行的文件常见有HEX文件和BIN文件,一般HEX文件是我们更常使用的文件,HEX文件可通过Keil软件编译生成。 下面介绍下HEX文件和BIN文件的区别。 1)HEX文件是包括地址信息的,而BIN文件只包括了数据本身。 2)烧写或下载HEX文件时,一般不需要用户指定地址(因为HEX文件内部已经包含了地址信息),而烧写BIN文件时需要用户指定烧录的地址信息。 3)HEX文件和BIN文件大小不同,HEX文件是用ASCII码来表示二进制的数值,BIN文件是最纯粹的二进制机器代码。例如8-BIT的二进制数值0x4E,用ASCII来表示就需要分别表示字符‘4’和字符‘E’,每个字符均需要一个字节,因此HEX文件至少需要2倍BIN文件的空间。
☆注:HEX文件都是由记录(RECORD)组成的。在HEX文件里面,每一行代表一个记录。记录的基本格式在此不做介绍。
艾克姆科技提供的开发板配套例程中,都会单独通过文件夹“HEX文件”的形式把对应实验的HEX文件提供出来,方便用户直接下载(不需要再使用Keil软件打开例程源码编译生成HEX文件了),并观察实验现象。 举例,按照路径“…\ 第4部分:配套例程源码(库函数版本)\1 - 基础实验程序\实验3-1-3:流水灯(带BSP文件)”打开后,可以看到下图所示文件,找到HEX文件。
图1:查找提供的HEX文件
2.使用Keil C251生成HEX文件
本节以“…\ 第4部分:配套例程源码(库函数版本)\1 - 基础实验程序\实验3-1-3:流水灯(带BSP文件)”为例,介绍下使用Keil C251生成HEX文件的方法和步骤。 1.双击打开Keil C251图标,如下图所示。
图2:Keil C251图标
2.点击Project,然后点击Open Project File,按照路径提示找到,“…\ 第4部分:配套例程源码(库函数版本)\1 - 基础实验程序\实验3-1-3:流水灯(带BSP文件)\ led_blinky\Project”文件夹中的led_blinky. uvproj文件,操作步骤如下图所示。
图3:Keil C251打开工程文件步骤
3.打开工程led_blinky后的界面如下图所示。
图4:Keil C251打开工程文件
根据下面操作进入HEX文件的生成配置界面,如下图所示步骤操作。
图5:配置Keil C251选项生成HEX文件
☆注:HEX文件生成路径设置为:“…\ 第4部分:配套例程源码(库函数版本)\1 - 基础实验程序\实验3-1-3:流水灯(带BSP文件)\ led_blinky \Project\Output”。
5.完成上述操作之后,回到主界面,按下图所示点击编译按钮生成HEX文件。
图6:编译Keil C251
☆注:编译后,注意观察信息窗口输出的信息,若输出信息提示无错误表示编译成功。如果编译报错,则不会生成HEX文件,此时必须先解决报错问题。
- Build按钮:增量编译,编译工程中上次修改的文件及其它依赖于这些修改过的文件的模块,同时重新链接生成可执行文件。如果工程之前没编译链接过,它会直接调用Rebuild
All。 - Rebuild按钮:全部重新编译。
6.按HEX文件生成路径打开文件夹Output,可看到HEX文件已生成,如下图所示。
图7:找到生成的HEX文件
3.使用stc-isp-15xx-v6.90D软件下载程序
STC官方针对STC单片机提供了专用的ISP下载软件,该软件版本会在官网上不断更新,STC官网:http://www.stcmcudata.com/ 开发板配套资料包里面已经下载好了stc-isp-15xx-v6.90D安装文件,安装文件的位置在开发板资料包的位于“…\第2部分:开发软件工具\ 2 - STC-ISP下载软件”目录下。 程序烧写的步骤包括配置STC-ISP软件参数、打开HEX文件和烧写,详细流程如下。
1.配置STC-ISP软件参数
打开STC-ISP软件,主要设置项目如下图所示。
图8:配置STC-ISP软件参数
1)选择单片机型号 开发板使用的单片机型号为STC32G12K128,所有这里应该选择STC32G12K128。 2)选择串口号 选择开发板USB转串口枚举的COM口,可以在电脑的设备管理器中查看。 3)设置晶振频率 这里是选择单片机内部时钟使用的,开发板例程是基于24MHz晶振频率来的,所以选择24MHz。若选择使用外部时钟时,除需软件配置相关寄存器外,还需焊接合适的外部晶振及负载电容(开发板预留有外部晶振焊盘和2个晶振负载电容焊盘)。 4)勾选“复位脚用做I/O口” 勾选后,单片机P5.4口会作为普通的IO口使用。单片机默认使用片内的复位电路,无需搭建外部复位电路的。而如果去掉该勾选项,单片机P5.4口则被使能为外部复位引脚,此时P5.4口不再是普通IO口,而对开发板再次下载程序就需要使用外部复位电路给P5.4复位引脚复位信号以实现下载。本开发板有外部复位电路,需短接开发板J9端子的RST与P54,实现外部复位下载。 5)勾选“每次下载前都重新装载目标文件” 勾选后,每次点击“下载/编程”按钮,STC-ISP软件会重新读取选定的HEX文件。这一条在开发的过程中一定要勾选,否则,当我们重新编译程序后,生产的HEX文件内容已经改变,但是下载时仍然下载的是STC-ISP软件缓存的HEX文件,而不是重新编译生产的HEX文件。
2.打开待下载的HEX文件
如下图所示,点击“打开程序文件”按钮,在弹出的窗口中导航到HEX文件目录,选中HEX文件后打开即可。
图9:打开待下载的HEX文件
3.烧写
点击STC-ISP软件上的“下载/编程”按钮,点击后,STC-ISP软件开始检测单片机,,这时,我们需要按一下开发板上的下载按键S1,启动下载。下载完成后,信息窗口会提示下载成功与否,如下图所示。
图10:下载
☆下载成功后,观察开发板,会看到指示灯D1、D2、D3、D4循环闪烁。
二、常见问题及解决办法
1.串口打开失败报错
故障现象:点击下载/编译后,弹出下图界面报错信息。
图11:下载报错界面,串口打开失败
☆注:从下面三个方面解决问题。
1)解决方法1:检查下USB线有没有连接上,有没有连接好。 2)解决办法2:检查下CH340的驱动有没有安装好。 3)解决办法3:检查下串口号选择是否正确,是否是连接到的开发板对应的串口号。
2.忘记打开目标文件报错
故障现象:点击下载/编译后,弹出以下报错信息。
图12:下载报错界面,缺少目标文件
3.单片机型号不对报错
故障现象:点击下载/编译后,单片机冷启动下载没有完成,弹出以下报错信息。
图13:下载报错界面,单片机型号选错
☆解决方法:重新添加选择单片机型号,务必注意添加新的单片机型号后,要点击“打开程序文件”按钮,将HEX文件重新选中。。
|