J-Flash

        J-Flash是个人电脑上运行一款独立的编程软件(J-Flash is a stand-alone flash programming software for PCs running Windows, Linux or macOS)。J-Flash需要配合J-Linker才能对目标设备进行编程操作,详细描述见UM08003 JFlash - SEGGER Knowledge Base。J-Linker绿灯亮起时正常工作;红灯亮起时,连接出现问题,详细描述见下链接。UM08001 J-Link / J-Trace User Guide - SEGGER Knowledge Base

使用Jlink时,我目前是连接VCC,GND,Test,DIO,CLK(电源,地,Test接GND,DIO数据输入输出口,CLK时钟引脚)5个引脚。使用SWD(盗版J-linker)的时候,没有Test引脚。

擦除与写入(erase&programming)

        初学者注意,J-Flash执行Connect操作,连接开发板后,程序不能正常工作。jflash的擦除和写入以芯片或者扇区为单位,扇区擦除/写入的影响区域由J-Flash的flash配置决定。默认情况下,J-Flash的扇区擦除,会擦除当前程序所在的扇区,如果你的程序不区分启动程序和用户程序,占据所有可用扇区,那么扇区擦除和芯片擦除的效果是一样的。如果要进行指定扇区擦除。option->project seting->flash选项卡,配置需要擦除的扇区。连接成功后,target->manual programing->erase sectors,即可完成扇区擦除。写入的时候,可以通过target->Production Programming选项卡,快速完成程序写入,比target->manual programming->program verify选项卡省时间些。写入程序后,要进行target->Manual Programming->Start Application(F9)操作或者重新上电,否则程序也不会运行。

Note:如果你的程序区分启动程序和用户程序,你使用全部擦除,却只写入用户程序 / 启动程序,恭喜你,你会遇到新问题。

        下面两张图给出了指定扇区的范围,默认是全部区域。但两款芯片Flash区域有些微的差距,STM32L431的程序起始地址为0x8000000,HT7036芯片起始地址为0x0000000

读出(readback)

        通过J-Flash,用户还可以将MCU内部存储的程序读出。说来惭愧,本人二把刀,之前帮未来老婆调程序,她一直担心把原有的程序搞坏了。要是知道可以先读出来,就没这担心了。但是,使用读出操作的时候,记得使用Entire chip选项,把所有程序都读出来。不然,如果只读出应用程序或者启动程序尴尬了。

        有时候无法写入的时候,记得重新插拔J-linker。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值