>>实战经验列表0 ?/ G* { X. N5 m0 L) }; F & R6 s( F2 h. P5 s7 L2 A & g2 o9 _5 b9 g/ ^* Q W 社区资料下载栏目开通【ST MCU实战经验】版块,将在这个板块中,针对工程师的应用问题,ST做了详细的解答。进入ST MCU实战经验后,可直接下载文档以及程序。也欢迎大家回帖交流。 提示:点击各主题,进入帖子,可下载ST工程师解答详请. ^ x# r9 d$ S+ q 6 r; k& i; s; `$ T3 d7 h) w {8 p 0 a9 N( z+ B' ]5 e1 d 一、通信接口 & S! m+ y0 f( b. D$ {4 h4 p 1. STM32F2x7_Ethernet(FreeRTOS)驱动更新$ B$ N+ x7 K/ t$ v % ]2 V6 c0 ^/ U" ^# d6 T! x 2. SPI 接口发片选信号导致死机 $ z. N$ n; i/ ?' u 3. USART1不能设定600BPS的波特率, @/ ]8 g' D, c; p0 ] 4. I2C 接口进入 Busy 状态不能退出 5. 对 Flash操作导致 USARTU接收丢数据 ; \2 K6 z3 q) Z- ^ 6. USB接口易损坏 6 t% G4 p1 {9 u# O# h. u" x 7. UART发送数据丢失最后一个字节 Z+ P k. }* ^ J9 h. g/ r 8. 使用 CCM 导致以太网通信失败# m) P3 P _ a# w3 g; R5 x$ l 2 A2 M0 l' f7 Y5 k 9. SPI3 接口没有信号送出: X6 [, P5 D5 z$ ^" k ; l) A# P1 L1 ~2 W 10. 时钟延展导致 I2C 通信不可靠8 ^% W4 w$ Y; R ) b/ c' G8 ?1 j2 D5 \. j 11. M0的USART波特率自动识别问题 6 L# [* }; n/ B, W 12. WK15 OTG做U盘主机兼容性提高 13. 以太网电路设计注意事项4 Q5 i8 L4 M6 o; { . C9 Z4 h- G5 N5 H- Y9 C 14. OUG主机库在BULK传输上对NAK的处理 15. 串口断帧检测 ^: ?2 M- H' I6 g: L8 B 16. VCP例程用于数据传输时丢失数据的处理 ) I& r5 x$ e( z" ? 17. STM8L051F3P6串口UART数据起始位判断的问题, ~+ N7 q- O0 u7 \9 n" \. F" F& o: @: g 5 V, m# d0 M( B& o6 l+ u5 y 18. STM8L152C6T6 硬件IIC,发送从地址后无ACK信号 . ]. A. E$ t( r( _* }/ v" Z: H! `' f 19. STM8中UART奇偶校验的使用方法 6 `+ ^3 } n9 x# Z9 e3 o 20. STM32以太网硬件设计——PHY - n0 f2 C1 F* h3 S2 F& p 21. 一个判断I2C总线通信异常原因的方法& e; X/ r+ V" `/ N8 M1 _; n6 ^ 22. USB device库使用说明 23. STM32F103上USB的端点资源; i- N( O% r1 V: S0 ~ 24. 使用CubeMX生成TCPEchoServer程序# k( Q( A+ e- R% X) F5 }1 `* @ 25. SPI接收数据移位 ; q5 H9 o* S' Z" `0 N3 t 26. STM32F0中Guard Time的设置 . D( X& c0 n& x6 @! m+ e 27. LwIP内存配置 3 T: M; J( ^" x# j% o$ s! F. z 28. STM32 USB Device的简易验证方法 7 `+ z1 G& j! H0 M4 j6 _8 j 29. USART 中断方式接收无响应问题的一种情况及其处理方法3 u5 }2 ~" N+ _ 30. STM32 基于 Nucleo板 CAN总线的建立 , Z$ H+ H/ s) V; u$ [# H 31. STM8 CAN总线的IdMask模式的讲解 32. STM32F746ZG USB 驱动不正常 ! ~3 S" u: N1 \% [ , x. g& M; {% V) m 33. MCU在STOP状态下通过UART唤醒分析 34. 通过STM32CubeMX生成HID双向通讯工程 " C2 P% Q9 r- g" g i# g% o' m7 U0 _ 35. 串口工作在DMA模式下有时接收异常 36. STM32 Bootloader中 DFU使用限制/ S. w4 G5 Q- y+ u3 B 37. UART异常错误分析0 _) } ?" d# i/ m' s9 ?/ l$ a # W, V7 Z$ R) H$ k7 f* T: i* P& x 38. 基于Cube库无法检测CAN2的接收中断 39. 基于STM32F7的网络时间同步客户端实现 40. HID与音频冲突问题 3 H+ h1 H9 u0 B6 A! i, N: m5 y 41. 在进行USB CDC类开发时,无法发送64整数倍的数据 / @0 g, ^. W. S$ g1 { 42. 从零开始使用CubeMX创建以太网工程8 q1 k0 K7 i* u& e% K 43. STM32F4xxx的I2C总线挂起异常处理/ G# N' S; d2 Q. r9 C9 f 44. LPUART唤醒STOP MODE下的MCU / S; K; E9 `5 t. u1 J6 g; Q8 I* V 45. STM32系列 MCU模拟双盘符 U盘的应用 9 e$ r1 b( Z% K" O- n% J 46. CEC输出的数据和数据长度始终不匹配' b! j5 `6 s* t0 | 47.STM8Lxxx I2C 程序第二次数据通信失败的问题分析 ! p3 v* ]1 h( X, R; p; h Z, J" F 48.在进行 USB CDC类开发时, 无法发送64整数倍的数据(续)+ X$ U$ y b4 A7 p8 X/ X4 ^6 \ 49. 增加UART接口应用时的异常分析 6 ?5 N6 ? p" i" H 50.UART应用异常案例分析% G" w/ N4 a/ U+ i* ~ ' f: L# u5 z& {# N6 f9 R6 {. v4 ` 51. I2C配置顺序引发的异常案例 52. STM32 USBD VBUS GPIO" F) z5 {- N2 s: D * I$ O n) z0 M- M( h 53. USB传输数据时出现卡顿现象 . b8 \ P' ~3 B, |2 [% c- B 54. STM32的高速USB信号质量测试实现, t$ {8 r1 S/ v$ w, [3 E* H 55. 基于STM32 I2S的音频应用开发介绍9 l4 j1 i$ e* `- b2 e, s$ G 56. HID_CDC复合设备在WIN10的识别问题 ( o/ h [4 l1 I9 g. ? / V- `) c. j5 C1 g, l9 H 57. STM32F767 的 USB 工作在 HOST 模式下的远程唤醒问题 1 K. N1 A9 s( s 4 R5 I9 M' ?/ t4 G, o 58. 一个关于LPUART输出异常的问题分享 1 Y% ?6 y1 J/ E5 A2 C# H) ]$ d 59.通过 DfuSe 工具控制程序跳进 DFU 模式! w" M1 c4 F; f) ?: r 60.UART IDLE中断使用-接收不定长串口数据 (2019·9·更新)0 D' A6 V' e% Q6 j+ D! E& f5 a 8 ~; g6 t; T f8 S+ `1 J" q 61.一个因初始化顺序而导致异常的话题 (2019.12.24) 62.MC SDK 5.x 中增加位置环 (2020.5.29) 63. 如何根据应用需求调整STM32L5的memory partition(2020.7.16)4 t# p; S P6 m% b4 X 64. 使用STM32的MPU实现代码隔离和访问控制 (2020.7.16) 8 P( u" d5 ]2 m) b" @$ o 二、电源与复位 + ^* @. n9 c9 G# ?0 W 1. Vbat管脚上的怪现象 2. 上电缓慢导致复位不良) }% k, W# a2 x' A* T 3. 关闭电源还在运行6 c) X) T+ S5 O) H; z/ Q) A 4. 使用STM32 实现锂电充电器: O( e8 T) ]5 P. ^' y1 s 3 e) |3 N+ d7 U 5. STM8L152 IDD电流测量7 V3 z" m1 z z! l3 o0 c4 O0 n 6. STM8连续复位问题9 p4 ?3 E5 [/ i' K$ J1 I; v 7. STM32F2电压调节器REGOFF与IRROFF引脚的使用 9 s0 k x! J7 O 8. 使用STM8L-Discovery验证STM8L在LSI+WAIT模式下的电流- B \3 y$ ^2 a6 m" i' n/ ]( c 9. STM32F7与STM32F4的复位序列比较# D+ W6 z% M, n' Z! X0 Z. q 10. STM32F107 复位标志问题 ! C8 r3 Z/ a! F: I; ] 11. VBUS引脚一段时间后管脚无法正常工作的分析和解决方法 12. Nucleo_L053不上电也能运行 s! J2 T7 t N; G1 x- k. G 13. STM32L4中STOP2模式下的漏电流' p s" T/ ]5 L/ L 14. 在没有外置晶振时HSE_RDY异常置位. a; n/ V* [. k: X6 {3 ]% [ . o( l) |; [* Y9 } 15. FLASH被异常改写 (2018.5更新)) p/ U9 @' S5 H9 s2 I+ i' j8 c 16.与 PDR_ON 有关的一种异常现象及分析(2019·2·更新)$ x- B5 E: `+ M4 D) W/ P; y ! g9 ]0 J# v c* M( d% a 17.一个 STM32 芯片异常复位之案例分析(2020·2.27) ( J' |) \" _& m0 ^; r% w1 ]( S 三、IAP和Bootloader; J& {! t' \2 E1 `" t$ V% r& @ : g* A) O u% |& E# T2 n 1. Boot Loader与上位机通信不稳定/ T+ ~2 @9 j, E' h 0 b: N- `6 Y8 b$ d 2. IAP+APP 模式下不能启动 RTOS4 v r* ?0 n/ x5 d3 K, O' E 3. 从 IAP Loader 向 App 跳转不可靠; _6 v E) W" P9 w. I6 v 4. STM32 MCU IAP例程跳转到APP代码简要分析 5. STM32F091从自举程序向应用程序跳转的问题与解决 6. STM32F09x不使用BOOT脚实现System Bootloader升级代码 7. STM32F0启动模式相关问题探讨 8.STM32F091空片使用System Bootloader下载代码 9.STM8L IAP 应用程序中编程指导 5 F0 h4 v2 U/ x: v 10. 如何通过STM32的串口实现简易脱机编程器0 [% _) @- s8 B2 | 11. 一种从用户代码调用系统存储器中Bootloader 的方法 12. 利用 USB DFU实现 IAP功能 13. STM32 Bootloader中 DFU使用限制$ I M; s; {# @# K7 Y3 ~3 G" o' x 14. STM32L011x和STM32L021x启动模式注意事项$ W) _/ u1 M3 F- m/ T / K' w4 `8 V; Q% U 15. STM32L011&STM32F091 空片检测进行 System Bootloader 编程注意事项 , P/ K a1 p7 N' \- A 16. 无法使用内置 Bootloader 的 DFU 方式进行固件升级 17. 如何使用STM32NUCLEO 板来测试串口Bootloader 18. 在STM32L011上通过I2C接口实现IAP 4 H8 n3 G9 d! F. O" u J$ J( c 19. 在IAR中实现通过将程序在SRAM中调试的方法 20. STM32F769AI 同时使能FMC 和QSPI 带来的引脚冲突问题, n' W- v% S4 B9 _5 @$ [ R2 J& }; Y2 l/ S2 E7 e 21. USB DFU IAP 例程移植的两个话题 22. STM32F769双bank启动3 h& M( c! N; O# B4 T E 23. DFU加载 工具 DfuSeCommand的使用* m0 \! G/ F- c h . H4 |2 U6 I4 z: k3 u- {, C+ ~5 F4 B 24. STM32F0 使用 DFU 升级后 Leave DFU Mode 不能运行用户代码 - s0 @! O+ I7 _" f $ e1 M7 }$ S& w$ { 25.STM32F767的USB工作在HOST模式下的远程唤醒问题 (2018.12月更新)* T& a' |2 y- V* k; ~& \& w6 w8 S 26.STM32 Bootloader异常复位案例(2019.4)6 Z. D& x7 Z: ^; }* |3 K 1 K Q+ _8 A4 L& H 四、存储器% ~; K" S: M u$ k0 h. I3 a . g/ o+ v% e3 N! K. {: Q! q1 c 1. 对 Flash操作导致 USARTU接收丢数据 P6 S- W$ f0 H0 I 2. 使用外部 SRAM 导致死机9 b3 j& }* m7 Q! r3 r6 e6 g& y+ F 3. SRAM 中的数据丢失! ^( P- V e% U* H 9 [6 J" K5 e' E& O7 |) U0 g$ x6 b0 Z 4. 干扰环境下 Flash 数据丢失 & I3 k* h3 |! c2 x' v [ 5. 使用 CCM 导致以太网通信失败/ m+ F& b) A* P2 h 6. STM32F429使用外扩SDRAM运行程序的方法4 u" s, ?8 N8 b( | 7. 使用STVP实现对STM32L1系列EEPROM预置数据 8. FreeRTOS RAM使用情况及优化方法4 S0 F e& L7 h6 k1 U8 F 9. 在IAR 6.5下如何将数据存放至flash中 10. IAR下如何让程序在RAM中运行1 W1 G" _: o# S, a$ z ) l# p: r, A I' L 11. RAM上电后初始值问题 12. Stem Win 驱动移植-FLASH&PSRAM(MCP)接口驱动设计 13. LwIP内存配置+ l$ q) }. G5 d. @9 R4 ] 14. STM32F2高低温死机问题 6 u/ b j5 Y3 y& l 15. 使用STM32F427的CCM RAM时遇到的问题, X; l y6 _7 h0 O5 c 16. 利用QuadSPI外扩串行NOR Flash的实现 9 ~' C/ k( C4 ?* E # J$ L) ], L, |3 X 17. STM32擦除内部FLASH时间过长导致IWDG复位 18. 基于STM32CubeMX开发U盘访问应用 (2019·6·18更新) % j8 O5 {& `: T. u& D8 s 五、模拟外设5 U. q2 I* z1 ^3 |# A 1. ADC对小信号的转换结果为零 2. ADC键盘读不准- Y+ Y, b0 F* }8 f. b0 T 3. 扫描模式下 ADC 发生通道间串扰5 |( B# U: H, A$ |$ \5 Z/ P# }7 A 4. DAC无法输出0V的问题分析解决7 k1 J a% F* Y: [0 C i7 g 4 E$ K$ y& N! x; S3 v( u 5. DAC无法输出满量程电压的分析解决 6. STM32F30x 的ADC 采样的傅立叶变换 6 E! M1 C. H3 X 7. STM32 F1系列 DAC的示例详解( t4 a8 o; ]3 D/ ^7 }1 c7 P " W& E; t( t) |0 ^* a) [ 8. ADC 连续模式采样浮空引脚问题 9. PWM硬件间隔触发ADC 4 t: a. _- p8 [5 f4 H 10. STM32F30x 禁止ADC 已关闭情况下再次关闭ADC5 B5 M) B! ]( f7 A5 J" z t0 ~5 V; r% A9 F/ ~3 f# w 11. STM32L4 系列中ADC 通道配置上的区别 ( A: `* X0 n# ^! R4 z 12. STM32 ADC模拟看门狗及其应用 13. STM32L053 comp2 比较电压无效问题 / u9 A* J; p: j" N8 z' T ' u$ B5 R8 W' c9 g: o. H+ ` 14. 运算放大器OPAMP在STM32L4上的应用$ e2 I, W5 P/ ~2 W6 q& V( ` ; c, H; }4 _5 d }2 K( _* S/ }: V 15. STM32 OTA例程之ESP8266使用 / M; k" Q8 P# I7 R 16. STM32多个ADC模块同时采样转换的应用示例 (2019·7·24)3 A" q6 }! j s1 _4 v % A. x# }# O0 x- A, i& s5 h 六、计数外设 2 u/ R6 e j8 d 1. Watch Dog 失效+ y% p. l I* i4 j* z# p& r, a0 F 2. RTC计秒不均匀; B( r: i; L: ~" o5 x 5 t$ p, y" D* G- {, w/ I$ _5 H 3. 软件启动模式导致 IWatchDog 失效 4. STM32F030R8 定时器移植问题9 K, [+ V ^+ E% I# c 5. STM32F0使用RTC Tamper的几个注意事项+ ?" O# Y1 W; G 6. STM32L053可控PWM脉冲方法之DMA% ?! c8 g8 L7 F$ k& y. ^5 v - I4 J/ c) {' v( _7 K 7. CounterMode,OCMode与OCPolarity关系7 A1 K2 t( I; h- r; Z0 C 1 K1 A5 m- A+ U- o3 {% n( b 8. STM32L053可控PWM脉冲方法之DMA m- d" o7 U$ m1 y" _# L! e( D 9. STM32F1通用定时器示例详解—TimeBase" \! _$ h- a& M' X % s. {1 Z- c2 [$ O" J3 q' X 10. STM32F1通用定时器示例详解--TIM15_ComplementarySignals# v3 W; @& T( }, s- N% s# M 11. STM32F334 应用于LLC + SR 的高精度 Timer 波形产生8 Q7 C6 a! A( x 12. HRTIMER的多种Fault事件联动机制8 D7 d( j& C; K- Q/ j1 s, c - d, K6 e( x" T, j0 o4 i/ | 13. STM32通用定时器 示例详解 —One Pulse# i- n$ ^: r p4 ^0 k4 t3 B 14. 如何用LSE校准STM32F4内部RC振荡器 3 d: Q" a! J$ y( ~, p& x3 n 15. 一种使用Timer测试HSI实际值的方法 16. FreeRTOS定时器精度研究 17. HRTIMER产生多相相移信号 0 U2 M4 c& q4 i2 m2 p7 F, Q1 t 18. 窗口看门狗启动时异常复位问题, N3 X j. G) V$ ]' v 19. PWM硬件间隔触发ADC ) [4 ?0 J/ H+ m4 l2 T# `! c, ^ 20. STM32F030低温下RTC不工作5 j/ w c( E. V; o4 M% { 2 h( t5 @6 n# `0 l- l z2 \ 21. 教你一手 | 基于 STM32Cube 库的 Timer 捕获应用 ) \0 X2 I7 Q: @. M2 N1 E / c0 d2 ?4 t: Q" e# r: M6 t 22.STM32F334 应用于LLC + SR 的高精度 Timer 波形产生 (2018·9·29) $ q* K- j$ N" Y. H, I: X 23. 基于STM32定时器实现定制波形的示例 (2019·7·25) 2 I0 t+ L& M }7 F 24.STM32定时器触发SPI逐字收发之应用示例(2019.12.24) 6 _' X5 \5 L# V3 ^$ S* u 25.MC SDK 5.x 中增加位置环 (2020.3.31)2 s8 n% K& W% Z/ C 6 c4 X! x. A0 X I% q 26.STM32高精度定时器PWM输出话题 (2020.4.29)+ D: p- q1 c8 u 27. 基于高级定时器的全桥移相PWM发波方案(2020.5.12) 七、内核 1. 使用指针函数产生Hard Faul) b5 [$ c" x3 s' o4 Y T$ \ 4 l( H O) }+ s' h 2. 调试器不能通过JTAG连接器件! i+ y( c0 d, j1 F8 z d+ H( E( `( t7 C3 y q 3. 鬼魅一样的Hard Fault1 T4 Y: d) x- `8 E5 b/ i& h: V % k: k; C; M8 `# O 4. 进入了已屏蔽的中断[ ( M1 K8 A" B! V$ u' C9 p9 ? 5. 浮点 DSP 运算效率不高 : G& Y( Y. \1 x0 W- G 6. STM32上RTOS的中断管理 7. STM32F7与STM32F4的复位序列比较 8. STM32F30x 的ADC 采样的傅立叶变换 9. EXTI重复配置两次导致误触发中断的问题5 X4 o- E" b8 r1 E9 y4 x 9 m" f3 H7 X# V% v H 10. STM32F3xx/STM32F4xx使用浮点开方指令* N1 U/ H+ x4 @' g$ U ~* O' N" s: I4 Q% I 11. RMW(Read-Modify-Write)对 STM32F7xx内核运行速度的影响* `8 d6 F* U: g7 _. t* } 12. STM32F7 MPU Cache浅析 + \+ Q# p: [5 h- ]+ {. P4 X 13. STM8使用24MHz外部晶振无法正常运行 (2018.3更新) 14. STM32F0 不同代码区跳转时总失败…这些操作你.. (2018.6更新). |* P# n) \0 J5 b6 v % v/ c# v) C* H# A 八、系统外设* d" |. X8 b! C- e- W 1. PCB 漏电引起 LSE 停振 * ^1 d. O4 N7 y0 ?: Y+ Q. Y: i 2. 时钟失效后CPU还会正常运行' p7 ^5 M4 [' ~5 d% z 4 d6 \: h. [& z( T+ M* H 3. STM32F2中DMA的FIFO模式 4. STM32L053的GPIO翻转速度的测试4 M* A& e$ _& ^. x6 K 5. STM32F4xx PCROP应用 3 w5 g# s* p5 G 6. STM32L053的GPIO翻转速度的测试& l" G3 v! M9 i5 ~ 7. 如何在IAR中配置CRC参数 8. PCROP区域函数无法被调用的问题与解决 6 c, [% e$ s. I: D* p 9. 关于AN4065中STM32F0 IAP升级后的外部中断不响应问题. k- i/ `# i2 t) Q0 L+ O. E 10. Stem Win 驱动移植-FLASH&PSRAM(MCP)接口驱动设计! |% _1 B( ~& B 11. 如何用LSE校准STM32F4内部RC振荡器 z' G/ ~# S! {8 k9 { 12. EXTI重复配置两次导致误触发中断的问题 , r/ c* S; A7 K: D. Q6 i2 n( |; z3 ` 13. 时钟安全系统的应用(LES篇) 14. 利用DFSDM开发PDM麦克风应用介绍 3 N6 a! M2 \- P! L $ u& [) T# L4 f8 P' Y 15. STM32H7的FMC外设在DCACHE使能时运行不正常 16. STM32H7 DMA 传输异常案例分析 (2019·3·19更新) 8 {# _- C# z+ _/ Y1 T # u0 U4 {6 O9 M0 I" y" `3 ^( E 九、标签和收发器 3 q; W9 n- Q" {6 L! r8 J# g 1. CR95HF的初始化步骤2 Q; ]9 a i3 F6 t$ J$ g+ [* G! | 十、生态系统% m6 D, }' E0 U. J4 b0 D) J+ e3 c . a& y0 A; M w' _0 z5 {" H2 R/ K+ h7 U 1. STemWin_Library_V1.1.1中STM324x9I-EVAL的RTOS工程显示不正常问题" n, t9 ~- S; G7 z2 e1 P 2. MDK Logic Analyzer 功能在STM32中的实现问题0 X P4 M, N! I" D) l 9 d/ q2 h- p" ?; K/ [ 3. 在IAR6.5下如何将数据存放至flast中 & j' o0 z9 G' U: p+ Q 4. FatSL移植笔记 5. Keil中使用STM32F4xx硬件浮点单元 6. 如何生成库文件(MDK和IAR)4 J0 w+ i6 Y3 U; E. v 7. Nand Flash文件系统解决方案) K: R% l8 U$ u2 c& U 8. STVD在调试时弹出“Cannot access configuration database”的解决 9. RTOS低功耗特性的设计原理和实现1 v+ c& `$ P* X! I 10. IAR下使用J-Trace进行指令跟踪9 q+ M! u7 _# [! Z* v' d 5 Q9 r5 f+ q4 i T1 o' ~ 11. STM32上RTOS的中断管理 & f3 P$ N( T; s# @2 b% F h1 [ \ 12. IAR下如何让程序在RAM中运行 & N5 b$ ~, m4 s- j" L' v 13. 如何在IAR中配置CRC参数 c# G t+ M- l 14. 基于STM32F411 Nucleo板的Broadcom Wi-Fi开发套件的快速开始手册3 X( |3 o0 z: Q* D4 P: w 15. 使用mbed进行STM32开发及STM32F0的时钟问题4 u; w$ U- x `& A) d ( t. ~* c \; l 16. 使用STM32CubeMX实现USB虚拟串口的环回测试功能 ; r: u/ X; ?/ _' o5 f 17. 多任务系统中的不可重函数使用注意事项! f, F5 s# ]% n- W0 s2 }$ k 18. STM32 utility的hot plug功能3 r# c R$ X4 C L 9 m, v+ H. x5 a; l( R 19. 如何将CoreMark程序移植到STM32上 5 N% D( q2 h9 d! q 20. FreeRTOS定时器精度研究% Z6 N: t, y7 J: g/ W 9 \0 p. k- }3 _7 A& H 21. 如何使用Eclipse和GCC搭建STM32环境 $ f) c' M6 W( O1 H0 D- B 22. 如何建立一个基于GIT的STM32库 & Y7 f6 p3 I$ R% ^, f 23. 从零开始使用CubeMX创建以太网工程( _4 }3 j3 `6 E8 f; V0 }5 Q 24.从STM32Cube库向标准外设库移植FatFs文件系统 # Q7 ]0 U3 E, _' m( D 25. 基于 STemWin的屏幕旋转 , j8 Q3 r+ t. D! b! z# I( G6 y& ] 26. 编译软件 Hex文件烧写 ; \, E' {5 F- t( q+ P5 Y+ J 27. 使用B-L475E-IOT01A探索套件连接AWS IOT平台 7 K" O, C# n7 ?6 R0 y8 w/ t1 s 28. USB CDC类入门培训 29. USB DFU培训 7 s# x. {" @! f- D & s/ e5 z* b Q! B( T) N# j4 }: `7 D 30. 用于量产烧录的拼接Bin文件操作& |1 r7 j+ l/ M 31. STM32免费开发环境该用谁 32. 免费全功能STM32_TrueSTUDIO_9.0 (2018.3更新) " b; R4 H/ d: Y" j 33. 基于STM32L4 IoT探索套件开发AliOS Things (2018.5更新) 34. TrueSTUDIO出现 Program “gcc” not found in PATH的解决 4 D( I( X) R) d( b/ b5 F 35. STM32 FOTA 例程之 cJSON使用 4 `) l6 [' [: [ 36. STM32F769DK 云端固件升级例程使用说明 37. STM32 FOTA 例程之 Paho MQTTClient embeddedC 使用 38. 基于 STM32 的阿里云物联网平台方案 . E" ^5 H7 j& I3 e# r v 39.AliOS 任务上下文切换原理分析 # i4 o9 F* V( c; O2 w) d5 l/ H$ U 40.STM32F334 上的 ADC 管脚和 DAC 管脚 复用问题 0 s$ T+ x* y$ j0 x6 a) h2 v 41. STM32F769DK 云端固件升级例程软件开发文档 3 {& r& \# F0 u; g3 a r* ]- r ; E" _0 r! c$ j! N8 [) i# A" A. v 42. STM32CubeL4 固件库V1.13.0版的RTC唤醒问题 (2019·6·18更新) 9 y( M$ B. N( W( @" J3 n2 |$ a+ @4 I 43.使用USB虚拟网线(USB Ethernet gadget)直连STM32MP1和Windows PC(2019.9.19)5 A- x- s' @& J) G5 u1 ? * J6 g0 v0 p3 O: D* ~( c" y 44.零基础快速入手STM32MP1 (2019.9.19) : Y X/ Z+ X' u( A 45.STM32L1xx与 STM32L1xx_A的差别 (2020.4.29) % y& d9 u) H' G+ N$ w 十一、调试 1. 关于STM8S SWIM Error[30006]的分析 2. STVD在调试时弹出“Cannot access configuration database”的解决0 s7 x( A* z9 E/ c& }1 y 8 o: R" g- o7 ~. Y: C! {% W3 e 3. IAR下使用J-Trace进行指令跟踪 4. 菊花链 JTAG STM327 w& E' u: Y# a4 Z; a. b3 w8 ` 0 K. w5 }) f8 L5 I# M' S( V& _0 h 5. STM32F411CEUx 能下载程序但不能执行 6. STM32F103C8T6 程序上电跑飞 7. 使用STM32 ST-LINK Utility 设置读保护后不能运行1 z, ~4 X. Y) X1 P6 d. ^- u 8. VBUS引脚一段时间后管脚无法正常工作的分析和解决方法 0 _9 M/ D: X, i( I) G : `, b, e0 k6 Y$ s+ J+ G 9. SWIM协议的GPIO口模拟) R0 e5 F( M2 ^% v% e$ S4 X 10. STM32F091空片使用ST-LINK烧写后复位不能运行用# B; r( ?& y8 n: c# r+ {: i( W 11. STM32L011对空片进行编程后程序运行问题 (2019·9·12更新) 12.如何在IAR和KEIL中计算CRC值 (2019.1.2.24)2 r+ [# w. g. k* D3 @( {( z 8 Y" s4 N$ W. d$ a$ ^- I* E 13. X_Cube_ClassB代码移植 (2019.12.24)0 \- ^8 n3 U* a' i ! A. V; w8 t5 u 14.Keil中烧写STM32F750内部Flash方法 (2019.12.24) 十二、人机调试, k5 R/ b# B3 H/ ^, C 7 G; ?+ T: Q1 S! g5 {! ` 1. 一步步使用STemWin在STM32上开发一个简单的应用 2. Stem Win 驱动移植-FLASH&PSRAM(MCP)接口驱动设计 3. GUI方案中ALPHA通道处理介绍- ]7 s# w8 N! l 4. 基于FMC8080接口8位LCD的STemWin的移植 5. TouchGFX中Callback模板实现原理 (2019·9·12更新) 4 a) a5 S8 \5 }( o 6. TouchGFX快速创建滑动应用例程 (2019·9·12更新) # q% g9 Y' Y* s) Z# u. R& e 7、TouchGFX 简单界面设计_按键控制光圈移动(2020.2.27), Q2 L8 v) A. r- k 8、STM32L5中如何关闭trustzone (2020.5.12) 十三、马达 1. 电机控制同步电角度测试说明/ s1 d" @4 }% { 十四、安全 1. 一步一步使用STM32安全启动与固件更新(2018.3更新) 8 I4 X# i1 t0 n2 O 十五、其他# f6 o2 G9 x- D' ?4 L/ | t 1. 跳不出的 while 循环, s4 }" ?9 y4 q' n! R& u" |! z' @ 5 t2 r0 E% X: `6 y! B 2. 外部IC连接NRST导致MCU内部复位信号失效的问题+ p4 _& t; a, C: j/ o" e7 c9 y 3. 潮湿环境下不工作; J9 H6 i$ W ]; k$ G ) f% Y4 p/ Z9 v' j9 o U( n 4. PCB 漏电引起 LSE 停振0 l" S7 ?. N" }+ n8 B/ z9 g 5. STM8L152 IDD电流测量4 J- v) p S: N3 v2 Z% F5 ` + S( a1 Q( { @1 K$ D& i: Y; r 6. 使用STM32实现锂电池充电器; t' v# d6 H* ~# `9 A4 b 3 \. W- O, M7 w* c) F% ` 7. STM32_STM8硬件平台基本检查 8 o/ K* N+ G, Q- } A 8. 验证STM32F401在STOP模式下的电流) @4 ]3 g5 A( U+ x' Y S5 e7 O 9. P-NUCLEO-IHM001 电机开发板串口调试指南 ) l0 D2 n5 O( J# o P7 M- o 10. 一种计算CPU使用率的方法及其实现原理* V& t6 |$ r$ r I6 x 11. STM32 RTC不更新原因分析 5 S, ]4 n4 W' J' d. i1 D! I* U! s V 12. 关于ST库函数的代码性能对比& W9 k6 Q$ I* A% _! g 6 e. M- H5 ?2 l% G% x+ A4 M" F 13. 在IAR中实现通过将程序在SRAM中调试的方法 14. M95xxx EEPROM写保护配置 " e- l3 }" {3 S8 Q2 |4 C; k4 U 15. 4SRxx的GPO的属性 16. CR95HF的初始化步骤 17. 电机控制同步电角度测试说明 + H# x! J, N5 d 18. STM32+BLE通过 Notification与 Android应用程序通信的例程 . T6 R' e. O" m5 {+ r+ { 19. M95xxx EEPROM介绍4 j: s; b- x( V% j7 Z 6 t6 ]) a2 h# s% h 20. STM32 DFSDM测量温度应用 6 P2 N1 }1 m1 s ]( V; t * s0 O: O9 p2 \ 21.代码实现PCROP清除2 O. a6 }( T Z- w% R# ` 22. 理解与应用MPU的特权与用户模式 8 Q4 e7 V; N: p4 Q% R0 n 23. 用于电机控制单电阻采样PWM变形信号产生& c* w4 F$ J! T7 S0 V3 G0 h 24. STM32L低功耗模式唤醒时间测量 " O1 Q8 [$ L3 w0 A7 G 25. X_CUBE_SPN7程序电机启动抖动问题6 n7 T# e/ D: l W/ D% j! A* c 3 E3 ~' X1 i% p8 C; A( F 26. 发现STM32防火墙的安全配置: u0 ^" ]- o: O( n 27. ST FOC4.3库关于STM32F30x系列ICS采样代码的修改4 `0 h! V1 x! N7 w9 S4 N- k 5 ]% d: s5 I* T 28. 如何用STVP 命令行模式对STM8进行批量烧写(2019·9·12更新)* S/ T" v/ d9 Y& k* n( S 1 ~. y$ w- B, d7 f( l4 P 温馨提示: 0 z' ^! ~( x; l) w0 b" q$ d' l) O如果您在使用ST产品过程中出现问题,欢迎在社区发新帖提问。版主和工程师网友会热心帮助您。 3 U" d7 N9 n0 y( k【社区导航】STMCU产品购买、技术支持、意见咨询指南 ' o1 T% `/ X: _0 z- G ) G7 k! c& |4 |8 j% G 0 q) Q8 Q; n" u. x1 b0 z% U - P) @1 }$ ^5 P2 v : ^) k: S2 E* K( t. v8 [ |
有个问题纠结很久了。使用的STM32F205RE MCU SPI2 进行DMA 传输,数据量大的时候接收的数据会乱,直接将MISO 和 MOSI 短接测试的,代码如下:6 b' H6 ?- [ R3 ?! q _
期望接收到的全部为0x55 ,实际出来的是前面数据正常,后面的数据就乱了。
回复:【ST MCU实战经验】栏目开通!官方解答应用问题,欢迎下载!
以下是全部代码:- Y( Y( o. n" M' Q) Y& K3 o" j, y
#include"stm32F4xx.h"
void RCC_Configuration(void);$ {. Q9 q" g$ j5 g
void GPIO_Configuration(void);
void SPI_Configuration(void);" z" w* ~0 T7 f3 h) M$ f9 p# V
void Delay(int nCount);
int main(void)
{ RCC_Configuration();
GPIO_Configuration();/ ]5 f8 ~: w3 Q2 J0 E5 F4 K
SPI_Configuration();
while(1)$ z- @8 a! U1 s4 u8 t
{ int data=0;$ P, V3 J9 j: ^3 `: w% q
SPI_SendData(SPI1,0x55);
while(SPI_GetFlagStatus(SPI2,SPI_FLAG_RXNE)==RESET);
data=SPI_ReceiveData(SPI2);
if(data==0x55)
{ while(1)
{ GPIO_SetBits(GPIOA,GPIO_Pin_4);
Delay(0xfffff);
GPIO_ResetBits(GPIOA,GPIO_Pin_4);3 p2 o/ T" s" j
Delay(0xfffff);
9 B. z6 e5 l" \* e, ~2 }) R
};
}4 {3 k2 e# g0 l2 G* m
else while(1)
{ GPIO_SetBits(GPIOA,GPIO_Pin_4);2 Q6 _9 G* U. v. B7 P0 q& }9 c. l
//Delay(0xfffff);) r- c" k# C3 c4 b; L
//GPIO_ResetBits(GPIOA,GPIO_Pin_5);
//Delay(0xfffff);
1 m% C. C$ ]+ M, e, W
};
}) ]. i8 M$ i, b, _' G% A% z
}6 a" x2 `/ @3 J7 [+ k
void RCC_Configuration()8 `& I0 E% a$ p) d% j5 V/ p2 v; h( F
{ RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI2, ENABLE);
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA|RCC_AHB1Periph_GPIOB, ENABLE); : M" V6 T5 [4 `' O" Y5 v& ^
}9 `9 v, z8 r/ B! [
void GPIO_Configuration(); C/ m& x7 g; v; q b
{ GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_4;# A, Q& ~! A' W6 i) U. e: f
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_OUT;4 G/ k- ]! k p( `$ F+ E: k; g. h
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_100MHz;
GPIO_InitStructure.GPIO_OType=GPIO_OType_PP;! a( \- T) W( b; x/ L; z" K
GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_UP;3 m3 m& k7 R: f1 i* E
GPIO_Init(GPIOA,&GPIO_InitStructure);' { s& \" D4 ^8 L+ G2 T2 g
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF;) C; d3 P/ Q8 B/ d4 K
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;) C5 J5 Y: C h' `9 J" _% ~
GPIO_InitStructure.GPIO_OType=GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_NOPULL;
GPIO_Init(GPIOA,&GPIO_InitStructure);" n4 }, w, _1 [9 N
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;3 w8 O, P6 ^% p8 E& k$ Y" x1 c
GPIO_Init(GPIOB,&GPIO_InitStructure);9 Q: ^0 R& I6 Z# a
}6 ^9 N& H B8 P8 r
void SPI_Configuration()
{ SPI_InitTypeDef SPI_InitStructure;
GPIO_PinAFConfig(GPIOA, GPIO_PinSource5, GPIO_AF_SPI1);$ p, E" A7 G0 I2 z5 U7 k
GPIO_PinAFConfig(GPIOA, GPIO_PinSource6, GPIO_AF_SPI1);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource7, GPIO_AF_SPI1);
GPIO_PinAFConfig(GPIOB, GPIO_PinSource13, GPIO_AF_SPI2);
GPIO_PinAFConfig(GPIOB, GPIO_PinSource14, GPIO_AF_SPI2);" K4 x R9 |2 p
GPIO_PinAFConfig(GPIOB, GPIO_PinSource15, GPIO_AF_SPI2);9 Y! x* G6 @$ [0 v
SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
SPI_InitStructure.SPI_Mode = SPI_Mode_Master;
SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;
SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;
SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;
SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;+ B' R h( r# l; P( F9 V; _
SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_2;
SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_LSB;4 E; I0 q. e! V$ c8 y
SPI_Init(SPI1, &SPI_InitStructure);
SPI_InitStructure.SPI_Mode = SPI_Mode_Slave;
SPI_Init(SPI2, &SPI_InitStructure);* |% ? Y* [2 ^5 D& \0 U9 N9 L6 D" v
SPI_Cmd(SPI1,ENABLE);
SPI_Cmd(SPI2,ENABLE);
}
void Delay(int nCount)
{ int c1=nCount;" X. d5 I: w* i
int c2=nCount;) L! m0 [$ d$ i' A9 j6 X
for(;c1>0;c1--)- x0 M$ c2 k( x: \5 I
{
for(;c2>0;c2--);
};, k: `( A" ]- n8 p6 l; [
}2 i" @9 h6 X$ \" V+ |& D1 A0 y
先谢谢了~~
回复:【ST MCU实战经验】栏目开通!应用问题,官方解答,欢迎下载!
楼主,我想问一下,STM32F4 SPI1和SPI2自通信问题,SPI1为主模式,SPI2为从模式,可是我在设置波特率时,必须按二分频,SPI2才收得到SPI1发来的数据,如果设置为其他分频情况,将卡在while(SPI_GetFlagStatus(SPI2,SPI_FLAG_RXNE)==RESET); 这句上,还有就是SPI1和SPI2的波特率是不是必须为相同的,才能正确通信8 ^5 `- T6 k x4 [/ X
以下是全部代码:3 ^# L5 N, h0 Y9 C8 g8 V
#include"stm32F4xx.h"4 h% y2 b* p. w8 K& Z# x
void RCC_Configuration(void);% B' j# a& a) S% n5 _) k
void GPIO_Configuration(void);8 _ K; j- F. w& ]# Y
void SPI_Configuration(void);% i* m; h, b6 c
void Delay(int nCount);
int main(void), Z4 [$ t6 `8 u1 L0 k- D
{ RCC_Configuration();3 Q. l3 W' L- p0 D4 o
GPIO_Configuration();/ ^, `: l0 w; Q1 ^* H# k$ X% j) j
SPI_Configuration();
while(1)/ \7 {) x( }. }4 t
{ int data=0;
SPI_SendData(SPI1,0x55);. R1 j% Z9 a: I9 w3 c: r
while(SPI_GetFlagStatus(SPI2,SPI_FLAG_RXNE)==RESET);
data=SPI_ReceiveData(SPI2);0 i6 Z9 d8 C* c' U4 O3 l
if(data==0x55)3 F3 q5 Q% D7 z
{ while(1): J$ Y0 N- b" b9 a8 I
{ GPIO_SetBits(GPIOA,GPIO_Pin_4);; F3 `, T1 D! W) E
Delay(0xfffff);
GPIO_ResetBits(GPIOA,GPIO_Pin_4);
Delay(0xfffff);# B2 a4 \' F0 ]5 ?
};, B* V/ {; E8 s' f/ ^, I
}
else while(1)
{ GPIO_SetBits(GPIOA,GPIO_Pin_4);
//Delay(0xfffff);
//GPIO_ResetBits(GPIOA,GPIO_Pin_5);
//Delay(0xfffff);
! H6 Q) i* w' g
};9 h9 s1 A* m) o( a5 _. q
}
}
void RCC_Configuration()7 E( I) {0 A& Q" `& O
{ RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI2, ENABLE);
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA|RCC_AHB1Periph_GPIOB, ENABLE);
}' S/ S% K S8 B7 S+ G5 J; U: @
void GPIO_Configuration()8 i8 \! L4 d9 z/ R2 u) v
{ GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_4;& J2 M& N7 _! ?( \' X+ c$ J( J# S
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_100MHz;
GPIO_InitStructure.GPIO_OType=GPIO_OType_PP;+ P( |) T; z* Z+ _
GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_UP;- _2 ~8 D6 c: u7 e2 w' E1 m" W
GPIO_Init(GPIOA,&GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;. `+ E; F/ q' P8 N; M2 [& W. y% S: P5 A
GPIO_InitStructure.GPIO_OType=GPIO_OType_PP;+ j# C- ?* e5 F8 J C% }
GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_NOPULL;
GPIO_Init(GPIOA,&GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;
GPIO_Init(GPIOB,&GPIO_InitStructure);' n1 P0 m+ V# J. R# p
}
void SPI_Configuration()& o3 m# ?+ ?. b( f7 h1 c- s6 ^( l: p
{ SPI_InitTypeDef SPI_InitStructure;2 j6 I$ T- m$ |( O
GPIO_PinAFConfig(GPIOA, GPIO_PinSource5, GPIO_AF_SPI1); Q! b9 g- |& Z" m3 j. H$ Q5 t
GPIO_PinAFConfig(GPIOA, GPIO_PinSource6, GPIO_AF_SPI1);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource7, GPIO_AF_SPI1);8 }6 u- s7 q" C$ C
GPIO_PinAFConfig(GPIOB, GPIO_PinSource13, GPIO_AF_SPI2);
GPIO_PinAFConfig(GPIOB, GPIO_PinSource14, GPIO_AF_SPI2);
GPIO_PinAFConfig(GPIOB, GPIO_PinSource15, GPIO_AF_SPI2);# v1 |9 Z# d8 Q! Y8 d% g# g" Z
SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
SPI_InitStructure.SPI_Mode = SPI_Mode_Master;3 X# d: Q, s- r0 ~# {
SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;3 h8 G3 C! O, p2 Q
SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;
SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;' I! W' o7 {1 c5 \# r- W" Y2 l" \
SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;# s/ `8 \* d1 E/ Y0 C" n
SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_2;) z7 D: e# c2 o$ M
SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_LSB;
SPI_Init(SPI1, &SPI_InitStructure);
SPI_InitStructure.SPI_Mode = SPI_Mode_Slave;& o6 X- O1 g* }+ G5 }, V
SPI_Init(SPI2, &SPI_InitStructure);
SPI_Cmd(SPI1,ENABLE);& ~. _9 H1 x# c: a" c* ] z& U
SPI_Cmd(SPI2,ENABLE);
}; E- h; V1 P/ b, x/ @) N9 t+ Z
void Delay(int nCount): Q# @3 G5 J% f" a/ Q
{ int c1=nCount;
int c2=nCount;
for(;c1>0;c1--)& x/ V6 z9 _, T
{
for(;c2>0;c2--);, s3 Z) y' W' ?! u$ P1 M5 Y8 Z
};/ m: w5 `9 n8 B5 L
}0 S6 I O! g# J2 W5 u4 Z6 f' p$ i' q
先谢谢了~~! e1 o; p& f5 P1 Q
楼上的问题,看我帖子给出的提示哦~
RE:【ST MCU实战经验】栏目开通!应用问题,官方解答,欢迎下载!
回复:【ST MCU实战经验】栏目开通!应用问题,官方解答,欢迎下载!
回复:【ST MCU实战经验】栏目开通!应用问题,官方解答,欢迎下载!
多谢,真好的板块,学嵌入式的好地方啊,来对了,哈哈。
$ ?3 q/ y' h0 O7 ^
多谢支持!!
RE:【ST MCU实战经验】栏目开通!应用问题,官方解答,欢迎下载!
RE:【ST工程师 MCU实战经验30篇】之USB接口易损坏
回复:【ST工程师 MCU实战经验30篇】之USB接口易损坏
回复:【ST工程师 MCU实战经验30篇】之USB接口易损坏
RE:【ST工程师 MCU实战经验30篇】之鬼魅一样的Hard Fault
RE:【ST工程师 MCU实战经验50篇】之鬼魅一样的Hard Fault
回复:【ST工程师 MCU实战经验50篇】之浮点 DSP 运算效率不高
鬼魅一样的Hard Fault
该问题由某客户提出,发生在 STM32F101C8T6 器件上。据其工程师讲述:其某型号产品的设计中用到了 STM32F101C8T6 器件。在软件调试过程中,遇到了一个棘手的问题:程序会莫名其妙的跳到 Hard Fault 中断。在程序中,产生该中断的位置不固定,忽而在这里,忽而在那里。发生的时间不确定,有时候程序运了很长时间才遇到,有时候开始运行后没一会就发生了。产生该问题的原因不明,不知如何进行排查。) m, u, _; Q, L* [* L+ W! @
咋解决?
RE:【ST工程师 MCU实战经验50篇】之浮点 DSP 运算效率不高
RE:【ST工程师 MCU实战经验50篇】之浮点 DSP 运算效率不高