STM32新手笔记

实习的时候第一次接触到STM32板子 ,和以前用过的arduino,树莓派都有很多不同
对于嵌入式单片机也有更深一层的理解
记一下笔记也是对这几周的学习做一个理解

  1. 中文的STM32板子讲解我看的有野火和原子,野火教程和代码配的很全,注释的也比较好,每一层都加了解释,论坛上讨论的也很多,感觉如果有充足的时间从第一节课看到最后应该收获很大。野火的板子芯片是 STM32F103ZE (指南者和霸道) 还有F4和F7的板子
  2. 软件方面最开始使用的是 STMCubeMX + Atollic Truestudio
    STMCubeMX 是ST官方指定的,把芯片图片化,对每一个pin的指令都很清楚,还有时钟树也很容易理解,只是CubeMX只支持HAL 库,而绝大部分教程都是标准库,之间对于很多function和variable的定义都不太一样,容易走弯路
    Truestudio的话是公司要求的,我觉得优点就是免费。我不是很喜欢左边project explore 把所有写过的project都打开,读起来很麻烦,而且感觉?某个词的时候也没有keil方便,实时提示error也是keil做的比较好。但keil好像现在不能用作与商业使用(不免费了)
    编译stm32的语言都是C语言,一些c语言的基础还是需要掌握的。
    所以后来开始使用KEIL觉得KEIL还是比较好用的
  3. HAL 库旧版本新版本之间也有不同,我感觉不方便的地方就是新版本不能向下兼容旧版本,所以导致学习的时候很多例程跑不了走弯路。HAL库确实用起来比标准库简单许多【比如说access每一个引脚很方便】,但我觉得新手的话标准库学习基础更扎实。
  4. KEIL5 好像是STMF103和libraries有一个不支持,所以要在flash-tool——C/C++里面把HD取消,【这边还是不太懂为什么】
  5. 我做的东西和CAN BUS有关,stm32板子自带的CAN是bxCAN,不是所有的stm32系列都带,所以用的时候建议先查看一下(可以用CubeMX看,很方便)
  6. 具体CAN的话可以去看野火的例程,但是野火卖的板子是人家准备好的,里面CAN收发器各个引脚都是设置好的,自己如果拿来板子的话,是需要搭配一个CAN收发器来使用的,和一个120ohm的电阻。

这里来自于一只新加坡的留学吱,欢迎一起学习!

你可能感兴趣的:(STM32新手笔记)