Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
RT-Thread Studio
地址
rt-thread studio软件烧录地址设置问题,软件版本2.2.3
发布于 2022-05-10 10:05:35 浏览:1293
订阅该版
![image.png](https://oss-club.rt-thread.org/uploads/20220510/0038e0e6726d7b76530e69697f028ed3.png.webp) 我设置的烧录地址0x8000开始的,为什么,点下载都是从0擦写呢,设置没起作用? ![image.png](https://oss-club.rt-thread.org/uploads/20220510/b9886dff1530b4eb45b7b7fca4362b79.png.webp) 每次下载都把引导程序给擦掉了。麻烦老师门能够指导一下,多谢。
查看更多
lchnu
2022-05-10
Witness, Understand, Skill
除了改lds,还要在下载设置中修改一下。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/cc01b57b97a4717a4ac064fd35576231.png.webp) @wxfjog 我的这个截图来自你的帖子中的第一个图。 你没找到,是不是因为你正处于debug模式呀? 另外,我的设置中,是连上了jlink,你是用的哪个?st-link和jlink设置页面还不同。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/1f99fcb99ef00e1d928ee0265bf897f8.png.webp) @wxfjog 论坛的排版,不太友好,不知道为什么在其他楼层的回复在某一行显示不全,为了方便你查看,我就回答搬到本楼层处理了。 晚上折腾了一会儿,初步搞定你的boot被破坏的问题,但是还没有彻底完成,需要进一步研究。我改天再单独写一篇文章探讨一下。 使用ST Link, STM32L431。随便新建一个空白工程。具体过程描述: 1.擦除芯片。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/3cb42031eb52c3d4f1dee5fcbc782a44.png.webp) 2.修改lds,刻意偏移8KB。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/5bd584be8bd6bc1b0d99ca63fc60c067.png.webp) 3.查看map文件,编译后的.text段都被放在了0x08002000之后的地址。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/775318c58bd2132b7c87a01cfb61d2a3.png.webp) 4.下载程序,控制台log显示,下载到了0x08000000。 ```bash 开始下载程序:2022-05-10 23:09:51 C:\RT-ThreadStudio>cd /dC:\RT-ThreadStudio\repo\Extract\Debugger_Support_Packages\STMicroelectronics\ST-LINK_Debugger\1.6.0\tools\bin C:\RT-ThreadStudio\repo\Extract\Debugger_Support_Packages\STMicroelectronics\ST-LINK_Debugger\1.6.0\tools\bin>C:\RT-ThreadStudio\repo\Extract\Debugger_Support_Packages\STMicroelectronics\ST-LINK_Debugger\1.6.0\tools\bin\STM32_Programmer_CLI.exe -c port=SWD mode=NORMAL -d "C:\RT-ThreadStudio\workspace\L431Blank\Debug\rtthread.elf" -hardRst -s ------------------------------------------------------------------- STM32CubeProgrammer v2.7.0-RC1 ------------------------------------------------------------------- ST-LINK SN : 52FF6D064988535119472487 ST-LINK FW : V2J37S7 Board : -- Voltage : 3.24V SWD freq : 4000 KHz Connect mode: Normal Reset mode : Software reset Device ID : 0x435 Revision ID : Rev Z Device name : STM32L43xxx/STM32L44xxx Flash size : 256 KBytes Device type : MCU Device CPU : Cortex-M4 Memory Programming ... Opening and parsing file: rtthread.elf File : rtthread.elf Size : 64760 Bytes Address : 0x08000000 Erasing memory corresponding to segment 0: Erasing internal memory sectors [0 31] Download in Progress: Progress: 69% Progress: 100% File download complete Time elapsed during download operation: 00:00:02.218 Error: Unable to reset MCU! RUNNING Program ... Address: : 0x8000000 Warning: The core is locked up Start operation achieved successfully 在debug configration中将reset mode由默认的“hardware reset”改为“system reset” 执行完毕, 耗时:2421ms. ``` 5.打开CubeProgrammer确认。 - `0x08000000`处被写入了一些ELF内容,且填充了0x00,直到0x08002000。 - `0x08002000`写入了.text内容。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/dfee4426049245b13a00d8cfb5aea693.png.webp) ![image.png](https://oss-club.rt-thread.org/uploads/20220510/85af2df0711572c99dbe937b7cec74d7.png.webp) 6.使用readelf工具查看rtthread.elf的Program Header,还是会出现0x08000000 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/89e9c39e3be0ce4c3c3b9ed25591a998.png) 进一步再经过测试,`能解决你的boot被破坏的问题。但是会带来新的问题,即,lds中设置的偏移量,必须保证0x08xx 0000的形式才可以,否则依然会出现boot被破坏的问题。` 1.再次修改lds,保证ROM的地址的后四位一定是0000,即`0x08xx 0000`的形式 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/436684785ef1961ecdf62a1f5d64acdb.png.webp) 2.生成elf文件,并查看programer header,无误。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/09d4bb7bb427dd791deb1a13cf08e97e.png) 3.下载程序,提示下载到了`0x08010000`。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/2d934b6346af7f29f88899c9e01e158a.png.webp) 4.打开Programer确认,0x08000000开始的内容没有被更改,且`0x08010000`的内容是正确的。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/2fc65db6310c487269acfd40cb9e8597.png.webp) ![image.png](https://oss-club.rt-thread.org/uploads/20220510/a312e19a932786c3c29ac3503768f127.png.webp) `形成如下观点:` - 我尝试了很久,无法修改rt studio使用st-link方式下载bin文件。rt studio调用st cli下载,理论上可以修改参数,但是,在下图中添加的参数,都放在了下载命令的`-d`之前,我还没有搞定。 ![image.png](https://oss-club.rt-thread.org/uploads/20220510/a9cfef8ee697f99b915511d625c9fa01.png) - 我认为目前,studio在link过程中生成的elf文件有一定的问题,具体表现形式在前文已经说过了,还需要进一步研究最后一步link的参数,以及与官方团队进一步沟通。
2
个回答
默认排序
按发布时间排序
小小李sunny
2022-05-10
这家伙很懒,什么也没写!
修改烧录地址后,清理一下工程,再重新编译试试呢
撰写答案
登录
注册新账号
关注者
0
被浏览
1.3k
关于作者
wxfjog
这家伙很懒,什么也没写!
提问
16
回答
12
被采纳
3
关注TA
发私信
相关问题
1
rt_thread studio 啥时候能用呢
2
RT_Thread使用反馈帖子
3
RTT studio 下的 AT指令问题。
4
什么时候RTT Sdudio支持Ubuntu,Deepin和UOS操作系统
5
rt thread Studio 关于J-LINK下载问题
6
RT-Thread studio 调试设置问题
7
RTT-Studio 如何设置调试配置参数?
8
rt_thread studio 软件包配置
9
RT-Studio目前只能开发STM32的项目吗?
10
rtt studio 生成hex名字修改
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
使用百度AI助手辅助编写一个rt-thread下的ONVIF设备发现功能的功能代码
2
RT-Thread 发布 EtherKit开源以太网硬件!
3
rt-thread使用cherryusb实现虚拟串口
4
《C++20 图形界面程序:速度与渲染效率的双重优化秘籍》
5
《原子操作:程序世界里的“最小魔法单位”解析》
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
ota在线升级
UART
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
at_device
ulog
C++_cpp
本月问答贡献
踩姑娘的小蘑菇
7
个答案
3
次被采纳
张世争
8
个答案
2
次被采纳
rv666
5
个答案
2
次被采纳
用户名由3_15位
11
个答案
1
次被采纳
KunYi
6
个答案
1
次被采纳
本月文章贡献
程序员阿伟
6
篇文章
2
次点赞
hhart
3
篇文章
4
次点赞
大龄码农
1
篇文章
2
次点赞
ThinkCode
1
篇文章
1
次点赞
Betrayer
1
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部