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

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

[复制链接]
jundao721 发布时间:2023-10-6 22:27
假期回来,翻到以前在使用MCU时记录的遇到的问题文档,想来简单做一下分享。

2 M, ?+ v6 ~& S+ ~. p
    1. 在使用CubeMX 生成STM32F03C8T6的code后,调试的时候,会提示“ JLink Info: CPU could not behalted”

0 D3 t; B! y* @) Y! A
     这个问题提的解决方案是:HAL_MspInit()中的_HAL_AFIO_REMAP_SWJ_DISABEL;注释掉,换成_HAL_AFIO_REMAP_SWJ_NOJTAG();

# o5 d7 p' o& d8 u
     2. STM32 自锁如何解锁?调试的过程中会提示 “No Cortex-M SW Device Found”

7 b3 l) y+ c8 X' U$ `9 f  [. [
          首先看一下MCU的启动模式:
8 K6 h$ v/ S6 D; `
          boot图.png 9 K/ r+ X7 s& P. x! d, ~1 E, U  [

7 r0 y3 }6 h  Q
          简单的说,正常的芯片自锁,就是将Flash存储进行读写保护,使得不能运行程序。而我们的做法就是将Boot0置高,使程序从系统
) I1 t- z, D2 \- C  L9 c
存储器启动,找到芯片之后,重新往Flash 中下载一个正常代码,比如点灯程序,之后再换回Flash启动,芯片即可完成解锁。
8 e6 g' t, c& g4 m6 ]! [- d
  3. M系列使用的Flash是FLM,ARM7/ARM9使用的是flx。

& L6 A8 @; F" Q! l+ l1 l( F
  4. 使用STM32生成指定数目的脉冲个数
/ q7 n2 Z! ?( n
   STM32重复计数器,TIMx_RCR,当它的值是个非0值N时,计数器不再每次溢出时产生更新事件,而是当发生N+1次溢出时才产生更新事
& ?, H3 b- R# u% W# t) a/ D
件。如果RCR=0时,就是每次溢出都产生更新事件,那么当把单脉冲输出模式与RCR寄存器配合使用,就不难生成指定数目的脉冲个数。

- L5 U* y- E/ T) J% y0 ~3 c
此时脉冲个数为TIMx_RCR的值加1。
; f7 A0 J$ w7 f' g$ C8 ?, [; t
5. STM32上移植u8g2

4 P) I, B. ?: F
  移植完编译的时候,会遇到Error6406E类错误,提示“No space in execution regions”。应该时RAM溢出1.在keil option里面的

& E$ I; R' z8 v) D% {: u% ~
编译优化选项,从level0调高到level1或2.将比较大的函数挂在数组定义成const,也就是放到flash里面。
  
6. keil5 中jlink选择芯片时,选错了Core怎么办?
- L# S3 ], L/ a/ J8 n5 c$ ?- ?9 P" M) i1 }
  如果选错了,会出现Core flash失败。在项目文件夹中,删掉JlinkLog.txt和JlinkSettings.ini即可,然后在弹出的界面中重新选

, ~1 G' B7 ~) d* s9 e6 A& B, c4 y
择Core。
% [6 V8 }7 n6 g# D( E
, n+ \4 ~( Y  U# x$ C
收藏 评论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 手机版