ARM
就一刀
专注嵌入式及无线产品软件开发
展开
-
项目笔记: GD32F3x0 与STM32Fxx ISP总结
近段时间在做的一个项目,项目共用到3个MCU:GD32F350,GD32F130,STM32F334,其中一个GD MCu作为主MCU, 通过USB与上位机通信,另外通过UART与另外两个MCU通信。需要实现三颗MCU的升级功能。因此在主MCU的BootLoader程序中实现了:1 通过USB接收上位机的升级程序。2 通过IAP实现主MCU主程序升级。3 通过ISP实现另外两...原创 2019-01-09 09:43:30 · 4301 阅读 · 3 评论 -
项目笔记: STM32G4 软件复位后程序无法运行的原因分析和解决
1.前言最近在做一个项目,使用STM32G474芯片。程序包含三个APP , 当运行其中1个APP时, 有时候需要软件复位跳转到其它APP。发现调用NVIC_SystemReset() 程序无法启动并跳转到其它APP。2. 原因分析因为同样的跳转方式,已经在其它ARM MCU上验证且已经成熟,所以先入为主认为是硬件差异。相同的程序烧录到NUCLEO-G474RE可以...原创 2020-03-03 21:15:28 · 3521 阅读 · 0 评论 -
项目笔记: GD32输入捕获问题总结
在新项目中需要用到定时器输入捕获功能,此前在STM32上也实现过类似功能。 在应该用中发现捕获计数不准,逐个排查原因。1 怀疑定时器溢出,尝试加大预分频,发现捕获依然不准,增加溢出中断计数,依然不准。2 怀疑硬件问题,用示波器测量输入波形和电压,发现波形非常稳定,输入高低电平也符合要求。3 怀疑其它配置问题,尝试使用定时器检测IO口翻转方式来计算时间,发现时间非常准确,4 尝试在捕获中断里面打印全局100us定时器,发现经常是在同一个100us内连续进入中断,廓然开朗。逐一判...原创 2021-07-24 22:12:26 · 4634 阅读 · 1 评论