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