发新帖本帖赏金 3.00元(功能说明)我要提问
返回列表
打印

毕业季回眸——从入门到上路

[复制链接]
2747|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
一、初识
      其实多数人认识单片机并非51,而是8086,一款汇编语言和微机原理课程上提到的单片机,刚开始认识单片机之前,对于PC、微机、单片机、FPGA的概念根本分不清楚,更别说ARM、X86了。
     对于本科学习物理专业的我,我对电子技术感兴趣,应该从模拟、数字电子技术实验课说起,当用各种门电路、555、138等芯片搭起来一个个实验时,哇,那感觉爽。当用模拟器件搭建各种信号发生器的时候,当用示波器观测波形的时候。。。满满的回忆。

      曾几何时,用汇编语言在DOS环境下,使电脑发出BEEP的声音,读取按键的键值、写出第一个hello wolrd时。。。我开始探究硬件。
     第一块开发板是学校发给我的,对于单片机一无所知的我参加了学校组织的TI比赛,简单的培训之后我学会了MSP430单片机的下载、调试、开发,但是依然很多概念不懂,例如上拉电阻、PWM,串口等,好多新奇的概念。算是有了一个初步的认识,后边由于考研的原因,没有去理会。
二、入门
     读研期间开始接触嵌入式开发,当导师仍给我一个CC2530的无线项目时,确实有些懵逼的,虽然我从来都没有上手过单片机的东西,大四还买了一个51的开发板,现在仍然是全新的,我从图书馆借了一本51的书,看了一个星期的书,觉得51作为一个单片机来说,确实没有多少东西,怎么说呢:
1、首先51的架构和指令部分与微机原理基本差不多,所以理解起来差不多。
2、寄存器数目很少,汇编课程上学过,所以理解起来很简单。
3、晶振电路不复杂,很好理解。
4、GPIO、定时器、串口外设简单,一看就懂。
5、难点是中断,但是微机原理课上我弄得比较清楚。
6、其他外部电路随用随学,不需要全部掌握。
所以,我学了不到一星期,就直奔项目了,由于CC2530是51核,再加上实验室师兄带着,所以基本上完成了第一个嵌入式项目,算是入门了。
备注:一个星期学51确实有吹比的成反,但是我要提一下,随着我的入行,我觉得学习一款单片机不会超过3天,51的课程看这挺多的,但是如果分解来看,真正单片机的东西有多少呢?只有三个、架构、指令、寄存器而已。
真正学起来比较费力的可能就是外设了,但是学习外设,真不建议局限在51单片机,串口、IIC、SPI、定时器、USB等等这些外设都是一样的,我非常讨厌用模拟的方式做外设,现在芯片种类那么多,为什么不重视选型和稳定性呢?
三、上路
   对于学习单片机的朋友,我觉得要想深入单片机,仍然需要学习ARM,先从ARM学习,然后开始再学习A或M系列,STM32系列是个好东西,但是我觉得一开始还是先把ARM弄懂,读研期间接触了一些STM8、STM32、PIC等芯片的项目,当然也接触了国产的GD、新唐等芯片,也算是上路了。
   我觉得对于学习单片机来说,会有这样的误区:
1、刚开始学51觉得很困难,就觉得单片机开发都很难,其实这是错误的,不要以学习某一款单片机为目的,要有全局观,所以我建议学单片的人,首先要学会微机原理和接口技术、数字、模拟电子技术。
2、不要上来学习STM32,先学习ARM,还是要打好基础。
3、外设这个东西其实就是寄存器、时序的东西。
刚开始学习的时候,总会局限在一块开发板上,有些东西可以跳过,,,
毕业了,虽然不在做单片机的东西了,但是单片机的流程仍然是这样。。
选型-------评估--------原理图--------------画板---------写驱动、测试----------上系统或写代码--------各种调试---------测试-----产品。
就这样吧。




打赏榜单

巧克力娃娃 打赏了 3.00 元 2017-08-23
理由:参与奖

相关帖子

沙发
dirtwillfly| | 2017-7-3 00:08 | 只看该作者

使用特权

评论回复
板凳
@若水| | 2017-7-3 13:16 | 只看该作者

使用特权

评论回复
地板
cjyhui000| | 2017-7-4 14:08 | 只看该作者
楼主谈到了学习之路,希望新手都可以学习一下,感谢楼主!

使用特权

评论回复
5
巧克力娃娃| | 2017-7-5 09:54 | 只看该作者
看的出来lz是个很擅长掌握学习方法的人,膜拜!

使用特权

评论回复
6
lxyppc| | 2017-7-6 12:36 | 只看该作者
楼主学得快是因为有汇编语言和微机原理这两门课的基础
能学好这两门课的前提是数字电路
楼主有一个好学校,这点已经超越很多人了

使用特权

评论回复
7
wqiang_qdu|  楼主 | 2017-7-15 12:42 | 只看该作者
cjyhui000 发表于 2017-7-4 14:08
楼主谈到了学习之路,希望新手都可以学习一下,感谢楼主!

多调几个BUG,经验会刷的比较快。

使用特权

评论回复
8
wqiang_qdu|  楼主 | 2017-7-15 12:44 | 只看该作者
巧克力娃娃 发表于 2017-7-5 09:54
看的出来lz是个很擅长掌握学习方法的人,膜拜!

过奖了,不过我是学物理出身的人,比较在意理论基础,有的人可能一开始上手就去调程序,不太注意原理和细节,所以容易出错和茫然。

使用特权

评论回复
9
wqiang_qdu|  楼主 | 2017-7-15 12:46 | 只看该作者
lxyppc 发表于 2017-7-6 12:36
楼主学得快是因为有汇编语言和微机原理这两门课的基础
能学好这两门课的前提是数字电路
楼主有一个好学校, ...

我感觉和学校没有关系,现在资源都很多,大学里都很自由啊,而且还有慕课之类的学习网站,现在知识应该没有壁垒了

使用特权

评论回复
10
小将wzj| | 2017-11-16 15:17 | 只看该作者
学习了

使用特权

评论回复
11
ethanchenmin| | 2017-11-19 08:22 | 只看该作者
谢谢分享!

使用特权

评论回复
12
guokw| | 2017-11-26 01:27 | 只看该作者
不要上来学习STM32,先学习ARM,还是要打好基础。



arm,stm32  军!!!

使用特权

评论回复
13
cactus0117| | 2018-1-3 15:48 | 只看该作者

使用特权

评论回复
14
zqx1000| | 2018-4-10 21:30 | 只看该作者
kankan

使用特权

评论回复
发新帖 本帖赏金 3.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

101

帖子

1

粉丝