一、单片微控制器、微处理器
单片微控制器(micro-controller)是将计算机的基本环节如中央处理器(CPU)、存储器、输入输出接口等集成在一起,并能协调完成独立控制、运算等工作。我们常常也叫它单片机。随着电子技术和制造工艺的飞速发展,单片微控制器行业百花齐放,并已渗入到人类生活中的各个角落。
单片微处理器(micro-processor)跟单片机有些类似,只是我们常常用它做更多的数据处理工作。电子技术发展到现在,单片机的运算能力越来越强,存储空间越来越大,外设也越来越丰富。所以单片机与单片微处理器之间的区别也越来越小。广义的讲,他们都可以叫做单片机。作为初学者,纠结这些模糊的概念没有太多的意义,我们还是把精力放在了解他们的用处和特性上面。
图一 AT89C52 8051单片机与STM32 ARM单片机
二、单片机的基本组成
单片机种类繁多,用几句话全部概括他们的组成是不可能的。这里我们只是解析一下单片机的典型组成,当然,它不代表全部。
中央处理器(Central Processing Unit,CPU):CPU是由运算器、控制器、寄存器及他们之间的总线结构组成。它完成数据的计算、指令的执行等工作,是单片机的核心。
存储器(Memory):在单片机里,存储器分为两种:RAM和ROM。RAM 用于保存代码执行过程中的暂存变量,掉电丢失(就像个人计算机的内存);ROM 保存单片机的代码,掉电不丢失(就像个人计算机的硬盘)。随着工艺的发展,现在的单片机 ROM 大部分为Flash存储器结构。
输入 / 输出: 为了与外界信息交换或者控制外围器件,单片机常常配有各种输入输出系统,如通用 I/O(GPIO)口、并行总线、各种串行总线等等,这些资源有些也称为外设(相对于CPU来说,CPU主内,他们主外)。设计电子系统时,丰富的外设都是我们可利用资源,这也是目前嵌入式系统功能越来越强大、体积越来越小的一种表现。
三、单片机分类
目前市面上单片机种类繁多,不同的角度会有不同的分类,如按照总线宽度我们可以分为8位机、16位机和32位机;按照指令集可分为精简指令集(RISC)和复杂指令集(CISC)两类;按照地址与数据空间的关系,可以分为冯诺依曼结构和哈佛结构。单片机种类繁多,我们挑几类常用的说一说。
1、MCS51及衍生单片机
MCS51是指由Intel 公司前期生产的一系列单片机的总称,如8031,8051等。我们也常常称之为8051或者51单片机。由于51单片机的专利早已过期,所以很多厂家都生产有8051内核的单片机。51单片机结构简单,易学易用,价格低廉,所以其在控制领域经久不衰,堪称经典。它也是目前高等教育中电子类专业学习最多的单片机构架。
2、AVR单片机
AVR 是1997年由ATMEL 公司研发的基于RISC的高速8位单片机。其使用简单、性能优异而且价格低廉,所以其使用量也非常大。目前 Atmel公司也对AVR做了升级,推出了32位的 AVR32处理器。
3、PIC单片机
PIC 单片机是Microchip 公司推出的8、16、32位微控制器,其基于RISC结构,由于其引入了双总线和两级指令流水结构,所以其性能较高、指令执行速度也很快。Microchip公司后续也推出了众多高性能的产品,如dsPIC等。
4、ARM单片机、微处理器
ARM(Advanced RISC Machines)是一家企业,他设计了大量的高性能、低功耗且廉价的处理器内核,并授权给世界上许多著名的半导体公司,这些公司加上自己的外围及外设,就形成了自己的 ARM 处理器。如前几年经典的ARM7、ARM9、ARM11等类的微处理器。
目前ARM 公司的新一代 Cortex 内核基于ARMv7构架,其性能极其优异;ARM 公司根据不同的应用方向把 Cortex 内核分为高性能的 A系列、面向实时应用的R系列和面向深度嵌入的M 系列。
5、DSP
数字信号处理器(Digital signal processing,DSP),是一种优化的处理器结构,它专用于复杂的数据运算。严格地讲,DSP 不能归类于单片机,但是从应用角度和微处理器产品功能已经交叉的角度来讲,我们也可以把他们归为广义的单片机范畴。目前使用较多的DSP 为 TI公司的TMS320系列、ADI 的Blackfin系列及freescale的几个系列等。
四、单片机最小系统
单片机最小系统,是指用最少的电路搭建成的可以运行的单片机系统。对于初学者来说,搭建最小系统是一个非常合适的起点。单片机种类繁多,但其最小系统几乎都包括以下几点:
单片机:选择一片合适的单片机,用于最小系统。
供电:根据单片机的生产厂商提供的技术手册,我们可以查到其供电电压,常用的供电电压如5V、3.3V、1.8V等等。供电电压是一个极其重要的特征,必须严格按照数据手册为之。
复位:为了清除RAM 存储器的随机状态及各种外设的不定状态,上电后,我们需要对单片机内部电路进行复位。复位电路是必不可少的(部分单片机内置复位电路),一般指上电复位、按键复位及看门狗复位等。
时钟电路:单片机是一步一步的执行用户编写的程序,其指令执行的步进基准为系统时钟,所以时钟电路不可少;大部分单片机使用无源晶体并配合内部振荡器完成时钟电路,但也有少部分需要有源晶振;也有一部分单片机为了方便使用和提高电磁兼容性而内置RC振荡器。
至少放置一个发光二级管:作为初学者,我们必须能明显地观测到单片机是否运行,放置一个发光二极管(LED)作为指示器,配合简单的程序设计,来激活并验证我们的最小系统。
五、《iBoard 电子学堂》包含的单片机芯片
为了照顾初学者并兼顾性能,《iBoad 电子学堂》内置了经典的 8051和最新的Cortex-M3两种单片机芯片。
8051单片机型号为 STC11L08XE,它采用 3.3V 低电压供电,并支持ISP 系统,我们可以通过 UART 接口下载可执行代码,这使得初学者很方便进入单片机的神奇世界。
Cortex-M3单片机我们采用的具体型号为意法半导体的STM32F103VCT6,其最大内部时钟为 72MHz,并达到了1.25DMips/MHz的性能。STM32包含了一流的外设(12bitADC和DAC,多个定时器、SPI总线、UART总线、I2C总线、CAN总线、USB总线等等),并集成了复位电路、低压检测电路、RC振荡器等等。
后续章节我们会专门讲解针对8051和 STM32的编程技术。
______________________________________
关于 《iBoard 电子学堂》……
《iBoard 电子学堂》是一个综合型的电子研发开发平台,适合在校学生、一线工程师及电子爱好者等。
交流方式:
官方博客:
官方论坛:
官方淘宝店铺:
QQ群:
《iBoard 电子学堂 群【A】》:204255896(500人,满) 《iBoard 电子学堂 群【B】》:165201798(500人超级群) 《iBoard 电子学堂 群【C】》:215053598(200人高级群) 《iBoard 电子学堂 群【D】》:215054675(200人高级群) 《iBoard 电子学堂 群【E】》: 215055211(200人高级群) 《iBoard 电子学堂 群【F】》: 78538605 (200人高级群)