前面已经说到,单片机本质上是计算机,它将CPU、存储器、各种I/O接口集成在一块芯片上,通过引脚与外界联系,组成单片机应用系统。那么,单片机芯片内部到底包括了哪些部件呢?图1-6所示为官方数据手册给出的STC15F2K60S2单片机组成框图。
图1-6 STC15F2K60S2单片机组成框图
请认真阅读图1-6,结合数据手册,列出STC15F2K60S2单片机的组成部件。
想一想
1.读者是否注意到偌大的“8051”字样?8051称之为“内核”,也可理解成架构。
2.STC15F2K60S2单片机的片内资源很丰富,比传统的8051单片机,多集成了许STC单片机本质上也是8051,但属于增强型的8051。它在8051的基础上增加了许多功能强大的部件。请读者查阅资料并回答,经典的8051单片机包括哪些组成部分?多实用的部件。正如厂家所说:提升的是性能,降低的是成本。请对照图1-6,说说STC15F2K60S2单片机相对于传统的8051多了哪些资源?
3.查阅数据手册,再次解释型号STC15F2K60S2各个部分代表什么意思。
温馨提示
当你遇到一个陌生的芯片,重视并学会通过“百度”等搜索工具查找芯片的相关信息是一项基本技能。
单片机本质上是计算机,下面简要介绍其基本组成部件的相关知识。需要特别强调的一点是,这里只要求读者大致了解这些基本知识即可。相信随着后续的学习与实践,读者可以逐步领悟。
1.2.2.1 CPU(中央处理器)
CPU是计算机的核心部件。可以认为CPU有两个主要技术指标:频率与字长。
频率越高,则计算机的计算速度越快。像现在的台式计算机、手机等的CPU都是1GHz以上,而8051作为计算机中的“小麻雀”,它的运行频率一般都在几十MHz左右,运行速度远不如现在多核的CPU。
字长,简单说就是计算机一次能处理的二进制位数。字长越长则处理的能力越强,且运算精度也越高。常见的计算机字长主要有:4位、8位、16位、32位、64位。据此,计算机也分为4位机、8位机、16位机、32位机、64位机等。8051是典型的8位机,因此其处理数据的能力肯定无法与32位、64位的CPU相提并论。
虽然8位单片机在运算速度和运算能力等方面,不如高端的计算机,但其“短小精悍”,在一些简单应用中仍具有巨大的市场与空间。一般又称单片机为微型控制器,即MCU(Micro Controller Unit)。
想一想
1.请读者观察身边的电气设备,特别是家电产品。哪些电器或设备使用了单片机作为控制核心?
2.不同单位频率之间的关系
1GHz=1000MHz=103MHz
1MHz=1000kHz=103kHz
1kHz=1000Hz=103Hz
1Hz意味着1s变换1次,1000Hz意味着1s变换1000次,因此频率越高,则变换处理的速度越高。你知道STC15F2K60S2单片机的频率范围是什么?
1.2.2.2 存储器(www.xing528.com)
存储器是用来存放信息的,人们熟知的U盘、计算机硬盘、内存都属于存储器。单片机存储器分为程序存储器(ROM)和数据存储器(RAM)。STC15系列单片机的程序存储器和数据存储器是独立编址的。好比1班和2班的学号是独立的,两个班级可以都有1号而互不冲突。当今的单片机,一般都在片内集成了足够的程序存储器和数据存储器,用户根据项目需要选型后,一般不需要进行外部扩充存储容量。
程序存储器用于存放用户程序、固定的数据或表格等信息。这些信息一旦存储,断电后信息不会丢失,用户一般只能读取,而不能随意修改。当今单片机使用的程序存储器一般是Flash(闪存)型的,用户可以通过串口实现用户程序的下载与调试工作,使用起来十分方便。当然,在批量十分巨大的场合,也有可能使用ROM型的程序存储器;该类型存储器一旦烧录,就无法变更,总体成本比Flash型存储器低很多。
数据存储器,也称为随机存储器,可随机读写,但断电后信息立即丢失,一般用于存取工作过程中的一些中间变量、运算结果等。STC15系列单片机芯片内的数据存储器可分为内部RAM和外部RAM两种。内部RAM数量不大,但个个速度较快,外部RAM数量较大,但速度较慢。
STC15系列单片机具体的存储器结构,本书不作详细的介绍。读者只需要明白程序存储器和数据存储器各自的作用就可以了。到此,读者是否对型号STC15F2K60S2中的“2K”和“60”有了一个感性的认识?“2K”是指单片机内部集成了容量为2KB的RAM,“60”是指单片机内部最多集成了60KB的ROM。
温馨提示
存储器的基本存储单元是“字节”——Byte,而最小的存储单元是“位”——bit。一个字节(Byte)等于8个位(bit)。以常见的U盘为例,其存储容量都是多少个GB,其中的“B”就是字节的意思,1GB有多少个字节呢?
1KB=1024B=210B
1MB=1024KB=220B
1GB=1024MB=230B
读者是否觉得单片机内部的RAM或ROM的容量都太小了?事实上,单片机作为微型控制器(MCU),在一般应用上,STC15F2K60S2的存储器结构算是“豪华配置”了。这点在后续的学习中读者会有深刻的认识。
1.2.2.3 EEPROM Data Flash——断电保存数据Flash
EEPROM主要用于断电保存一些关键数据之用,这在现实生活中是很有益处的,比如mp3播放器,在播放中你因故需要关机,当下一次开机时,播放器会从上一次播放的点开始,这就需要在停机时保存这个“点”。要实现断电保存,为什么需要EEPROM呢?这是因为用来存放中间运算结果和变量的数据存储器RAM断电后数据将丢失,而有些数据或变量值一旦丢失,将会导致严重后果,怎么办呢?使用EEPROM就可以实现对这些关键数据的保存了。
STC15系列单片机的EEPROM本质上属于程序存储器,用户可以通过一些特殊功能寄存器的设置、操作,实现对EEPROM的读、写,继而实现对一些关键数据的断电保存。有关EEPROM的详细功能介绍与使用配置,数据手册中单列一章进行了详细介绍。
1.2.2.4 看门狗(WTD)
看门狗本质上是一个定时器,用户必须在某一个设定的时间内进行“喂狗”操作,否则这只看门狗就会“狂吠”,引起单片机复位。使用看门狗的好处是显而易见的,单片机是通过一个叫作“程序计数器(PC)”来实现程序的运行的,PC永远指向下一条将要被执行的指令的地址。试想一下,若是PC走神了或迷路了,指向非预定的指令,它将无法按预定的计划进行“喂狗”操作。一旦在规定时间内都没有进行“喂狗”操作,那么就可以认定:程序跑偏了,或陷入某个死循环,这时候只好复位单片机,“重新开始”。有关看门狗的详细功能介绍与使用配置,数据手册中单列一章进行了详细介绍。
1.2.2.5 时钟的有关概念
人们的生活需要时钟指示时间,在某个时间段做某些事。单片机也一样,需要有一个时间基准,包括CPU在内的各个功能部件,在这个时间基准下协调、有序地开展工作。这个时间基准的快慢即为“频率”,它由“时钟电路”产生。有关时钟电路在下文中有详细介绍,这里只以外部通过XTAL1和XTAL2接时钟晶体振荡器为例,介绍时钟的有关概念。
温馨提示
读者若急于认识单片机时钟电路有关内容,结合阅读下文“最小应用系统”中的时钟部分。
外部输入的时钟对应的周期称为时钟周期或振荡周期,这是单片机中最小的时间单位,好比“一分”是人民币的最小币值一样。如同现实生活中,一分钱难以买到什么物品一样,单片机中一个时钟周期也一般完成不了什么操作。单片机完成一个基本操作所需要的时间称为机器周期,它一般是时钟周期的12倍,这就是所谓的“12T”时钟模式。传统8051单片机均采用“12T”模式。举个例子,假设使用12MHz的时钟,则时钟周期为1/12μs,机器周期则是12μs×1/12=1μs。
动一动
假设时钟为6MHz,请问时钟周期和机器周期各是多少?并请查阅资料,回答什么是指令周期?
本书所介绍的STC15F2K60S2单片机为“1T”单片机,简单说就是机器周期等于时钟周期,因此单片机的速度明显提升了。如上例,假设使用12MHz的时钟,则时钟周期是1/12μs,机器周期=时钟周期=1/12μs。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。