首页 理论教育 单片机最小应用系统的组成方案

单片机最小应用系统的组成方案

时间:2023-06-28 理论教育 版权反馈
【摘要】:所谓单片机最小应用系统,简单说就是能够让单片机“活起来”的“最低要求”。一般的,单片机最小应用系统必须包括电源、时钟电路、复位电路等三个基本要素。

单片机最小应用系统的组成方案

所谓单片机最小应用系统,简单说就是能够让单片机“活起来”的“最低要求”。一般的,单片机最小应用系统必须包括电源、时钟电路、复位电路等三个基本要素。

1.3.1.1 电源

单片机其实就一块芯片,芯片要工作,必须给它提供电源。当前,常见的单片机电源电压有两种:DC 5V和DC 3.3V,且都允许电压在一定范围内变动,即所谓的“宽电压”。本书所用的STC15F2K60S2单片机使用DC 5V电源。由前面的学习可知,对PDIP40封装而言,引脚号为18和20的两个引脚分别用于接电源正极和电源负极,具体接法如图1-7所示。

978-7-111-55685-5-Chapter01-9.jpg

图1-7 STC15F2K60S2单片机电源接法

注:1mil=0.0254mm。

温馨提示

读者在使用某个芯片时,务必非常清楚其引脚分布,避免出现错误

1.3.1.2 时钟电路

单片机有多个不同的部件,要实现在CPU统一管理下有序工作,就需要有一个统一的“时钟”,好比阅兵,若步调不一致,整个队伍势必“凌乱”。单片机的时钟是一个非常重要的概念,它直接影响到CPU工作的速度,时钟频率越高,则意味着CPU工作得越快,在同样的时间内,就可完成更多的工作(执行指令、处理数据等)。

STC15F2K60S2单片机有两个时钟源可供选择:内部高精度R/C时钟和外部时钟(外部输入的时钟或外部晶体振荡产生的时钟)。使用外部时钟时,常见的是通过XTAL1和(或)XTAL2两个引脚,常见的外部时钟源接法如图1-8所示。

978-7-111-55685-5-Chapter01-10.jpg

图1-8 8051外部时钟源

想一想

如果要求你使用外部时钟源,请结合图1-3和图1-8,画出STC15F2K60S2单片机的外部时钟接线图并给出详细的器件参数值。可参考数据手册。

考虑到STC15F2K60S2单片机内部集成了高精度的R/C时钟,我们推荐使用单片机内部集成的时钟。如官方所介绍的,内部集成了高精度R/C时钟(±0.3%),±1%温漂(-40~+85℃),常温下温漂±0.6%(-20~+65℃),时钟在5MHz~35MHz宽范围可设置,可彻底省掉部晶振。那如何设置我们需要的时钟呢?

用户在使用STC-ISP软件下载程序时,有一个选项进行内部R/C时钟的选择与设置,具体如图1-9所示。

温馨提示

图1-9所示的STC-ISP软件,读者在后续学习中将会经常使用。

978-7-111-55685-5-Chapter01-11.jpg

图1-9 内部R/C时钟选择

用户设置的R/C时钟称为主时钟,与单片机的系统时钟SYSclk不一定完全一致。两者之间的关系如图1-10所示的时钟结构。

978-7-111-55685-5-Chapter01-12.jpg

图1-10 时钟结构

其中,CLKS2、CLKS1、CLKS0三个位有23=8个组合(2的三次方),分别对时钟进行了不同的“分频”操作。在单片机复位后,即默认情况下,CLKS2、CLKS1、CLKS0三个位都是0,这时系统时钟等于主时钟。在一般情况下,我们无需设置时钟分频,即保持系统时钟等于输入的主时钟。因此,由于是初学,读者完全可以认为没有这个功能。(www.xing528.com)

但为保持内容的连贯性,这里简要介绍下CLKS2、CLKS1、CLKS0三个位。这三个位属于特殊功能寄存器——时钟分频寄存器CLKDIV,地址97H,8个位的定义分别如下所示。在后续定时器/计数器章节将进一步介绍CLKDIV寄存器。

978-7-111-55685-5-Chapter01-13.jpg

想一想

若设置主时钟(内部R/C时钟)为12MHz,设置CLKDIV寄存器的CLKS2、CLKS1、CLKS0三个位分别为010,则系统时钟等于多少?

温馨提示

所谓特殊功能寄存器,可以认为是具有特殊功能的部门,CPU是总指挥,比如我们学校的水电科在南楼1楼。对应地,时钟分频寄存器的功能就是可以进行时钟分频,其地址为97H(这里的H代表十六进制,详细介绍请见附录A)。8051单片机有多个不同的部件,每个部件都有相关特殊功能寄存器,用户可以通过设置相应的特殊功能寄存器来实现对该功能部件的设置、启动、关闭等。

1.我们可以想象一个单位有许多不同的职能部门,每个职能部门都有一些具有特定工作内容的工作人员,并且这些工作人员都有其自己的位置。对应地,一片单片机有多个不同的功能部件,比如I/O口、串行口等,每个功能部件都有一些具备特殊功能的寄存器,并且这些寄存器都有其自己的地址。

2.我们要办事,就得到相应的职能部门,找到特定的工作人员。如何找到特定的工作人员,可以直接使用他/她的名字,也可以通过他/她的地址。同理,我们要使用某个功能部件,就必须合理使用这个功能部件具备的特殊功能寄存器。而要使用这些特殊功能寄存器,可以使用它的名字,也可以通过它的地址找到这个寄存器。毫无疑问,使用名字通俗易懂,但本质上,还是通过其地址找到这个寄存器。

举个例子,比如我们使用并行口P0。怎么办呢?查阅附录C特殊功能寄存器表,可以知道,P0口的地址是80H。因此只要找到80H这个特殊功能寄存器的地址,就可以对P0口进行读写操作了。后续我们将会介绍,单片机有个头文件,将特殊功能寄存器都进行的声明,用户只要直接使用它们的名字即可。如P0口,用户无须理会它的地址80H,而直接使用“P0”这个名字即可。后续我们将会介绍头文件,使用了头文件后,我们一般只使用特殊功能寄存器的名字“符号”即可。

1.3.1.3 复位电路

复位(RESET)是大多数数码产品都有的功能,包括我们常用的台式计算机或笔记本。复位即初始化,通过复位操作可实现从一个固定的“原点”开始工作。那么在什么情况我们会进行复位操作呢?一般地,开机启动设备时,以及设备死机时,我们要对它进行复位操作,“重启一下”。对单片机而言,复位之后所有的特殊功能寄存器都将恢复为确定状态的“初始值”,这样用户就能够从一个“确切的点”开始使用单片机。8051单片机复位后,大多数特殊功能寄存器将恢复到确定的状态,这样用户就可以从这个“确定的”状态开始工作。

动一动

1.请读者查阅数据手册,回答:当STC15F2K60S2单片机复位后,并行口P0~P3处于什么状态?程序计数器PC呢?

2.【提高题】请问P0~P3寄存器是多少位的?各是如何编号的?

3.【提高题】如果要使用定时器/计数器中的T0,并且开放T0中断,请你找出相关特殊功能寄存器,并解释它们各自的功能。

STC15F2K60S2内部集成了高可靠复位电路,即MAX810专用复位电路,而且可选择增加额外的复位延时180ms,无需使用外部复位电路。这里我们也推荐使用内部高可靠的复位电路,具体配置如图1-11所示。

978-7-111-55685-5-Chapter01-14.jpg

图1-11 STC-ISP软件“上电复位”配置

想一想

对传统8051单片机而言,引脚RST为复位引脚。当RST引脚输入不少于24个机器周期的高电平时,可实现单片机的复位操作。如果要求使用外部复位,请通过查阅数据手册、网络资源,在下面的框中给出STC15F2K60S2单片机外部上电复位电路图

978-7-111-55685-5-Chapter01-15.jpg

1.3.1.4 搭建最小应用系统

我们已经知道,单片机最小应用系统,需要电源、时钟电路、复位电路等基本要素,而STC15F2K60S2单片机内部集成了高精度的R/C时钟和高精度的复位电路,因此我们可以省略掉外部时钟电路和外部复位电路,只需接上电源就构成了“最小应用系统”。请读者在下面的框中画出STC15F2K60S2单片机的最小应用系统。

978-7-111-55685-5-Chapter01-16.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈