
STM32H7使用HAL库如何控制外置USB HS PHY进入低功耗
《年中视频学习心得》+我在年中学习STM32心得
touchgfx handletickevent 执行的频率 是由什么决定的
touchgfx4.25 颜色错误?
ubuntu 编译stm32cubmax 生成的cmake工程,在最后链接阶段报错,can don't find-lc_none
STM32CubeMX居然卡死了
STM32G474VET6如何配置HRTIM的中心对齐模式
用STM32的時候是直接用MDK方便還是在vscode用keil插件方便一些
用cubemx配置好串口后,再配置一个adc输入就会卡在HardFault_Handler里不动了。
关于STMCubeIDE创建工程BUG解决办法!!!
一句话串口不好用,大部分条件下,项目不需要那么花哨。比如串口噪声,串口溢出等错误标志位啥的能搞上的都搞上了,没必要啊。这样搞得结果就是用户必须要写一个出错了的回调函数,来错误处理,否则串口死掉,死掉的原因是HAL库串口空闲繁忙保护机制。然而错误处理没有demo,全靠摸索。不做错误处理的只要一直正常也能用,一旦出错就死了,会给人造成不稳定的假象。一个简单的串口尚且如此,不知道其他驱动有没有类似的问题。太过复杂的架构,解决问题的办法不好找,对于初级工程师来说是不可能完成的任务。总的来说HAL库任然需要实际项目的考验,以及应用案例的支持。
完--撒花鼓掌
点评
点评
不过总体上来说,HAL确实提升了开发的效率,省的不停滴查手册
点评
接入HAL的,只是修改main.c和stm32f1xx_it.c 这两个文件。所以重新生成工程(或者换芯片),也不用修改自己的代码。
而且这样的分布,如果只是修改BSP里面的.c文件,只会重新编译BSP文件夹里面的不好影响到其他层。
这样的好处,就是提升编译速度。
点评
点评
点评
点评
其实我也想顺便推荐一下LL库,但是LL库目前没有在项目中使用,不敢误人子弟。
之前想用STM32F107VCT6的时候用TCP联网,看了教程也不会用,自己觉得可能用MCU做这些应用并不是太合适。
单纯的控制,GPIO,中断,CAN,I2C,定时器,PWM,串口,这些基本功能还是挺方便的
点评
点评
点评
点评
一般来说基本外设的初始化配置,手动配置出了问题在与cubemax配置的比较,找问题。
像什么LWIP,GUI,FATFS等中间件,能自己移植就自己移植,USB就算了,USB包含太多子协议,实在复杂,这个建议直接生成,然后再去改描述符啥的,一般直接生成的很难用到实际项目中。
点评