你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

外扩Flash程序如何在线调试?

[复制链接]
xiang90721 提问时间:2017-7-21 20:12 /
悬赏5ST金币已解决
板子是官方stm32f746-discovery开发板,现在的程序是越来越大,内置Flash已经无法容纳,只能使用STM32 ST-LINK Utility工具烧录,我想问问,烧录后的程序该如何在线调试?使用mdk调试就是各种错误,求大神解答,谢谢!


请问你们是怎么调试这样的程序的呢?

最佳答案

查看完整内容

没有stm32f746板子,看了手册,跟之前的M3、M4大不一样呀。 首先是配置boot模式,两种模式在里面又都是可编程的,编程地址最小间隔16K。这两种模式可以随意设置,最初默认是ITCM-FLASH和system memory bootoader。 地址属于FLASH Option bytes,具体怎么用,得按下面套路来 所谓boot,就是复位后从哪开始运行bootloader程序,一般只能是nor flash。 那么想用NAND Flash跑程序怎么办,先从nor flash或内部flash boot ...
收藏 1 评论3 发布时间:2017-7-21 20:12

举报

3个回答
toofree 回答时间:2017-7-21 20:12:25
本帖最后由 toofree 于 2018-4-18 11:32 编辑

没有stm32f746板子,看了手册,跟之前的M3、M4大不一样呀。

首先是配置boot模式,两种模式在里面又都是可编程的,编程地址最小间隔16K。这两种模式可以随意设置,最初默认是ITCM-FLASH和system memory bootoader。
傲游截图20180418105747.png


傲游截图20180418105833.png


傲游截图20180418110009.png


傲游截图20180418110055.png

地址属于FLASH Option bytes,具体怎么用,得按下面套路来
傲游截图20180418110304.png

所谓boot,就是复位后从哪开始运行bootloader程序,一般只能是nor flash。
那么想用NAND Flash跑程序怎么办,先从nor flash或内部flash boot起来,然后配置要跑程序的NAND Flash,配置完成NAND Flash的地址就映射到了MCU寻址区,读的时候就像读取ram,具体时序怎么做不用管。在NAND Flash中存放的程序,必须是完整的程序,也就是包含中断向量表,main等,反正就是在keil中指定ROM地址后,直接编译完的程序目标文件就是。(之前在用DSP的时候,由于内部空间非常少,内部只够存个boot程序,必须二次boot到外部flash。)
如果BOOT_ADDx映射到nor flash地址,那么boot都省了,直接跑。

以上是我是stm32f7的一点理解。



评分

参与人数 1蝴蝶豆 +4 收起 理由
zero99 + 4

查看全部评分

maxtch 回答时间:2018-4-18 09:01:46
如果编译器是 GCC,可以用 GDB 来调试。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

x5y4z3 回答时间:2018-4-18 11:10:54
不知可否能找个  J...Link  来在 MDK 上调试?!

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版