历史上的今天
返回首页

历史上的今天

今天是:2025年12月26日(星期五)

正在发生

2022年12月26日 | 如何快速的入门单片机?单片机自学教程有哪些?

2022-12-26 来源:zhihu

如何快速的入门单片机开发?百度一大堆广告,然后就是乱七八糟的文章,看的眼花缭乱。

排在最前面的是培训机构,后面就是一大堆文章。

有建议自学的,有建议报班参加培训的,有的建议先学51单片机,有的建议先学stm32。

翻了半天网页,看了很多资料,还有开源的教程,但感觉就是千丝万缕很难理清,不知所措。

我们先聊聊单片机开发通过自学容易嘛?

我是08年开始学习单片机的,第一次接触单片机,对单片机是什么没有一点概念,既不知道单片机是个啥,也不知道单片机能干啥,一片迷茫。

经过几天查资料,和实验室的同学沟通,才慢慢地对单片机有一个比较朦胧的概念。

单片机原来就和电脑的CPU一样,是电路板的核心,可以编程实现各种功能,例如点亮LED灯等。

此刻对单片机的认识就是它比较强大,比较神秘,而且学会单片机开发大有前途。

但自己不是电子信息专业的,自己可以学会单片机开发吗?相信这也是大多数自学者心中的疑问。

对自己是否可以学会单片开发还不是很有信心,也在心里反复地考虑要不要学习单片机。

最终我还是下定了决心,我要学习单片机,我要掌握单片机开发,我想自己可以独立开发电子产品。

我的专业没有单片机编程这么课程,只能通过自学来掌握单片机开发。

首先是啃教程,我借了电子信息专业同学的<单片机原理与应用>这本书,开始闷头学习单片机理论知识。

书本上的知识,大多数还是过于无趣,我大概花了4周时间,过了一遍,但因为没有基础,很多东西还是一知半解。

但过了一遍书本,我至少对单片机开发有了一个简单的认识。

通过课本我对汇编开发也有了一定的基础,但我的老师建议我学习C语言,因为汇编的移植性差,不通用等。

我又花了2个月学习C语言,那段时间,因为特别想学会单片机,所以学习劲头非常足。

C语言学习完之后,自己就做了一点小投资,买了一个51开发板和一台大屁股台式电脑。

开发板学习我大概花了3个月时间,通过C语言完成了单片机所有资源的驱动,串口、外部中断、IO输出输入,DAC,ADC,定时器等。

一不留神,自己的故事又说了一大堆!

从我的单片机学习的经历来说,感觉还是挺曲折,曾经也迷茫过,也挣扎过,也想过放弃。

自学需要有坚定的意志,还真不容易,也就说一个人最大的敌人还是自己。

对于那些正在自学的兄弟们,肯定是和我有过同样的感触,从刚开始的自信到后来的迷茫,从迷茫逐步的走向绝望,放弃。还好,我坚持过来了。

那学习单片机有没有什么好的方式和途径?

我以一个过来人的身份,给大家分享一些经验和建议。

学习单片机开发,如果可以找个老司机来带带,可以让大家少走很多弯路,就像我们无际单片机编程最近有个学员,自学了将近2年没效果。

就是因为他的学习路径不正确,也是通过开发板去学习,虽然能在开发板上把单片机外设都用起来,不过一做项目就没一点思路。

当然由于各种原因只能自学,那就看看我下面的个人建议。

第一: 下定决心

先要确定好,自己是否对单片机开发有兴趣,是否能坚持下去。

如果两天打鱼三天晒网,那就是浪费时间,学到一半还不如不学。

确定学习单片机就一定要下定决心,相信自己一定可以把单片机搞定。

第二: 在某宝上买个开发板

买个开发板,做点小投资还是非常必要的。

新手的话还是建议从52单片机开始学习。

第三: 学习单片机C语言

我经常给学员强调C语言的重要性,要求大家把C语言的基础一定要打牢固。

但并不建议买C语言教程或者书本,埋头苦干,因为从书本上学不会编程。

我们要精准地学习单片机编程开发需要的C语言知识,否则就是浪费时间。

单片机学习初级阶段,掌握单片机的基础就OK,随着基础的不断牢固,再深入的学习C语言的高级语法。


第四: 基于开发板学习单片机程序编程

对C语言有一定的基础之后,就可以正式开始单片机学习了。

单片机学习最重要的一点就是要多动手,都思考,多实践。

开发板一般都带有配套的教程,大家可以跟着教程敲代码,学理论,做实验,掌握单片机开发的基础知识。


第五: 开始项目实战

相信很多兄弟,跟着开发板学完之后,就不知所措了,不知道自己是否单片机入门了?还是不知道怎么用单片机做产品?也不知道接下来该如何继续学习?

这种发自内心的迷茫,我曾经也为此煎熬。

其实前面学习的C语言和单片机资源的驱动,都是单片机开发的基础知识。

项目实战才是单片机学习的重点,也是学习单片机的难点。

项目实战,大家可以先做一些类似于电子时钟的简单项目,也可以根据自己喜好去DIY项目,最好的还是通过实际项目去学习,像无际单片机编程提供的“无线门磁探测器”和“WIFI报警主机项目”一样。

大家如果可以自行的完成1-3个项目,那你单片机开发水平一定会有质的飞越。

以上的内容都是个人的经验之谈,希望可以帮助到大家。


推荐阅读

史海拾趣

eLED.com Corp公司的发展小趣事

eLED.com Corp是一家专注于LED(发光二极管)领域的电子公司,成立于XX世纪初。公司创始人XX先生,在半导体行业拥有多年的研发经验,他看到LED技术在照明和显示领域的巨大潜力,于是决定创立eLED.com Corp。公司初期主要致力于LED产品的研发和生产,凭借其高效率和长寿命的特点,逐渐在市场上获得认可。

为了进一步提升产品质量和技术水平,eLED.com Corp不断投入研发资金,引入先进的生产设备和技术人才。通过与高校和研究机构的合作,公司成功开发出一系列具有自主知识产权的LED产品,逐渐在行业中树立了良好的口碑。

Epitex Inc公司的发展小趣事

Epitex非常重视企业文化的建设和团队精神的培育。他们倡导“创新、协作、务实、共赢”的价值观,鼓励员工积极创新、勇于挑战。同时,Epitex还注重员工关怀和福利待遇的提升,为员工提供良好的工作环境和发展空间。

在团队建设方面,Epitex注重培养员工的团队协作能力和沟通能力。他们定期组织团队活动和培训项目,增强团队的凝聚力和向心力。这种积极向上的企业文化和高效的团队协作为Epitex的持续发展提供了有力保障。

APX Technologies公司的发展小趣事

面对日益激烈的市场竞争,APX Technologies积极寻求与其他企业的合作。公司与一家知名的电子设备制造商达成战略合作协议,共同开发一款具有创新功能的新型智能手机。这款手机的成功上市不仅提升了APX Technologies的品牌知名度,也为其带来了可观的利润。

Aimtec公司的发展小趣事

Aimtec公司自成立以来,一直致力于电子转换技术的研发与创新。在某个关键时期,公司研发团队成功开发出一种新型的DC-DC转换器,其转换效率较市场同类产品提高了近20%。这一技术突破迅速得到了业界的关注,不仅帮助Aimtec在市场上取得了竞争优势,也为客户的产品带来了更高的性能。随着该技术的普及应用,Aimtec的品牌知名度逐渐提升,公司在电子行业中崭露头角。

Anderson Power Products公司的发展小趣事

在电子行业的发展过程中,Aimtec公司积极寻求与行业领军企业的合作机会。通过与这些企业的合作,Aimtec不仅获得了更多的市场资源和技术支持,还提升了自身的技术水平和创新能力。同时,这些合作也为Aimtec带来了更多的商业机会和发展空间,实现了双方的共赢发展。

Enable Semiconductor Corp公司的发展小趣事

Enable Semiconductor Corp公司深知人才是企业发展的核心动力。因此,公司一直注重人才的引进和培养。公司拥有一支高素质、专业化的研发团队和管理团队,他们具备丰富的行业经验和创新精神。同时,公司还建立了完善的激励机制和培训体系,为员工提供广阔的发展空间。这种以人为本的企业文化使得公司能够不断吸引和留住优秀人才,为公司的发展提供了有力保障。

问答坊 | AI 解惑

09西电的电子大赛材料清单列表(现已免费)

本帖最后由 paulhyde 于 2014-9-15 09:03 编辑 得到的09年电子大赛西电的材料清单,看清单可以猜到部分题目,希望对大家猜题有帮助。 既然大家都普遍觉得贵 我就免费发送吧。希望对统一战线的同志们有帮助! [ 本帖最后由 五月一 于 2009-8-23 ...…

查看全部问答>

一个女生用C语言写的爱情函数(搞笑下)

一个女生用C语言写的爱情函数result love(boy, girl)      {        if ( boy.有房() and boy.有车() )        {          boy.set(nothing);      ...…

查看全部问答>

超出FIFO空间的串口数据收发

大家好,正在做一个项目,通信芯片接收区FIFO大小为8word,数据收发通过调用一个函数完成,每次接收一个字节,通过调试发现,当一包数据大小在13、14个字节以内时,收发正常。现在需要通过串口做大数据量的收发,每包数据都在1000字节以上,因为我 ...…

查看全部问答>

UseEnterEsc的问题?请大家帮忙看看。

在WINCE下的触摸屏的校正程序中,我是直接调用的这个系统函数TouchCalibrate,呵呵……自己还没有想到写的方法。但是没有这个的源码,在TouchCalibrateUI_DrawMainScreen打印校准操作说明信息中,UseEnterEsc这个函数是怎么操作的?在屏幕我要显示 ...…

查看全部问答>

电脑控制车的运动

我有个这样的要求 : 在一个小车(轮式的或履带的都可以),小车上面加一个竖杆,我要用电脑来控制(最好是无线的)这个小车前后左右的水平面上360度自由运动和竖杆上下自由运动,请问大家谁做过这个东西.MSN : sunny20048@hotmail.com…

查看全部问答>

ARM高手请进。。

我在ARM中移植一段代码,因为程序比较复杂,调用层次较深,在进入某些函数语句后,函数参数丢失。 用的是瑞星微的多任务系统,谁知道这是什么问题,怎么解决。我用J-TAG调试。…

查看全部问答>

想淘一个或者置换一个STM32F4XX的板子

想好好学学STM32F4,想淘一个或者置换一个F4的板子我有的板子:LM3s811和8962的板子(原装的未开封),这两个板子是我用无线wifi路由器和一位兄弟换来的。avr和MSP430的板子也各有一个,…

查看全部问答>

2013 TI电源管理指南

本帖最后由 paulhyde 于 2014-9-15 03:19 编辑 南华大学黄智伟 分享一个资料:“2013 TI 电源管理指南”    …

查看全部问答>

6050

为什么我的6050一会可以产生角度一会就不可以了????????????? …

查看全部问答>