keil mdk 学习stm32f103C8 IAP笔记

1. 在学习stm32f103的IAP编程时候,需要生成bin文件,若需要还要生成反汇编文件,可在keil mdk进行如下设置

生成bin文件填入:fromelf.exe --bin -o "$L@L.bin" "#L"

生成反汇编文件填入:fromelf.exe --text -a -c --output=@L_asm.txt "!L"

 

2. 若要将代码片段(不是完整的程序)编译产生bin文件,供iap下载用,还需修改分散加载文件(*.sct)进行如下设置

保存后按F7编译

 

3. Hex和bin文件的区别:

HEX文件是文本文件,包含了很多烧写记录,每条烧写记录为一行,包括烧写的位置和烧写的内容,用ASCII十六进制表示,文件比bin文件大。

BIN文件就是直接的二进制文件,内部没有地址标记。用烧写时必须制定烧写位置

 

4. 对stm32f103c8内部Flash进行烧写前,需要进行擦除操作,擦除后所有字节的数据都为0xFF,烧写过程则是将所需的bit位由1改写为0的过程,只有擦除操作能把0置位为1,所以擦除操作必不可少。为了烧写是按半字(halfword,16位)来进行的,一个比较实用的方法是,判断将要写入的半字的位置是否为为一页的起始(地址对1024求模等于0),若是则擦除这一页。也可先读出需要烧写的区域,判断是否都为0xFF,若是不急进行擦除即可写入。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值