1.去背寄存器
寄存器不用死记硬背,,当我们去使用单片机外设的时候就要去配置,千万别去记寄存器,华维单片机编程的导师做开发这么多年了,一个寄存器都记不住。
何况,单片机的寄存器非常多,你也不知道怎么使用,根本也记不住寄存器的用途。
单片机完成一个具体的功能涉及到哪些寄存器,都会有例子给出,有些单片机,生产厂家也会给出相关的子程序,你只需要调用就可以。
等你把这些基础知识学完以后,几乎可以完成任何单片机程序的编写。根本就不要学去C语言的高级用法,即使你用C语言的最基础的语句能够完成程序的编写,底层运行的机制是学习重中之重!
等你积累自己编写一定的代码量以后,你再回过头去学习C语言的一些高级功能,你会觉得昔**仰视的高峰不再。
现在网上的普遍现象,有些自以为很牛X的老鸟人建议直接越级学stm32单片机,很多人会学得很困难,理解上很有偏差,不排除有些人天赋异禀可以不必完全弄清楚硬件结构和原理。
站在老鸟的角度,觉得stm32很简单,站在新手的角度有多难和迷茫只有自己知道。但相信大多数都喜欢单片机,就会有学单片机就学stm32的错觉!
学习51单片机的目的,主要是培养直接调试寄存器与软硬件接口bug的能力,内部结构和寄存器数量及难度都是一个新手可以接受的范围,慢慢就认识了单片机
如果对这块基础的缺失会导致你后面在学习过程中,每学到一个知识点都是一脸懵逼,导致整体知识体系是畸形的!白白浪费时间,
比如说为什么这么配置?配置怎么改?改出问题,要怎么解决,你都会绕很多弯路,你以为自己直接学stm32是走了捷径,实际花的时间更长,最后可能还学不会!
4.盲目深挖模电、数电基础知识
针对性学习,把时间花在刀刃上,明明只需要熟悉欧姆定律就能点亮一个灯,你却非要把模电数电系统学一遍才舒服。
模拟电路和数字电路属于抽象学科,要把它学好还得费点精神。在你学习单片机之前,觉得模拟电路和数字电路基础不好的话,不要急着学习单片机,应该先回顾了解所学过的模拟电路和数字电路知识。
5.盲目学习通讯协议
做单片机开发会经常接触各种协议,各种通讯协议看起来也是眼花缭乱,不知道从何下手,但是总体来说也就是:IIC、SPI、USART、单口通讯。
9.不重视项目学习,盲目学习知识
学习单片机的最终目的是做产品开发,软件和硬件相结合形成完整的控制系统。
|
|