单片机开发入坑指南

入坑前了解

什么是单片机

单片机英文名Microcontrollers,即微控制器,英文简称MCU。
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。
简单点说单片机就好比是个微型电脑,可以接收外部消息,可以处理消息,可以向外部反馈。而我们开发单片机就是从程序角度来实现消息接收、处理、反馈等功能。

为什么用单片机

  • 体积小:单片机就是颗芯片,一般都不大,甚至有些单片机需要用放大镜才能看得清;
  • 功耗低:一般的单片机大多工作电压在3.3V或5V,工作电流在几到上百毫安左右。相比手机或电脑处理器来说功耗是非常低的了;
  • 价格便宜:常见的单片机大多价格在几块钱到几十块钱左右;
  • 功能多:单片机集成的功能较多(虽然不一定强),可以大大简化电路设计,变相节省成本;

常见的单片机

  • 51/52系列单片机;
  • STM系列单片机(ST意法半导体)(它家的STM32系列低端的单片机也可以选国产的http://cn.gigadevice.com/product-category/1.html?locale=zh_CN);
  • AVR系列单片机(ATMEL);
  • PIC系列单片机(Microchip);
  • LCP系列单片机(NXP恩智浦);
  • MSP430系列单片机(TI德州仪器);
  • 瑞萨电子的单片机;

入坑学习涉及内容

内容总览

单片机开发入坑指南_第1张图片

内容说明

一般来说初学单片机最好找个教程入门(书籍、视频等)。大多数单片机的入门书籍中上图的东西或多或少都会涉及。
入门书籍包含内容一般如下:

  • C语言基础讲解(一般不包含指针,但基础的学习中也用不到;早些年的书中可能不是讲C语言的,而是讲汇编的);
  • 基本功能及外设(这部分所有单片机入门书籍中都有,入门主要学的就是这个);
  • 上层软件库(有些入门书籍中把这部分当作单片机开发的高级功能部分);
  • 电子基础(一般穿插在例程中电路说明部分,这部分对于写代码的人来说需要了解的知识很简单);
  • 系统硬件组成(一般会在入门书籍最开始或是功能及外设讲解前做简单说明,或是直接用在例程中);
  • 程序设计(这个有些入门书中有,有些书中没有);

上面几块内容中C语言是单片机开发的开发的基础,但是单片机开发中用到的C语言很简单的,不用刻意去学习,唯一需要深入一点的知识就是指针了 ,但常用的也就一个函数的指针
基本功能及外设是重点,学单片机无非就是学习这个,所有入门书籍大部分内容讲的就是这个。这块内容就是让你知道单片机具体可以做些什么,怎么做;
程序设计这块一般入门书籍要不就是非常简单的讲一下,要不干脆就没讲,这块内容在入门学习单片机时也没什么用。但你如果不懂这块,就算其它几块都学好了,一旦正式进行项目开发你也许就不知道该从何下手了,很大的原因可能就是你不知道该怎么来协调单片机中各个功能外设,怎么来处理用户事务。这就需要好好做需求分析,好好设计程序逻辑了。这块可以参考https://blog.csdn.net/hello__xs/article/details/60142492,先有个简单的了解,更详细的内容可以在需要的时候自行百度。

学习捷径

单片机开发入坑指南_第2张图片
别做梦了!学习哪有什么捷径!
开发单片机是有那么一点点考验综合能力的(还是比很多开发工作要简单的),想要学好只能别偷懒,动起手来,动起脑来。

总结

如果你不是有意向从事电子产品开发,对产品体积、功耗、价格等没有要求,或是对功能有特殊要求的话,不推荐学单片机。

你可能感兴趣的:(电子相关)