根据我自己的学习经历,谈一谈自己的看法。

什么是好的单片机网课?这个问题是仁者见仁,智者见智的问题。但是还是推荐一下我认为的一个比较全面系统的网课:





51学堂python 51学堂怎么样_单片机


心得体会

当时自己也没什么经验,跟着实验室的学长的路走,最初是看郭天祥的书和视频,学到中断就放弃了,太枯燥。知识跳跃性太大,不够全面,很多东西并不理解,就是跟着敲代码,敲完就忘了,自己又写不出,懵懵懂懂地开始做巡线小车。

刚好这时接触了Arduino,如获至宝,就把51放一边了。Arduino对于单片机的学习帮助并不大,但是它可以让你快速实现自己的想法,锻炼你的整体思维,而不是不停地跟实现细节死磕(你拿着砖头砌墙就好了,不必纠结砖头是怎么烧的)。你的应用技能和创造欲望可能会空前的高涨,这个才是有助于你的学习的。

你有什么有单片机或开源硬件做的有意思的作品吗?


51学堂python 51学堂怎么样_逻辑分析_02


当你能熟练的实现自己的想法的时候,这个时候你会开始追求细节与性能,这个时候你已经不再满足于Arduino给你提供的开发环境了,不再想雾里看花的感觉了。此时正是系统学习单片机的好时候,然后在学习的过程中你也不会觉得枯燥,反而时刻会有启发,原来是这样。而我也是此时开始系统学习51单片机,此时才能熟练运用,理解了是怎么回事儿。

LabVIEW 直流电机控制


51学堂python 51学堂怎么样_上位机_03


知识基础

没错学习很多东西都是需要基础的,当然硬着头皮学也是没问题的。但是你会有很多的不理解,打消你的积极性,不停地遭受挫折。

学单片机数电、模电、编程技能是基础。不懂数电、模电,你不但单片机内部的外设结构你看不懂,外围电路你也会一头雾水。即使是用做好的,那么出了问题你又该怎么调试定位错误源呢?更不用提自己修改、设计外围电路了。你想都没地方想。

编程并不仅仅是C语言就够了,你可能需要很多的其他语言工具来帮助你更好地使用单片机。如上位机软件(LabVIEW、C#),算法仿真(MATLAB、Simulink),测试脚本(Python)。这些都是非常高效的工具,也能帮你提升编程思维,接触到其他的一些概念。当然这个不是要求你提前掌握,而是逐渐的知道并用起来。

上位机跟嵌入式系统有何关系?

单片机的学习不是一台电脑,一个开发板,跟着视频和书走就行的,你还需要各种工具。最基本的:万用表,很多时候你处理的是数字信号。所以你需要逻辑分析仪,调试、分析。有时候逻辑分析仪也不够用。可能会牵涉到数字信号不不达标,回到了模拟部分,这时候逻辑分析仪抓瞎。你只能用示波器了。所以熟练操作和应用这些设备能解决很多问题,避免很多麻烦。

最后

单片机真的是只个工具,用起来就好了。希望我说了这么多没有打击你的积极性,而我引用了自己的一些回答与文章仅是想说明单片机其实也可以这样学、这样用,学单片机仅是一个媒介、工具,我们可以借此来实现我们自己的想法。这个才是作重要的。

专业知识,才是核心。当你能熟练的操作单片机的时候,你才会发现,你最终面对的还是专业问题,而不是单片机。(比如我是学控制的,控制理论、信号处理、数学才是我的核心内容)