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

在使用中STM32MCU时遇到的一些问题笔记

[复制链接]
jundao721 发布时间:2023-10-6 22:27
假期回来,翻到以前在使用MCU时记录的遇到的问题文档,想来简单做一下分享。
% \5 A) ]7 P: m2 s4 r  [5 Q
    1. 在使用CubeMX 生成STM32F03C8T6的code后,调试的时候,会提示“ JLink Info: CPU could not behalted”
9 Y/ x. K# [  _, u0 L( a
     这个问题提的解决方案是:HAL_MspInit()中的_HAL_AFIO_REMAP_SWJ_DISABEL;注释掉,换成_HAL_AFIO_REMAP_SWJ_NOJTAG();
4 o5 C& ^( w0 P# R7 Y
     2. STM32 自锁如何解锁?调试的过程中会提示 “No Cortex-M SW Device Found”

% s/ ]. K5 A- s" h. b
          首先看一下MCU的启动模式:

7 a' T& l: Z% J" i& o; K/ s% C
          boot图.png
+ l9 j+ X7 N. H! j" s+ a0 k1 H' V6 R" D( F( j9 E4 }
          简单的说,正常的芯片自锁,就是将Flash存储进行读写保护,使得不能运行程序。而我们的做法就是将Boot0置高,使程序从系统

# U& z  ^8 i$ w# T- N0 }9 P5 X( C6 e
存储器启动,找到芯片之后,重新往Flash 中下载一个正常代码,比如点灯程序,之后再换回Flash启动,芯片即可完成解锁。

7 O8 ?# u3 X  o9 H  L
  3. M系列使用的Flash是FLM,ARM7/ARM9使用的是flx。
# O6 x% z. b. S: k
  4. 使用STM32生成指定数目的脉冲个数

4 H; A5 U9 H" m, D
   STM32重复计数器,TIMx_RCR,当它的值是个非0值N时,计数器不再每次溢出时产生更新事件,而是当发生N+1次溢出时才产生更新事
' m" {0 v/ V: [
件。如果RCR=0时,就是每次溢出都产生更新事件,那么当把单脉冲输出模式与RCR寄存器配合使用,就不难生成指定数目的脉冲个数。

$ h( {! T4 |( D$ N
此时脉冲个数为TIMx_RCR的值加1。
6 [! S2 E" f$ [2 }* k# R2 M: T
5. STM32上移植u8g2
; a1 G# \7 x! i8 I5 Z
  移植完编译的时候,会遇到Error6406E类错误,提示“No space in execution regions”。应该时RAM溢出1.在keil option里面的
1 ^: j1 i/ L* h$ h3 H
编译优化选项,从level0调高到level1或2.将比较大的函数挂在数组定义成const,也就是放到flash里面。
  
6. keil5 中jlink选择芯片时,选错了Core怎么办?

9 p6 I2 g, u4 G5 l/ h4 Y7 Q$ Z
  如果选错了,会出现Core flash失败。在项目文件夹中,删掉JlinkLog.txt和JlinkSettings.ini即可,然后在弹出的界面中重新选

+ `. o: }" h+ T# g/ P1 ^1 \
择Core。
" O, p3 s! c  w3 r9 ]9 p6 K
8 D5 t3 h8 d9 C1 X
收藏 评论1 发布时间:2023-10-6 22:27

举报

1个回答
刘EE 回答时间:2023-10-7 15:19:21

您好。我是北京XXXX刘工,我司是MCU原厂,目前主推的103系列跟ST、GD、极海跟雅特力等都是pin to pin使用的。我司103系列主频216Mhz,Flash最高达1024KB,RAM为96KB。价格能排进全国前三。还可提供技术支持,做到保姆式服务。

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版