在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「单片机的资料从专业入门到高级教程」,
点个关注在评论区回复“666”之后私信回复“666”,全部无偿共享给大家!!!1、先入门了51先学了89c52,20年底买了普中科技的板子,利用大二寒假学习,看他们的视频,看到了串口,然后搭建洞洞板电路做了一个手机蓝牙遥控车;开学后再学了Altium Designer,学了目前比较常见的stc15芯片,阅读芯片手册的重点章节并做了笔记,暑假搭配新学的电路做了个2.4G无线遥控车;秋季开学后偶然发现学校贴了个第13届蓝桥杯大赛的海报,惊喜地发现正好是熟悉的内容,于是决定报名,由于犹豫该报嵌入式还是单片机,我买了野火的mini开发板试着学了一下stm32,但是感觉特别难学不会,于是报了单片机开发组。然后买了官方开发板,看小蜜蜂老师的教学视频课学习,由于比赛恰好是用stc15,我正好有基础所以上手很快,新学了几个外设,就搁一边了(后来拿了个国一);之后学了stc8芯片,用官方库建立项目,适应了这种分很多文件的项目风格,然后学了个Keil自带且专门给51单片机用的操作系统——rtx51,对操作系统的任务调度过程有了直观认识,然后用这些知识做了个音乐播放器。本来想往音乐播放器方向研究的,但是发现在硬件上涉及很多模电知识,于是在寒假开始重学模电,只学到mos管就半途而废了。这两年新出的stc32g芯片我也试用了一下,然后对51的研究到此暂停。2、搁下51学stm32不久偶然接触到感兴趣的团队项目(模型控制器),被迫转32位机,认识到32位机的世界比51精彩太多了,尤其是st的生态,各种sdk工具各种高端芯片各种学习资源太多了。然后开始狠学,学stm32,学FreeRTOS,未来还想学LVGL。由于有51和RTX51的基础,32位机和FreeRTOS的入门比较轻松,反而是感觉找到合适方法的过程比学习知识本身要难。这段时间我首先是用着之前有的野火开发板,看小蜜蜂老师的HAL库+STM32CubeMX视频课,这位老师讲得很好,看完感觉大致有数了。然后继续入门,由于之前看野火的视频课没看懂,于是去看正点原子的视频课,但是发现视频课只有标准库的没有HAL库,于是开始看野火的文档。后来越看越迷糊,因为野火的HAL库教程文档对寄存器是点到为止,而HAL库对底层封装的层数太多了,对底层原理不了解就心里发虚,感觉不会用。加之跟着文档学很枯燥,于是决定跟着正点原子的视频学标准库,并淘了一个二手战舰开发板。这期间理解外设的寄存器原理,但不用掌握,在了解寄存器的基础上重点去学标准库的使用,心里踏实了不少。至此算是找到了入门的方法。因为有了51基础,加上b站视频课可以发弹幕,大家在弹幕里对于难点发表自己的看法,因此学起来很有动力,学习进度也很快。在大四上学期系统学习了正点原子的标准库教程后,之后在毕设驱使下完成了一个电池管理系统的项目,自己画了板子写了程序做了APP,至此算是入门了stm32。3、有时间有兴趣就穿插学了ESP32完成了毕设后,开始想diy一套使用显示屏无线控制车模灯声的项目,发现在这种无线领域使用ESP32是性价比很高解决方案,于是使用Arduino平台快速学习了一下ESP32。4、未来想学linux大三时期了解到嵌入式Linux这个方向,看网友推荐买了一块STM32MP157F-DK2官方开发板,尝试了一下入门,但是感觉这款开发板资料都是英文看着很累,而且资料特别少,双核的芯片结构也巨复杂,于是入门失败搁置了。最近大四毕业了,剁手又买了块韦东山的imx6ull带屏开发板,这款的芯片是单核的,感觉比双核的更适合入门,毕竟一上来不能太难容易劝退。这款开发板的资料就多多了,也有视频教程。等玩完了ESP就打算系统学习一下。我个人觉得要一步步来,挑感兴趣的优先学,只有真正接触过才知道好不好,所有的弯路都会转变成经验。