IAR中编写STM8的程序,但是用STlink一直无法下载,一直出现以下两个问题,请问怎么解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IAR中编写STM8的程序,但是用STlink一直无法下载,一直出现以下两个问题,请问怎么解决相关的知识,希望对你有一定的参考价值。

Thu Apr 02, 2015 21:33:31: Failed to write chunk with size 128 at address 0x8000: SWIM PROG error [42004]: Memory write error
Thu Apr 02, 2015 21:33:31: Failed to load debugee: C:\Users\Hello GY\Desktop\练习\Debug\Exe\练习.out

ST-LINK的设置选项设置如下就可以了:

参考技术A 我猜测, 应该是两个方向,
1. STlink还没有跟STM正确的连上, 硬件上的通讯异常.
2. 配置错误, 导致无法正确的写入. 选型? 参数?追问

硬件应该没问题,对应的排针有相同的名字,选型就是选择芯片型号吧,应该也没问题,参数在哪里调节呢,另外STlink的晶振频率和芯片所在板子上的晶振频率不相同会影响吗?

参考技术B 楼主解决了没有,我最近也遇到这个问题,求解答。。

在keil uvision(RVMDK)下使用stlink断点调试教程

楼猪本来是用JTAG用来下载和调试stm32的程序的,由于JTAG是D版(你懂的),官方有升级时手贱点了升级,JTAG就变砖了。后来发现用于STM8下载调试用的STLink还可以用来调试stm32,楼猪买的是20多块钱的STLINK,X宝买的,号称可以使用官方固件,于是就有了这篇文章:

首先声明,楼猪用的是win 10 64位,keil uvision是4.74版

1、当然是安装stlink的驱动,楼猪的stlink虽然号称是V2版,但实际上应该不是V2版,因为不能使用JTAG模式来调试,只能使用SW模式

插入硬件后设备管理器会有stlink显示

2、keil uvision中的设置

4.7版本已经不需要将tools.ini覆盖了,设置如下图就可以了,下载器列表有两个st link的话,选择设置选项较多的一个吧;另外一个据说是D版专用的

3、stlink如何接入JTAG接口说明:

stlink接入stm32只要接入三根线就可以了

SWCLK  SWDAT  GND
接线如下图所示:

图中J1的左侧就是有JTAG硬件接口中有缺口的位置

4、如果做完上述步骤还不能进行调试(例如可以下载,但程序不能断点调试,不能跑进main函数等问题),你就要留意stm32的Boot0和Boot1管脚了

在每个STM32的芯片上都有两个管脚BOOT0和BOOT1, 
这两个管脚在芯片复位时的电平状态决定了芯片复位后从哪个区域开始执行程序,见下表:  
BOOT1=x   BOOT0=0   从用户闪存启动,这是正常的工作模式。 
BOOT1=0   BOOT0=1   从系统存储器启动,这种模式启动的程序功能由厂家设置。 

BOOT1=1   BOOT0=1   从内置SRAM启动,这种模式可以用于调试。

也就是说,如果要调试,要将BOOT1接地,BOOT0上拉,但楼猪自己测试的情况是只要将BOOT0上拉就行,如下图:

 

如果以上步骤做完还是不行,那可能是楼猪使用的硬件,或者keil uvision的生成设置与你的不一致造成的,请大家再继续钻研了。


 

以上是关于IAR中编写STM8的程序,但是用STlink一直无法下载,一直出现以下两个问题,请问怎么解决的主要内容,如果未能解决你的问题,请参考以下文章

开发工具之IAR新建STM8工程

STM8编程有啥软件,调试下载用啥软件,烧录用啥工具,大概价位是多少!新手想学STM8

如何通过JLINK烧写STM32程序

IAR EWARM7.2下,STLink V2调试stm32f103开发板,能下载程序,但是不能断点

iar添加驱动stlink

本人正在学习stm8,使用IAR编程,求代码把蜂鸣器弄响