STM32由于资料丰富、稳定、性价比高深得广大工程师和企业的喜爱。

现在随便在招聘平台上搜索单片机开发或者嵌入式开发,基本都要求会STM32。

我用STM32也有很多年了,基本上是围绕着F103、F030系列来做产品,对这个芯片的学习深有感触。

很多新手入门stm32都感觉很复杂,几百个寄存器,复杂的内核结构,详细的数据手册都几百页。

再加上软件是基于固件库开发,其中涉及到了大量的结构体、枚举、指针的应用。

如果没一定的C语言和单片机基础想快速入门还是比较困难的。

今天结合自己经历和经验,来跟大家分享下自己曾经是怎么快速学会stm32的。

**

1.零基础学stm32要多久?

**
如果你不懂电路基础、不懂C语言、不懂51单片机,千万不要一上来就学STM32。

还是那句话:看起来你是走了捷径,最终你花的时间肯定更长。

Stm32的定位就是给工程师缩短产品开发周期用的,而不是给新手去学习单片机的。

因为固件库把底层的硬件驱动都写好了,你只需调库应用就行了,如果你没接触过51单片机,你可能压根都不知道单片机有寄存器的存在,而外设功能就是通过配置寄存器来实现的。

这种原理性的东西你不了解,后面每学一个外设,你可能都会产生很多疑问,为什么要这样配置?我想改配置怎么改?改了出现问题如何解决?

所以,如果按照正确的学习路径,从51到STM32,一个月的时间基本可以学完(每天8小时)。

那我总结最快的学习路径,在我以前文章有写,每个阶段学到什么程度都写的很清楚,并且给出了相应的教程和工具。

2.stm32应该怎么学?

我第一个学的单片机是51,然后就参加工作了,工作中用到了stc和nxp的,那时nxp用起来也比较痛苦,一个32位的单片机要配置寄存器来用。

后面制定新产品方案的时候,老工程师推荐用stm32干,说开发周期快,价格也比nxp便宜。

然后我就开始去研究STM32了,其实也没有刻意去学习,就买了一块开发板(主要是想要他们的例程)。

我先分析了我这个产品需要用到哪些外设,比如说GPIO、定时器、USART、ADC、中断,后面看了有个DMA也挺爽就顺势研究了下。

我的研究方法是直接用例程先在开发板跑一下,看下效果。

然后我会自己改一下例程,看下改哪个地方分别对应什么功能,比如说例程是操作PA0引脚循环高低电平切换来让LED闪烁,那会改成PB1或者其他,还有定时器中断改成20ms,30ms分别测试下。

这一波操作下来我基本就知道外设怎么用了。

Ok,至于芯片其他功能以及内核结构我就先不研究了,因为暂时用不上,先把产品干出来完成任务再说。

前前后后就花了1周时间,产品需要的外设就全部实现了,剩下的跟单片机就没关系了,而是功能逻辑处理了。

看到这里,或许很多人还是不明白,我总结一下:
1.最好先学51单片机
2.Stm32不用系统学习,当做一个工具能用起来就行了。
3.通过产品去学习一款单片机是最快的。

我看到很多人学习stm32,有1年都学不会的,也有几个月都学不会的,看的那个揪心啊!

很明显学习方法和路径不对,最常用的就那么几个外设,看着视频1周完全可以学完。

学完后,做项目一脸懵逼,无从下手是正常现象。

这不代表你单片机没学好,而是你缺乏产品的思维,不知道怎么结合外设、结合代码把功能实现。

所以,学完外设直接就干项目,最好找个经验丰富的人带着你做产品,这样成长最快,自己瞎做你接触不到别人好的代码架构和产品的思维。

虽然闭门造车,代码随便写也能实现产品功能,但是功能复杂以后,终究需要一个好的架构来支撑,否则后面会出现很多BUG可能导致你程序无限重写。

零基础学stm32要多久?stm32应该怎么学?相关推荐

  1. 0基础学python要多久-零基础自学python要多久?

    原标题:零基础自学python要多久? 如果是自学,从零基础开始学习Python的话,依照每个人理解能力的不同,大致上需要一年半左右的时间,至于能不能学好要看你自己的领悟了,至于找到工作那就不好说了. ...

  2. 0基础学java培训_零基础可以学习java课程么?零基础java培训需要多久?

    零基础可以学习java课程么? 第一.兴趣爱好是重要,总体目标很重要 在你学习培训java以前,一定要清晰自身对java是不是确实很感兴趣,還是一时头昏脑涨.终究学习培训java不仅要把握技术性,也要 ...

  3. 自学python需要多长时间-零基础自学python要多久?

    原标题:零基础自学python要多久? 如果是自学,从零基础开始学习Python的话,依照每个人理解能力的不同,大致上需要一年半左右的时间,至于能不能学好要看你自己的领悟了,至于找到工作那就不好说了. ...

  4. 零基础学习3dmax需要多久时间?

    零基础学习3dmax需要多久时间? 从2D到3D的这个趋势想必大家都是看在眼里的,那么问题来了,如果你是想尝试学习3D游戏,动漫等相关行业,那你必须要知道的前提是,你首先要知道有那些建模软件,并且适合 ...

  5. 零基础如何学习游戏3D建模,要学些什么内容?学多久?

    一.什么是游戏3D建模在大型的游戏研发公司,3D建模是一个非常大的职能,分为4个岗位:3D角色低模手绘,3D场景低模手绘,次世代角色高模,次世代场景高模.通常我们所说的3D建模是指低模手绘. 二.零基 ...

  6. 零基础学python大概要多久-零基础自学python要多久?

    前言 Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以小的给各位看官们准备了高价值Python学习视频教程及相关电子版书籍,欢迎前来领取! 如果是自学,从零基础开始学习P ...

  7. php学好要多久,零基础php自学要多久

    万事开头难,自学编程也是一样,只要能入门,在学起来就容易多了,那么零基础自学编程多久才可以入门呢,如何才能找到自学编程的门道呢? (推荐学习:PHP视频教程) 零基础自学编程也可以,关键要看是否了解编 ...

  8. 【Java】零基础学习Java需要多久?

    其实学java一般要多久?因人而异,例如一个零基础的小白自学java,每天学习8个小时来算,而且在有学习资料的基础上,每天学习,从零到找到工作,起码要半年起步,而且还要有项目经验,否则是不会有公司要你 ...

  9. 零基础如何高效学好Java?Java怎么学?

    Java编程是一个技术活,没有专业知识,那是行不通的.这也决定了程序员的不可替代性,不是你随便招一个人就可以立马开工.很多人在转行跨界去接触一个自己从来不懂的行业时往往内心充满了恐惧,也许会高估了这个 ...

  10. python零基础学难吗_零基础学习Python难吗?要怎么学Python才是最有效的?

    众所周知,Python是一种跨平台的计算机程序设计语言,也是最容易上手学习的编程语言.那么零基础学员学习Python难吗?要怎么样学Python才是最有效的?下面,我就带大家来看看如何学习Python ...

最新文章

  1. html 可调节进度条控件,jQuery简单实用的轻量级进度条插件
  2. 类变量利用Java反射获取类的私有变量值
  3. php自动配置ip,使用PHP自动PING IP
  4. 【HDU1754】I HATE IT,线段树练习
  5. 虚拟化小白对VMcpu分配的理解
  6. Nvelocity 第二章 注释语法
  7. wsdl2java 命令 服务端_使用Axis2中的工具wsdl2Java的生成客户端和服务端代码
  8. 期待了1年多了《黑客攻防实战编程》终于面世了!
  9. 出现报错Maximum call stack size exceeded
  10. java程序员待遇怎么样_上海海文告诉你Java程序员工资待遇到底如何
  11. 字段代码au_EBSCOhost数据库中,检索字段代码为TI、SO、AU分别表示的是:
  12. 安卓公交路线查询APP源码,公交换乘算法
  13. 2022年法定节假日JSON格式文件
  14. 写计算机课的作文,电脑课作文(小学生作文写不好怎么办)
  15. 胡灵 c语言,清华作业们男女主角现身
  16. 【JAVAFX UI欣赏 之 滑条频谱】
  17. 阿里云牵手行业龙头香港快运航空,支持特区数字化升级
  18. 开源pdf读取_Wallabag可满足您的开源读取后应用程序需求
  19. SMTP 与 ESMTP
  20. 【 随笔 】 为什么要写技术文章

热门文章

  1. 程序员注意了:这个微信群可以学英语,而且全程免费
  2. 刷墙(左蓝右红或同一色)
  3. Redis数据库搭建主从同步(主从概念、主从配置、主从数据操作)
  4. C语言指针表示二维数组的方法!_只愿与一人十指紧扣_新浪博客
  5. 简单粗暴的多对象目标跟踪神器 – DeepSort
  6. Winodws 10 如何安装wget
  7. 语音文件转成文字怎么转
  8. Java面向对象----封装概念
  9. install vim plugin local file offline
  10. 开源一个天气APP Build with React Native