(预备知识)学习stm32单片机基础
数字电路和数字,模拟电路:模拟电路和数字电路属于抽象学科,要把它学好还得费点精神。
在你学习之前,觉得模拟电路和数字电路基础不好的话,不要急着学习stm32单片机,应该先回顾所学过的模拟电路和数字电路知识,为学习stm32单片机加强基础。
这方面我一般要求学员,只要能正确使用电阻,电容等元器件。
掌握二极管,三极管基本工作原理,还有一些知识比较细,你们可来问我!
计算机语言:C语言知识,没有任何编程基础的人都可以学,在我看来,接受过六年基础教育都能学会,当你能使用C语言开发应用系统就行
51单片机:最好是能有8位单片机原理的学习经历和实践经验,像我之前的文章讲到,并不是每个人都是天才,学习51单片机是stm32的预备知识!
实践能力:数字万用表会进行基本的检测,对电路的通断会判断,会使用电烙铁进行焊接等等。
二、学中做、做中学
”
不怕告诉你,十年前我的案例和新手直接跳过51去学STM32很像,后来发现是知识技能基础的问题,导致自己的知识体系畸形!
刚买来开发板的时候很兴奋,马上就想学8会,迫不及待下载了教程,这感觉就像是和初恋约会一样的
到后面越学越懵逼,光是简单搭建环境都花了数天,把例程下载到开发板上点亮一个LED灯以后小有成就。
因为当时我没去学过Linux,完全没接触过A17核的芯片开发,开发模式完全跟单片机开发不一样。
导致我每走一步异常的艰难,最让我印象深刻的就是,不知道Linux系统是怎么跟硬件对应起来的,如果我要改IO口控制的话要怎么改?像个无头苍蝇一样
随便改一下都要编译数个小时,就是没有掌握方法,同学们!你们可不要像我一样
后来我总结了经验,首先,大致学习一下STM32单片机的英文或者中文手册,对该单片机的特点和工作原理有个大概的了解。
通过这一一步,达到基本了解或理解STM32最小系统原理、程序烧写和运行机制的目的,这就够了。
三.学以致用
从一个最简单的项目开始,例如发光二极管的控制,从而熟悉STM32应用系统开发的全过程,一步一步去体验,享受即时反馈,满足你的自我价值,找到STM32开发的感觉
再次,继续对上述的最简单项目进行深化和变通,以进一步熟悉和巩固开发过程,熟 悉开发的基本特点。例如,两个发光二极管的控制、发光时间的调整,还可以进一步推广 到通过定时器、中断等控制发光二极管。
在学的过程中,需要使用什么功能部件,就去重点学习这一部分的相关知识,慢慢积累,这样,你就慢慢入门了。也就是说,蚂蚁搬家式的学习,把难度分解,后续你随着你经验的增加,你对stm32单片机的理解也会越来越深,很多曾经的问题也会迎刃而解。
记住,学习STM32的最好方法是:动手做,Do it yourself!什么时候你开始动手做了,什么时候你就在进入和掌握STM32开发的路上了。
总而言之,宏观的角度来看,学习STM32单片机的路径都是一样的,只是大家的起点和基础不同
我这套经验是稳扎稳打的打法,当然如果你会C语言,那就先从51单片机和基础电路开始,如果你会c语言又会51单片机,又看得懂电路,就是不会做项目,那就直接去学做项目。
这也是为什么我们对每个加入华维单片机编程学员,都要先进行基础评测,再规划系统学习路径。
这是我们老鸟十年经验总结的精华,希望对你们有帮助!