创建可烧写HEX文件方法
- 格式:pdf
- 大小:112.88 KB
- 文档页数:2
1. 关于hex文件的产生方法:在STVD下如何产生HEX文件,在STVD的Project -> Setting -> Post-Build Commands 栏内添加: chex -fi -o $(OutputPath)$(T argetSName).hex $(OutputPath)$(TargetSName).sm82. 将memory models选择mods或modsl应用注意:使用的是STVD自动生成的stm8_interrupt_vector.c文件时,在使用modsl模式编译时,必须将extern void _stext(); /* startup routine */ 这句改为extern @near void _stext(); /* startup routine */ 需要增加@near 关键字。
程序大于32k后,要把const数据,main还有中断函数等定位到32k(地址64k)以内,不然程序会跑飞,而且编译链接的时候也不会报错。
3. 仿真调试利用STM8小板上的3个LED灯,了解仿真环境。
利用建好的环境,修改main.c文件,修改后的如下#i nclude "STM8S207R.h"void main(void){_asm("sim");PD_DDR |= 0x0D;PD_CR1 |= 0x0D;PD_CR2 = 0x00;_asm("nop");PD_ODR |=0x01;_asm("nop");PD_ODR |=0x04;_asm("nop");PD_ODR |=0x08;_asm("nop");PD_ODR &=~0x0D;_asm("nop");_asm("rim");while(1);}把 STM8S207R.h 文件放在建好的工程目录下,与main.c文件在用一个目录下。
1、在桌面找到图标点击打开如图界面
2、点击菜单栏上的options,再点击“Project settings…”,进行烧写前的必要设置,如下图:
(1)在“General”页,选择“USB”,如下图:
(2)在“Target Interface”页,选择“JTAG”,JTAG速度设置为“Auto selection”,如下图
(3)在“CPU”页,选择开发板的CPU型号:ST STM32F205RG,如下图:
(4)“FLASH”页不用设置,默认设置就可以了。
(5)在“Production”页,我们把“Start application”选上,则在下载成功之
后,程序会自动运行。
(6)在设置完成后,我们点击“应用”和“确定”退出。
在JLINK软件界面左边,将显示烧写信息,如下图:
3、点击“Target”后,再点击“Connect”,开始连接:
连接成功会有提示信息,如下边的状态拦:
如图:
5、加载完成后,点击“Target”点击“Auto”进行烧录:
6、烧写成功!如下图:
点击确定,完成程序烧写!。
五、应用软件调试程
1、建立一个新工程单击Project菜单,在弹出的下拉菜单中选中New Project 选项
2、然后选择你要保存的路径,输入工程文件的名字,比如保存到C51目录里,工程文件的名字为C51,然后点击保存.
3、这时会弹出一个对话框,要求你选择单片机的型号.我这里用Atmel 的89c52,选择89c52之后,右边一栏是对这个单片机的基本的说明,然后点击确定.
4、单击“File”菜单,再在下拉菜单中单击“New”选项然后把上面的程序复制到这个新建文件里,以1fengzhong.ASM为扩展名保存。
5、然后单击“Add File to Group ‘Source Group 1’”
6、选中1fengzhong.asm,然后单击“Add”在“Source Group 1”文件夹中多了一个子项“1fengzhong.asm”
7、单击“Project”菜单,再在下拉菜单中单击“option for target“target1”选项,在弹出的对话框中单击“OUT PUT”选项,在create executable和create hex 这两个选项中打勾。
8、译成功退出KEILC。
9、运行STC,单击Open File选项,找到用Keil C 生成的“1fengzhong.hex”文件,串口选用COM1,其他设置默认。
10、连接好小信号系统板与电脑之间的连线,接好小信号系统板的电源(5V)此时不通电。
11、单击STC的“Download”键,然后接通小信号系统板电源。
1、打开Jlink烧写软件:
烧写硬件应加隔离电源,否者会有触电和烧毁硬件的危险
方法:所以程序里面找到SEGGER文件,打开SEGGER->J-link V5.4>J-Flash 2、界面如下
3、Option->Project settings,如下所示
选中第二项Target Interface 若使用JTAG模式选中JTAG,若是SWD模式选中SWD模式,我们使用的是SWD模式,Auto selection。
如下图所示:点击确认
4、打开Option->Project settings选中第三项CPU,如下图所示,选择对应的芯片,我们选择如图的芯片,点击确定
5打开要烧写的hex或者bin文件,File->Open data file如图所示
6、连接到目标板上Target ->connect,连接成功如下所示:
7、Target ->Program或者F5烧写程序,确定
8、烧写成功。
J-Flash烧写Hex使用说明1.1 打开烧写软件使用软件进行烧写HEX文件,没有的话可以安装这个软件,软件目录如下:...\智能嵌入式系统应用创新实训平台-刻盘资料\04-环境搭建\STM32环境搭建\JLINK\J-Link烧写软件\Setup_JLinkARM_V478j。
软件安装请参考附录I。
安装完成之后在开始菜单栏中选择-> 所有程序-> SEGGER -> JLinkARM_V478j-> J-Flash软件,点击打开,如果已有工程直接点击打开之前的工程如图1.1.1所示:图1.1.1 打开J-Flash工程如果没有使用过这个软件,则可以参考官方提供的参考文件打开,参考图1.1.2中顺序,添加文件,注意我们使用的是ST公司单片机,所以路径需要进到子目录“ST”下,选择相应型号的.Jflash文件这里以STM32F103VC系列为例:如图1.1.2所示:图1.1.2 打开官方提供的工程文件点击“打开”,完成文件添加,点击“Start J-Flash”,在弹出的保存界面中直接点击“保存”即可,如图1.1.3所示。
图1.1.3 保存文件1.2 打开烧写文件使用J-Link仿真器20P连接线连接到JTAG-SWD转接板上,同时使用6P 排线连接到目标板“SWD”接口上。
打开烧写软件,加载烧写文件(菜单栏File -> Open Data File),在这里以通讯显示板为例,文件位于:..\智能嵌入式系统应用创新实训平台-刻盘资料\05-底层参考代码\3-小车通讯显示板HEX。
请以最新日期为准。
如图1.2.1所示:图1.2.1 加载烧写hex文件1.3 执行烧写文件软件打开连接到目标板(菜单栏Target ->Connect),如图1.3.1所示。
当正确连接时,“Connect”为灰色不可操作,而“Disconnect”则可以操作。
如图1.3.2所示。
图1.3.1 连接控制板图1.3.2 连接成功擦除芯片内存(Target -> Erase chip),如图1.3.3所示。
1. keil编译生成hex文件大小与单片机内的flash空间大小没有完全绝对的关系2. HEX 文件的大小,不是最终的代码大小, 一般实际要更小一些. 如果有兴趣研究,可以下载一下叫做 hex2bin 的小程序,可以把hex转换为bin3. Intel hex 文件格式:Intel hex 文件常用来保存单片机或其他处理器的目标程序代码。
它保存物理程序存储区中的目标代码映象。
一般的编程器都支持这种格式。
Intel hex 文件全部由可打印的ASCII字符组成(可以用记事本打开),如下例所示::2000000012014c75a800e4f508f509780a7a78e4f608dafcd283fcfded240af9a705 0dbd81:2000200000010ced2488ec34ff50edc283e4fcfded240af9e76d7013ed33e43c700d 0dbd2a:2000400000010ced2488ec34ff50e50509e50970020508e50924a8e50834fd50aee4 f50874Intel hex 由一条或多条记录组成,每条记录都由一个冒号“:”打头,其格式如下::CCAAAARR...ZZ其中:CC 本条记录中的数据字节数AAAA 本条记录中的数据在存储区中的起始地址RR 记录类型:00 数据记录 (data record)01 结束记录 (end record)02 段记录 (paragraph record)03 转移地址记录 (transfer address record)... 数据域ZZ 数据域校验和Intel hex文件记录中的数字都是16进制格式,两个16进制数字代表一个字节。
CC域是数据域中的实际字节数,地址、记录类型和校验和域没有计算在内。
校验和是取记录中从数据字节计数域(CC)到数据域(...)最后一个字节的所有字节总和的2的补码。
1、在桌面找到图标点击打开如图界面
2、点击菜单栏上的options,再点击“Project settings…”,进行烧写前的必要设置,如下图:
(1)在“General”页,选择“USB”,如下图:
(2)在“Target Interface”页,选择“JTAG”,JTAG速度设置为“Auto selection”,如下图
(3)在“CPU”页,选择开发板的CPU型号:ST STM32F205RG,如下图:
(4)“FLASH”页不用设置,默认设置就可以了。
(5)在“Production”页,我们把“Start application”选上,则在下载成功之后,程序会自动运行。
(6)在设置完成后,我们点击“应用”和“确定”退出。
在JLINK软件界面左边,将显示烧写信息,如下图:
3、点击“Target”后,再点击“Connect”,开始连接:连接成功会有提示信息,如下边的状态拦:
4、接着,点击“File”,点击“open data file...”打开烧录的HEX(BIN)文件,如图:
5、加载完成后,点击“Target”点击“Auto”进行烧录:
6、烧写成功!如下图:
点击确定,完成程序烧写!。
CC2530烧录hex 说明一、 第一次运行1. 安装SmartRFProg.exe (1.10.2.0),该软件位于“\EMRFID-ZHJX-1 RFID 综合教学平台发货光盘\相关软件\SmartRF Flash Programmer ”;安装好以后最好能够重启一次PC :2. 将USB 线一端插入仿真器,另一端连接电脑。
再将miniUSB 线一端连接CC Debugger ,另一端连接到底板miniUSB 接口上。
如下图3. 当第一次使用CC_Debugger 仿真器时,Windows 操作系统会提检测到新硬件,驱动放在”<光盘>\相关软件\仿真器驱动“目录下,完成该驱动安装。
如下图:如下图所示将EMIOT-WGB-1网关板或EMIOT-DC-1电池板的线缆连接好,并且把开关都打开:4. 由于将底板接入了PC 的USB 口,此时PC 会检测到一个新的硬件,如下图,记下端口号(例COM3):5. 烧写hex 文件:a) 打开桌面的“SmartRF Flash Programmer ”程序,此时,该程序会显示已连接上节点b) 在Flash image 位置导入需要烧写的hex 文件,文件在“\EMRFID-ZHJX-1 RFID综合教学平台发货光盘 中大\测试hex 及测试说明\Z-Stack 实验hex(温湿度+IIC 与STM32通讯)”目录下。
c) 按下“Perform actions ”按钮,进行烧写6. hex 文件说明:a ) 做“无线传感器网络实验—温湿度传感器”时,将CollectorEB_PRO.hex 烧入EMIOT-WGB-1网关板、将EMS_WSD_1_PRO.hex 烧入EMIOT-DC-1电池板。
b ) 做“通过IIC 与STM32芯片通讯,将STM32传回的信息发送给网关板实验”时,将CollectorEB_RFID_ PRO .hex 烧入EMIOT-WGB-1网关板、将EMS_RFID_1_PRO.hex 烧入EMIOT-DC-1电池板。
程序工程文件烧写说明程序工程烧写步骤如下:一:打开烧写程序软件(启动MPLAB IDE);打开电脑“开始菜单”,点击“所有程序”找到“Microchip”,点击下面的“MPLAB IDE”项启动烧写程序工程软件。
具体步骤如下图:打开“开始菜单”打开“所有程序”找到“Microchip”项选择下面“”开启烧写程序;备注:也可直接双击电脑桌面上的MPLAB IDE快捷图标来打开烧写程序;如下图:桌面MPLAB IDE图标二:导入烧写程序文件;需要烧写的文件只有两个以扩展名为:.hex与.cof文件,首先找到这两个工程文件所保存的目录,然后点击MPLAB IDE中的“File”菜单项,打开“File”菜单项并选择下面“Import…”项,在弹出的对话框界面中查找范围项中选择找到“hex/cof”两文件所在目录,找到文件之后,在对话框显示文件方框中用鼠标左击选中一个文件(因有两个文件,所以要操作两次导入,一次选一个文件),选中后点击下面“打开”按钮。
具体图形操作步骤如下图:找到“File”菜单项下面的“Import..”项,如上图中红线所标处;备注:点击“Import…”后,会自动弹出一对话框界面;如下图;添加导入文件对话框图点击弹出对话框界面中查找范围下拉框,找到烧写文件所在目录;如下图;显示烧写文件如下图;烧写文件扩展名为:.cof与.hex两文件如上图备注:选中期中一个烧写文件后,点击对话框中“打开”把文件导入到工程中;具体如下图:导入文件后,Output提示框中有导入信息提示,如上图红线所标处;Hex与cof文件都导入工程后,如上图;三:MPLAB IDE配置说明把烧写导入到MPLAB IDE后,就可以进行烧写配置;烧写配置主要是配置两大项:一是烧写方式、一是烧写参数配置;具体烧写配置步骤如下:1:首先打开菜单项“Programmer”项,在下拉菜单项点击“Select Programmer”项,系统会自动弹出一下拉菜单项,选择期中“2 MPLAB ICD 2”项;2:打开菜单项“Configure”项,在其下拉菜单项选择“Select Device…”项,然后在弹出对话框中上面“Device”下拉框中选择“dsPIC30F6014”,再点击对话框中“OK”按钮;3: 然后再打开菜单“Configure”项,在其下拉菜单项中选择“Configuration Bits…”项,系统会自启弹出一配置对话框,在弹出对话框界面顶部找到“Configuration Bits set in code”并去掉前面的”√”,在其对话框中配置“Setting”项从上往下中二、三、六项,二项选择“Primary Oscillator”,三项选择“XT w/PLL 8x”项,六项选择“1:7”项,配置完后,把“Configuration Bits set in code”项前面方框中打上”√”;到这里整个配置就已经完成,下面接着就是烧写程序。
烧写hex文件到CC2430的办法
1、打开SmartRF Flash Programmer软件
2、选择System-on-Chip选卡,如下图
3、各项设置如下图
各选项介绍:
1——System-on-Chip选项卡被用来编程TI的片上系统,其它选卡可不考虑与CC2430实验无关2——Read IEEE读出CC2430片上系统的64位物理地址
3——Write IEEE写入CC2430片上系统的64位物理地址,用户可自定义,但是整个应用网络不能有重复的地址。
4——选择要烧写的HEX文件位置。
5——勾选此项是防止烧写HEX文件时IEEE地址改变
6——执行此动作将擦除所选定片上系统的FLASH存储器然后用4中选择的HEX文件对FLASH存储器编程,但是编程后FLASH的内容将被读回与.hex文件比对,这样将检测出编程错误或由于FLASH损坏而导致的错误。
因此,建议编程时选择此项。
如果对此软件功能不够了解请慎用其它项。
7——FLASH锁定功能,建议不要对其做设置。
4、设置完毕点8所指的按钮将会执行对片上系统编程命令。