历史上的今天
今天是:2026年01月06日(星期二)
2023年01月06日 | 单片机基础课程有哪些
2023-01-06 来源:zhihu
文章所坑。
这些文章存在的问题主要有:
1. 过于夸大这个技术所需要学的东西。
2. 推荐的学习路径不成体系。
3. 过度贬低这个行业。
很多新手,没有经验的情况下,很容易受到这些文章的误导,导致还没入门就已经放弃了。
这里,我可以肯定地跟大家说的是,即便你是初中毕业,照样也能把单片机玩的很溜。
那核心呢就是正确的学习路径+不断实践。
那正确的学习路径都包含哪些基础课程呢?
这个跟我们的定位有关,单片机开发产品一般由2个人协作完成,分别是硬件工程师和单片机软件工程师。
在我以前的文章,我一直强调我们先从单片机软件开始学习,性价比最高。
有了这个定位以后,我们的目标将更加明确,学习也更加轻松。
如果你的定位不清晰,你就会人云亦云,去死磕模电数电,去死磕微机原理,去死磕芯片手册。
这些都是你走弯路的表现,特别是模拟电路,很多人从事开发几年依然看不懂,你指望一个新手能看懂,这明显不符合逻辑。
当初我就是因为看不懂模电导致差点放弃这个行业!
下面我给大家总结以下,作为软件开发需要学习的基础课程:
1. C语言
这是必须学习,也是以后从事开发的核心技能之一,比学单片机重要的多!
2. 基础电路
单片机是针对硬件电路的编程,我们写程序最终就是控制单片机的外设,然后外设控制外围电路实现产品功能。
所以对于软件开发来说,不要求你电路基础有多么扎实,也不用你会设计,这些都是硬件工程师的工作。
对于我们而言,我们只需要看懂电路的控制原理就可以了。
基本上你能看懂市面上那些51开发板原理图和STM32开发板原理图,你基本就能胜任很多产品的软件开发了。
3.单片机
目前主流的单片机有STC 51、NXP、STM8、STM32等等。
我们前期在学习的时候先学STC的51单片机,然后学STM32,其他的到工作中用到什么单片机再针对性去学习就好了,基本上都是相同的,就是配置寄存器把单片机外设用起来。
学习技术是一个非常枯燥的过程,大多数人无法坚持,都是因为没有正确地培养自己的兴趣。
那我的建议就是前期你不用把每个细节都搞透,因为以当下经验也搞不透。
我们可以先把东西做出来,把效果展示在自己的面前,哪怕是复制别人的代码,让你看到你所学的东西原来这么牛逼,这么好玩。
这样可以满足你的成就感,同时也能培养你的兴趣,让你有动力继续学下去。
学的越多,你能做的东西也就越高级,你就会对自己越有信心。
史海拾趣
|
RS-422串行接口标准 1.平衡传输 RS-422数据信号采用差分传输方式,也称作平衡传输,它使用一对双绞线,将其中一线定义为A,另一线定义为B,通常情况下,发送驱动器A、B ...… 查看全部问答> |
|
LINUX平台的网关中如何实现四个以太网端口分别对应一个独立interface LINUX平台,主芯片通过MII接口外接了个SWITCH芯片,共四个LAN端口,现在这四个端口同属一个interface(eth0),我想把四个端口分别赋予eth0.1,eth0.2,eth0.3,eth0.4。 请高手赐教,需要修改何处代码?ethernet driver?switch driver?kernel哪部分? ...… 查看全部问答> |
|
问题如题目所示! Wince6.0 在那里定义鼠标\"长按\"下左键后会弹出与按下鼠标右键一样的功能? 具体函数应该是那些,怎么屏蔽掉? 请给些建议或指点,谢谢!… 查看全部问答> |
|
请教各位大虾,下位机移植的LwIP,上位机是PC的C++Builder,怎么实现两者的通讯。或者这么问,上位机的Socket,下位机能不能接收,怎么接收?谢谢!… 查看全部问答> |




