我就是零基础自己学的单片机C语言,年龄大,没有老师,大学是化学类的专业。十年前买过普中的开发板,跟着学了不到一个月就放弃了,主要问题是没有应用场景,能听懂但记不住。大概三年前又重新开始学习,依然用的普中的开发板,一个月以后,再次放弃,原因和之前一样。然后开始尝试各种开发板,正点原子,郭天祥,野火。。。。。效果都不太好。但是不管效果好不好,只要在不断学,就会不断进步。后来听很多人推荐了江科大的课程,听了,感觉是目前学习单片机最适合零基础的人的课程,从课程设计,内容,硬件,都是完全从小白的角度出发的。听了好几遍,然后51就慢慢入门了。但是随之发现,我要用的各种电路板,90%以上都用的是STM32,于是果断放弃51,改学STM32。还是江科大的课程,有了一点51的基础,学得就很快了,几个月下来,就顺利完成了入门。
看了你的帖子,发现有几个需要重点探讨的方面:
1,我们要学的不是纯C语言,是单片机C语言,虽然有共通的地方,但如果仅仅只想用好单片机,只需要先掌握单片机C语言,其实真正需要掌握的语句并没有想象那么多。
2,不要排斥开发板,到目前为止,开发板还是学习单片机最常用的工具和手段。目前现有的学习单片机C语言的课程(注意,是单片机C语言,不是C语言),开发板几乎是唯一的途径。尤其是在你手上没有现成的工程实例时,开发板的驱动各种外设的实验,就已经算是工程实例了。掌握了驱动各种外设的方法,你会发现,以后要用到的,无非也就是这些外设。IIC,串口,ADC,定时计数器,时钟。。。。。。
3,不要害怕记不住知识点,记不住只有一个原因----你不够熟悉它们。刚开始的时候,听一遍,两遍,三遍,还是会忘记,但是你已经进步了,只是自己还意识不到。听到7,8,9遍的时候,就很难忘记了。我刚开始听一节串口的课程,都需要一天时间,来回听几遍,再跟着教程一步步编程,中间各种错误。听到10遍以后,就很轻松,通常用两倍速度快进听,一天也能敲完7,8个课程的代码了。之后再继续练习,就已经完全不用听课程了,打开电脑就直接开始敲代码。
4,练习是很有必要的,差不多掌握了单片机各种外设后,就开始练习它们。别人怎么学习的我不清楚,我是买回各种小模块(比如超声波模块,测温模块,气体检测模块等等),其实这些模块基本都是用前面说的单片机外设来驱动的,练习的过程不但能重温学过的知识,还能实现一些小功能,满满的成就感。 |