很多人从51或者Arduino学习完,准备开始接触其他单片机的时候,都会听说STM32的大名。STM32是一款32位的单片机,目前来说应用市场很广泛。不过初次接触可能会有很多的不理解,下面说说我自己的心得。
一、首先你可以试着接触STM8,接触一段时间的STM8之后再学习STM32就变的更容易理解了。stm8不需要复杂的工程和多文件
二、工程结构:关于stm32的工程在我的另一篇博文里有说明,感兴趣的可以去看看。先弄明白这么多的.c和.h是干什么的,才能理解这些工程的原理
三、不建议接触正点原子:不知道大家有没有这种体会,正点原子的程序工程都写的特别乱。
我给初学者的建议是从led的工程里逐渐增加按键,延时,定时器等功能。但是正点原子的工程拆分性极差:大部分工程都必须用到system里面的三个程序(delay、sys、usart),各种库文件里面掺杂着液晶,串口等程序。初学者很难单独调用一个.c和.h的库(比如下图SIM90A.c调用了一大堆的头文件,给人感觉极乱)。这一点野火就做的比正点原子好。而且,正点原子的教程并没有教大家如何使用标准的固件库,而是教大家学习他们自己的程序,这样脱离了正点原子很多人就很难独立编程了。当然,正点原子的板子质量还是不错的。
一个库文件调用了十几个外部程序
四、推荐一本书:《疯狂的stm32实战讲学录》这本书是今日头条的粉丝推荐的,语言通俗易懂,最关键的是它会教你使用标准的库函数去写程序。而不是各种xx原子自己的风格。