我从事单片机开发多年,用过非常多芯片,有stc、中颖、GD、新唐、BLE、Zigbee、NXP、还有一些国产SOC等等,唯独ST的让我最省心,不管是STM8还是STM32。

省心只要是体现在稳定,只需要按照常规方法配置就不会有乱七八糟奇奇怪怪的问题出现。

之前碰到过最蛋疼的芯片,有些Flash会掉数据,有些串口不稳定,最后还得用程序来规避芯片的不人性化,明明1个小时能搞定的,硬是给这些奇怪的问题拖了几天。

如果说在样品阶段测试出来还好,如果是大批量才慢慢出现这些问题,估计老板撕了你的心都有。

所以在成本要求不是特别苛刻的情况下,我一般都会用ST的。

STM32对刚入门的不是那么友好,但是对有一点开发经验的,还是能大大缩短开发周期的。

那新手要如何去学习STM32呢?无际根据自己的经历总结出最有建设性的学习方法,如果你能适应这种学习方法,1周搞定stm32绝对没问题!

1. 改变思维
当你有系统学习stm32的时候,就注定你会走很多弯路,甚至浪费很多时间最后也学不会。

因为内部结构越复杂的单片机,你学习需要花费的时间就越多。

但是你有没有想过,你学单片机的目的是什么?

肯定不可能只是为了学单片机这么简单对吧?而是通过单片机来做产品,或者说DIY一些有趣的项目。

人的一天真正高效工作学习的时间或许8小时都不到,我们怎么利用好这8个小时直接决定你和别人的差距。

比如说我做一件事,我会拆解完成这件事我要做哪些工作,然后把最核心的环节拿出来优先做,就像做产品,先实现功能再优化细节。

同样的方法用在学习stm32也很合适,stm32在整个产品当中其实只是一个工具而已。

既然是工具,那当然是能用起来就行了,无非就是用芯片的外设而已,你系统的去研究它干嘛?

2. 正确学习姿势
我一直都比较提倡新手从51单片机学起,把精力放在c编程和培养项目思维上,与其有空去深挖单片机,还不如多做几个项目。

我刚开始是使用stc的芯片做过几个项目,然后产品需要接触到stm32。

我先把产品需要用到的单片机外设整理出来,再买一个开发板,然后把我要的外设先在开发板上跑一遍。

同一个例程我会改一些参数,比如说换个引脚、换个定时时间、换个串口,换个ADC通道,DMA通道等等。

大概知道知道怎么配置以后,我就不会再去研究别的功能了,比如内部时钟树架构,USB、CAN、FSMC这些。

照样不影响我把产品做出来,慢慢地我经验也丰富了,对stm32也熟悉了,就是这么自然而然的过程。

3. 最后总结
一个新鲜事物,我认为正确的顺序应该是先用起来,用熟了你再去研究它原理会事半功倍。

很多人说单片机很简单,没前途,玩linux才牛逼。

我个人的观点是,如果你把思维局限在单片机上确实是。

对于老手来说,单片机只不过一个工具而已,核心的还是你的编程水平和产品思维以及在这个行业的经验。

在我看来,不见得玩Arm+Linux就比单片机的工资高或者牛逼。

任何行业都有大神和半桶水,

如果你能编写一个类似于Ti蓝牙协议栈的轻量级系统在单片机中运行,你觉得技术会比Linux差吗?

或许他们对系统的理解都没你深,更别说对硬件驱动的理解了。

如何系统地入门学习stm32?相关推荐

  1. keil 查看 stm32 io波形_如何系统地入门学习stm32?

    我想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习stm32呢? 这本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考 ...

  2. STM32入门-学习STM32要掌握的内容

    STM32芯片架构 STM32F103系列芯片的系统架构如下: STM32芯片基于ARM公司的Cortex-M3内核,由ST公司设计生产,内核与总线矩阵之间有I(指令).S(系统).D(数据)三条信号 ...

  3. keil 查看 stm32 io波形_这样学习STM32单片机,从菜鸟到牛人很简单!

    我想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习stm32呢? 这本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考 ...

  4. stm32 web 参数_老司机们都是怎么学习STM32的?

    单片机用处这么广,尤其是STM32,这么火!如何快速上手学习呢? "不要去学STM32".我不是说STM32不好,而是这种为了学习单片机而去学习单片机的思路不对.你问,如何系统地入 ...

  5. 老司机们都是怎么学习STM32的?

    单片机用处这么广,尤其是STM32,这么火!如何快速上手学习呢? "不要去学STM32".我不是说STM32不好,而是这种为了学习单片机而去学习单片机的思路不对. 你问,如何系统地 ...

  6. 过来人都是怎么学习stm32的

    不要去学STM32.我不是说STM32不好,而是这种为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习STM32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么S ...

  7. 学习STM32单片机,从菜鸟到牛人就是这么简单

    我想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习STM32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考虑的 ...

  8. 老司机们学习STM32的技巧

    单片机用处这么广,尤其是STM32,这么火!如何快速上手学习呢? 你问,如何系统地入门学习stm32? 这本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的 ...

  9. 学习STM32单片机,从菜鸟到牛人就是这样简单

    想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习STM32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考虑的是 ...

最新文章

  1. 统治未来的离散式神经网络详解
  2. laravel的工厂模式数据填充:
  3. c语言可以通过malloc在栈上,C语言内部静态成员陷阱
  4. Esxi服务器虚拟化平台搭建
  5. 51nod 1574 排列转换
  6. html中foreach遍历list,foreach遍历----for(object o: list)
  7. c++ 服务 以当前用户拉起进程_渗透技巧——通过CredSSP导出用户的明文口令
  8. 2018-1-2Linux基础知识(19)vi编辑器及bash算数
  9. 苍狼敏捷软件开发团队建设指南-2-团队建设
  10. 单继承、多继承、菱形继承的虚函数表
  11. ROS2与C++入门教程-进程内(intra_process)话题发布和订阅演示
  12. 正确编译差分包签名(MTK系统)
  13. github提交时报错:remote: Support for password authentication was removed on August 13, 2021问题解决方案
  14. 小红书流量红利词「0基础」实操手册
  15. 拼多多怎么设置快捷回复
  16. Zuul动态路由及动态Filter实现
  17. 选择正确的云服务,初创企业也能服务上亿用户
  18. java计算机毕业设计高校实习实训管理系统(附源码、数据库)
  19. 隔板法详解(各种方法)(转载)
  20. 米家的扫地机器人是灰色_米家扫地机器人怎么清理灰尘盒

热门文章

  1. 爬取一万条b站评论看《工作细胞》
  2. Redis的rdb格式学习
  3. 转载,大佬关于虚拟内存与物理内存关系讲解。
  4. C语言字符串一道比较难的题!_只愿与一人十指紧扣_新浪博客
  5. ESI世界大学排名:371所内地高校上榜!
  6. 你有哪些deep learning(rnn、cnn)调参的经验?
  7. 从零开始一起学习SLAM | 掌握g2o顶点编程套路
  8. 使用计算机视觉在钢铁平面上检测焊接缺陷
  9. L-SNET:从区域定位到尺度不变的医学图像分割
  10. 11: facebook原生登录