已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机入门第3章 1/135第三章计算机系统的组成与工作原理本章学习目标理解模型机的结构及工作过程掌握单片机的内部结构和引脚功能掌握单片机I/O口的使用掌握单片机应用系统的典型构成10:15:522/1351模型机的结构及工作过程 一、模型机的结构简介模型机的主要构成?三总线(地址总线、数据总线和控制总线)?中央处理器(CPU)?存储器?I/O接口10:15:523/135CPU总线标标志地址总线AB程序数据数据总线DB控制总线CB地址译码器、指令11指令22指令33指令 44、数据11数据22数据 33、控制电路地址寄存器PC程序累加器AALU存储器标志寄存器地址译码器指令寄存器数据寄存器控制电路指令译码器地址寄存器PC程序计数器寄存器组累加器A AALU微操作信号发生器图图3-1模型机的结构10:15:524/ 13511、中央处理器的组成中央处理器(CPU)由运算器和控制器组成。 (11)运算器定义运算器是计算机中加工和处理数据的功能部件。 功能对数据进行加工处理,主要包括算术和逻辑运算,如加、减、乘、与、或、非运算等。 另外,还暂时存放参与运算的数据和中间结果。 10:15:525/135运算器组成部分算数逻辑单元ALU(Arithmetic LogicalUnit)主要完成算术、逻辑运算。 累加寄存器(简称累加器)A用于存放操作数或运算结果。 寄存器组由其它寄存器组成,主要用于存放操作数或运算结果。 器标志寄存器F存放运算结果的标志(零、正负、进位、溢出等)。 10:15:526/135 (22)控制器功能控制器用于控制和指挥计算机内各功能部件协调动作,完成计算机程序功能。 10:15:527/135控制器组成器程序计数器PC(Program Counter)用于存放将要取出的指令地址,指令取出后,其内容自动加1。 指令寄存器IR(Instruction Register)用于存放指令的操作码。 指令译码器ID(Instruction Decode)用于将指令的操作码翻译成机器能识别的命令信号。 器微操作信号发生器MOSG(Microoperation SignalGenerator)用于产生一系列微操作控制信号。 地址寄存器AR(Address Register)用于存放操作数或结果单元的地址。 数据寄存器DR(Data Register)用于存放操作数。 10:15:528/135控制器种类根据产生微操作控制信号的方式不同组合逻辑控制型存储逻辑型组合逻辑存储逻辑结合型它们的根本区别在于微操作信号发生器的实现方法不同,而控制器中的其他部分基本上是大同小异的。 10:15:529/135组合逻辑型控制器优点对于组合逻辑型控制器,其微操作信号发生器是由门电路组成的复杂树状网络构成的。 这种方法是分立元件时代的产物,以使用最少器件数和取得最高操作速度为设计目标。 组合逻辑控制器的最大优点是速度快。 缺点微操作信号发生器结构不规整,使得设计、调试、维修较困难,难以实现设计自动化。 一旦控制部件构成之后,要想增加新的控制功能是不可能的。 因此,它受到微程序控制器的强烈冲击,目前仅有一些巨型机和RISC机为了追求高速度仍采用组合逻辑控制器。 10:15:5210/135存储逻辑型控制器优点采用存储逻辑来实现,也就是把微操作信号代码化,使每条机器指令转化成为一段微程序,存入控制存储器中,微操作控制信号由微指令产生。 微程序控制器的设计思想和组合逻辑的设计思想截然不同。 它具有设计规整,调试、维修、更改、扩充指令都方便的优点,易于实现自动化设计,已成为当前控制器的主流。 缺点由于它增加了一级控制存储器,所以指令的执行速度比组合逻辑控制器慢。 10:15:5211/135PLA控制器为组合逻辑与存储逻辑结合型的控制器称为PLA控制器,它是吸收前两种控制器的设计思想来实现的。 PLA控制器实际上也是一种组合逻辑控制器,但它又与常规的组合逻辑控制器的硬连结构不同,它是程序可编的,某一微操作控制信号由PLA的某一输出函数产生。 PLA控制器是组合逻辑技术和存储逻辑技术结合的产物,它克服了两者的缺点,是一种较有前途的方法。 10:15:5212/135小结以上几种控制器的设计方法是不同的,但产生的微操作命令的功能是相同的,并且各个控制条件基本上也是一致的,都是由时序信号、操作码译码信号和被控部件的反馈信号适当组合而成。 微操作信号发生器的基本结构如图所示。 10:15:5213/135图图3-2微操作信号发生器的基本结构示意图10:15:5214/ 13522、存储器的结构功能主要用于保存程序和数据。 组成部分包含地址译码器、存储单元和控制逻辑。 10:15:5215/135存储器访问过程 (11)读操作CPU首先将地址寄存器AR的内容放到地址总线AB上上,地址总线上的内容进入地址译码器,由地址译码器进行译码,以选通相应的存储单元。 被选通的存储单元的内容就出现数据总线上,在控制信号的作用下,CPU从数据总线上读取数据到数据寄存器DR,从而完成存储器的读操作。 10:15:5216/135 (22)写操作CPU将地址寄存器AR的内容送到地址总线AB上上,地址总线上的内容进入地址译码器,由地址译码器进行译码,以选通相应的存储单元。 在控制信号的作用下,CPU将要写入的数据通过数据总线写入到选通的存储单元,完成存储器的写操作。 10:15:5217/135 二、模型机的工作过程工作过程读取指令?分析指令?执行指令?保存结果在进行计算之前,应做如下工作用助记符号指令(汇编语言)编写程序(源程序);用汇编软件(汇编程序)将源程序汇编成计算机能识别的机器语言程序;将数据和程序通过输入设备送入存储器中存放。 10:15:5218/135下面举例说明计算机程序的具体执行过程。 例如,计算7+10=?,结果在A中中。 汇编语言语句机器码注释MOV A,07H B0H07H;07送入累加器A ADDA,0AH04H0AH;10与A中内容相加,结果在A中HLT F4H;暂停10:15:5219/135假设上述程序在存储器中的存储格式(设程序从00H开始存放)如图所示。 地址存储内容00H B0H01H07H02H04H03H0AH04H F4H图图3-3示例程序机器码在存储器中的存储格式10:15:5220/135读取指令阶段的执行过程如下CPU将程序计数器PC的内容00H送地址寄存器AR。 器程序计数器PC的内容自动加1变为01H,为取下一条指令作好准备。 器地址寄存器AR将00H通过地址总线AB送至存储器地址译码器译码,选中00H单元。 CPU发出“读”命令。 所选中的00单元的内容B0H由存储器送至数据总线DB上上。 10:15:5221/135经数据总线DB,CPU将读出的内容B0H送至数据寄存器DR。 器数据寄存器DR将其内容送至指令寄存器IR中中,经过译码,CPU“识别”出此操作码为两字节指令的第一个字节,再取出下一个字节后得知是“MOV A,07H”指令,于是控制器发出执行这条指令的控制命令。 10:15:5222/135读取第一条指令第一个字节的示意图如图所示。 PCARALUABDRIRIDMOSG00H100H200B0H0107H0204H030AH04F4H34读命令B0H56B0H7控制信号10:15:5223/135执行指令阶段的执行过程如下CPU将程序计数器PC的内容送地址寄存器AR。 程序计数器PC的内容自动加1变为02H,为取下一条指令作好准备。 地址寄存器AR将01H通过地址总线送至存储器地址译码器译码,选中01H单元。 CPU发出“读”命令。 所选中的01H单元的内容07H读至数据总线DB上上。 经数据总线DB,读出的内容07H送至数据寄存器DR。 由控制码计算机确定读出的是立即数,并要求将它送器入累加器A中中,器所以数据寄存器DR通过内部总线将07H送入累加器A中中。 10:15:5224/135执行第一条指令的示意图如图所示。 PCARALUA BDRIRID02H101H200B0H0107H0204H030AH04F4H34读命令07H567控制信号07HMOSG10:15:5225/135执行第二条指令的取指过程与第一条相同,只是指令码地址不同。 经过对第二条指令操作码的分析(译码)得知第二条指令为加法指令,执行过程如下程序计数器PC的内容送AR。 程序计数器PC的内容自动加1并回送PC。 地址寄存器AR的内容经地址总线AB送到存储器地址译码器。 10:15:5226/135CPU发出“读”命令。 所选中的03H单元的内容0AH送到数据总线DB。 数据总线DB上的内容送数据寄存器DR。 数据寄存器DR的内容经B寄存器送算术逻辑单元元ALU的一端。 累加器A的内容送ALU的另一端。 ALU相加的结果输出到A。 10:15:5227/135执行第二条指令的操作示意图如图所示。 PCARALUA BIRIDMOSG02H101H200B0H0107H0204H030AH04F4H34读命令DR0AH56707H0AH11H10:15:5228/135 一、单片机的内部结构单片微型计算机(简称单片机)在一片芯片上集成了前述微型计算机的功能结构,有些单片机不仅集成了CPU、存储程序和数据的存储器、I/O接口、定时/计数器等常规资源,而且还集成了工业测控系统中常用的模拟量模块。 2单片机的结构10:15:5229/135下面以目前市场上常见的8051内核单片机STC12C5A60S2为例,说明单片机的内部结构。 STC12C5A60S2单片机集成了以下资源增强型8051内核60KB Flash程序存储器1KB数据Flash1280B RAM2个16位定时/计数器至多44根I/O口线2个全双工异步串行口(UART)高速同步通信端口(SPI)8通道10位ADC2通道PWM/可编程计数器阵列/捕获/比较单元(CCP,Capture/Compare/PWM)MAX810专用复位电路和硬件看门狗。 10:15:5230/135单片机产品8051内核是Intel8051系列单片机的基本标准,许多参考书上将这种单片机称为MCS-51系列单片机。 MCS-51系列单片机的典型产品为8051,它有4K8ROM,128字节RAM,2个16位定时/计数器,4个个8位I/O口口,一个串行口。 纪二十世纪80年代,Intel将8051内核转让或出售给几家著名的IC厂商,如如Philips,Atmel等等。 这样,8051单片机就变成众多制造厂家支持的,发展成为上百个产品的大家族。 晶最常用的宏晶STC系列单片机,Atmel公司的AT89系系等列等51系列,等等。 是只要是8051内核的单片机,它们的最基本结构是相同的,并且,指令系统完全兼容标准准8051单片机。 10:15:5231/135STC12C5A60S2单片机的内部结构框图如图所示。 RST定时和控制逻辑RAM地址寄存器RAM片内RC振荡器电源监控(上电复位、掉电复位)可配置I/O口P0P4可配置I/O口P5程序FLASH程序地址寄存器缓冲器堆栈指针PC增量器PCDPTR硬件看门狗(WDT)8通道高速A/DSPI2路PWM/PCA/CCU捕获/比较单元指令寄存器可配置振荡器ALUPSW中断、UART、定时器逻辑XTAL1XTAL2B寄存器ACCTMP2TMP11K字节EEPOMCPU时钟ALE10:15:5232/135STC12C5A60S2单片机的内部资源中央处理器(CPU)程序存储器(Flash)数据存储器(RAM)EEPROM定时/计数器I/O接口通用异步串行通信接口(UART)中断系统SPI接口高速A/D转换模块PWM(或捕获/比较单元)看门狗电路电源监控片内RC振荡器等模块几乎包含了数据采集和控制中所需的所有单元模块,可称得上一个片上系统(SOC)10:15:5233/ 1351、CPU结构单片机的中央处理器(CPU)由运算器和控制器组成。 ( (1)运算器以8位算术/逻辑运算部件ALU为核心,加上通过内部总线而挂在其周围的暂存器TMP 1、TMP 2、累加器ACC、寄存器B、程序状态器标志寄存器PSW以及布尔处理机组成了整个运算器的逻辑电路。 10:15:5234/135算术逻辑单元ALU用来完成二进制数的四则运算和布尔代数的逻辑运算。 累加器ACC又记作A是一个具有特殊用途的8位寄存器,在在CPU中工作最频繁,专门用来存放操作数和运算结果。 寄存器B是专门为乘法和除法设置的寄存器,个也是一个8位寄存器,用来存放乘法和除法中的操作数及运算结果,对于其他指令,它只作暂存器用。 程序状态字(PSW)又称为标志寄存器,一个个8位寄存器,用来存放执行指令后的有关状态信息,供程序查询和判别之用。 10:15:5235/135PSW中有些位的状态是在指令执行过程中自动形成的,有些位可以由用户采用指令加以改变。 PSW的各位定义如下所示位号D7D6D5D4D3D2D1D0符号CY ACF0RS1RS0OV F1P10:15:5236/135CY(PSW.7)进位标志位当执行加/减法指令时,如果操作结果的最高位D7进出现进/借位,则则CY置置“1”,否则清“0”。 执行乘除运算后,CY清零。 此外,CPU在进行移位操作时也会影响这个标志位。 位号D7D6D5D4D3D2D1D0符号CY ACF0RS1RS0OV F1P10:15:5237/135AC(PSW.6)辅助进位标志位当执行加/减法指令时,如果低四位数向高四位数产生进/借位,则则AC置置“1”,否则清零。 位号D7D6D5D4D3D2D1D0符号CY ACF0RS1RS0OV F1P10:15:5238/135F0(PSW.5)用户标志0。 该位是由用户定义的一个状态标志。 可以用软件来使它置“1”或清“0”,也可以由软件测试F0控控制程序的流向。 F1(PSW.1)用户标志1。 该位是由用户定义的一个状态标志。 与与F0类似,可以用软件来使它置“1”或清“0”,也可以由软件测试F1控制程序的流向。 位号D7D6D5D4D3D2D1D0符号CY ACF0RS1RS0OV F1P10:15:5239/135RS1,RS0(PSW.4PSW.3)工作寄存器组选择控制位,其详细介绍见后续内容。 OV(PSW.2)溢出标志位。 指示运算过程中是否发生了溢出,在执行指令过程中自动形成。 位号D7D6D5D4D3D2D1D0符号CY ACF0RS1RS0OV F1P10:15:5240/135P(PSW.0)奇偶标志位如果累加器ACC中1的个数为偶数,P=0;否则P=1。 每个指令周期都由硬件来置“1”或清“0”。 在具有奇偶校验的串行数据通信中,可以根据P设置奇偶校验位。 位号D7D6D5D4D3D2D1D0符号CY ACF0RS1RS0OV F1P10:15:5241/135布尔处理机是单片机CPU中运算器的一个重要组成部分。 功能为用户提供了丰富的位操作功能,有相应的指令系统,硬件有自己的“累加器”(即进位位C,也就是CY)和自己的位寻址RAM和I/O空间,是一个独立的位处理机。 大部分位操作均围绕着其累加器进位位C完成。 对对任何直接寻址的位,布尔处理机可执行置位、取反、等等于于1转移、等于0转移、等于1转移并清“0”和位的读写操作。 在任何可寻址的位(或该位内容取反)和进位标志C之间,可执行逻辑与、逻辑或操作,其结果送回到进位标志C。 10:15:5242/135( (2)控制器控制器是CPU的大脑中枢,包括定时控制逻辑、指令寄存器、译码器、地址指针DPTR及程序计数器PC、针堆栈指针SP、RAM地址寄存器、16位地址缓冲器等。 10:15:5243/135程序计数器PC是一个16位的程序地址寄存器,专门用来存放下一条需要执行的指令的内存地址,能自动加1。 当当CPU执行指令时,根据程序计数器PC中的地址从存储器中取出当前需要执行的指令码,并把它送给控制器分析执行,随后程序计数器中加的地址自动加1,为以便为CPU取下一个需要执行的指令码做准备。 当下一个指令码取出执行后,PC又自动加1。 这样,程序计数器PC一次次加1,指令就被一条条执行。 10:15:5244/135堆栈主要用于保存临时数据、局部变量、中断或子程序的返回地址。 STC12C5A60S2单片机的堆栈设在内部RAM中中,是一个按照“先进后出”规律存放数据的区域。 堆栈指针SP是一个8位寄存器,能自动加1或减1。 当数据压入堆栈时,SP自动加1;数据从堆栈中弹出后,SP自动减1。 复位后,为寄存器默认值为07H,在堆栈区在08H开始的区域。 用户通常将堆栈区域用指令设置在内部RAM的30HFFH之间。 10:15:5245/ 13522、存储器的结构STC12C C55A A60S S22结构特点程序存储器和数据存储器的寻址空间是分开的。 结构划分片内集成有4个物理上相互独立序的存储器空间程序Flash存储器、数据Flash存储器(EEPROM)、内部数据存储器和外部数据存储器。 10:15:5246/135外部数据存储器内部数据存储器程序Flash存储器特殊功能寄存器低128字节内部RAMFFH80H7FH00H0000H03FFH03FFH0000H60KBF000H0000H1KB程序Flash存储器数据Flash存储器1024字节扩展RAM高128字节内部RAM数据Flash存储器图图3-8STC12C5A60S2单片机存储器配置示意图10:15:5247/135( (1)程序Flash存储器功能存放用户程序、数据和表格等信息。 空间大小STC12C5A60S2片内集成了60KB的程序Flash存储器,地址为0000HF000H。 单片机复位后,器程序计数器PC的的内容为0000H,从从0000H单元开始执行程序。 10:15:5248/135特殊单元在程序Flash存储器中有些特殊的单元,这些单元是中断服务程序的入口地址0003H外部中断0中断服务程序的入口地址000BH定时/计数器0中断服务程序的入口地址0013H外部中断1中断服务程序的入口地址001BH定时/计数器1中断服务程序的入口地址0023H串行通信口1中断服务程序的入口地址002BH ADC中断服务程序的入口地址0033H低电压检测中断服务程序的入口地址003BH PCA中断服务程序的入口地址0043H串行通信口2中断服务程序的入口地址004BH SPI中断服务程序的入口地址10:15:5249/135使用指令读取程序存储器中保存的表格常数等内容时,使用MOVC指令。 程序Flash存储器的擦写次数为10万次以上,大大提高了芯片利用率,降低了开发成本。 10:15:5250/135( (2)数据存储器STC12C5A60S2数据存储器也称为随机存取数据存储器。 空间划分在物理上和逻辑上都分为两个地址空间内部数据存储区和外部数据存储区。 10:15:5251/1351)内部数据存储区(又称为内部RAM)256字节内部RAM,可用于存放程序执行的中间结果和过程数据。 内部RAM的地址范围是00HFFH,共共256个单元,分为三部分低低128字节RAM(00H7FH)也称为基本RAM区区。 本基本RAM区又分为工作寄存器区、位寻址区、用户RAM和堆栈区。 可以直接寻址和间接寻址。 用“MOV”和“MOVRi”形式的指令访问。 关于寻址方式和具体指令,后续内容有详细介绍。 高高128字节RAM(80HFFH)只能间接寻址。 用“MOVRi”形式的指令访问。 特殊功能寄存器(SFR)为区地址范围为80HFFH,只可直接寻址,用“MOV”形式的指令访问。 10:15:5252/135内部数据存储器地址空间分配如图所示。 0区(R7R0)1区(R7R0)2区(R7R0)3区(R7R0)0FH08H17H10H20H2FH30H通用用户RAM和堆栈区(30H7FH)可直接或间接字节寻址80HFFH只能间接寻址访问特殊功能寄存器区(80HFFH)只能直接寻址访问7FH80HFFH1FH18H位寻址区(16字节,共128位)也可以字节寻址07H00H4个工作寄存器区也可做RAM单元使用图图3-9内部数据存储器地址空间工作寄存器区位寻址区通用用户RAM和堆栈区特殊功能寄存器区10:15:5253/135工作寄存器区地址分配00H1FH共32个单元用作工作寄存器,分为四组(每一组称为一个寄存器组),每一组包括8个8位的工作寄存器,分别是R0R7。 功能通过使用工作寄存器,可以提高运算速度,也可以使用其中的R0或R1存放八位地址值,访问一个256字节外部RAM块中的单元。 另外,R0R7也可以用作计数器,在指令作用下加1或减1。 10:15:5254/135工作寄存器组的选择PSW寄存器中的RS11和RS00两位组合决定当前使用的工作寄存器组,如表所示。 可以通过位操作指令直接修改RS11和RS00的内容,选择不同的工作寄存器组。 RS1(PSW.4)RS0(PSW.3)工作寄存器组工作寄存器地址000R7R0对应的地址为07H00H011R7R0对应的地址为0FH08H102R7R0对应的地址为17H10H113R7R0对应的地址为1FH18H10:15:5255/135位寻址区20H2FH之间的单元既可以按字节存取,也可以按位存取共共128位位,地址范围是00H7FH。 RAM中的位地址如右表所示10:15:5256/135特殊功能寄存器中,直接地址可被被8整除的寄存器(了除了IP. 7、IP.6和IE.6以外)也可以进行位寻址。 特殊功能寄存器中的位地址如右表所示10:15:5257/135用户RAM和堆栈区内部RAM中的30H7FH单元是用户RAM和堆栈区。 个一个8位的堆栈指针SP,并且堆栈区只能设置在内部数据存储区。 当有子程序调用和中断请求时,返回地址等信息被自动保存在堆栈内。 设置SP初值单片机复位以后,SP为07H,指组向了工作寄存器组0中的R7,用户初始化程序都应对SP设置初值,一般设在30H以后为宜堆栈是朝着地址增大的方向生成的。 10:15:5258/135高高128字节RAM和特殊功能寄存器于对于STC12C5A60S2单片机,80HFFH既为高高128字节RAM区的地址范围,又为特殊功能区寄存器区(SFR)的地址范围,地址空间重叠,但物理上是独立的。 使用时,通过不同的寻址方式加以区分高128字节的RAM区使用间接寻址访问,特殊功能寄存器使用直接寻址访问。 由于堆栈操作也是间接寻址方式,所以,高高128位数据RAM亦可作为堆栈区使用。 10:15:5259/135除了程序计数器PC和4个工作寄存器组外,其余的寄存器都在SFR区中。 特殊功能寄存器大体分为两类一类与芯片的引脚有关。 如如P0P5,它们实际上是6个锁存器,每个锁存器附加上相应的输出驱动器和输入缓冲器就构成了一个并行口。 10:15:5260/135另一类用于芯片内部功能的控制或者内部寄存器。 如中断屏蔽及优先级控制、定时器、串行口、SPI接口、PCA/PWM模块、ADC模块的控制字、看门狗定时器控制寄存器、电源控制、累累加器A、B、PSW、SP、DPTR、ISP/IAP相关的寄存器等。 STC2C5A60S2单片机的特殊功能寄存器及其在单片机复位时的值(简称复位值)如表3-2所列。 10:15:5261/1352)外部数据存储区外部数据存储区也称为扩展RAM区区(XRAM)。 片片内集成了1024字节的外部RAM,地址范围为0000H03FFH,可用于存放数据。 注意,这里的“内部”和“外部”是逻辑上的概念,不不是指芯片内部和外部。 在汇编语言中,XRAM使用“MOVXDPTR”或者“MOVXRi”指令访问。 在在C语言中,可使用xdata声明存储类型即可。 如unsigned charxdata i=0;10:15:5262/135STC12C5A60S2单片机的外部扩展I/O端口与外部数据存储器统一编址,因此外部I/O端口的地址占用外部数据存储器的地址单元。 利用MOVX指令可以访问外部I/O端口。 10:15:5263/1353)数据Flash存储器空间大小集成了1K字节的数据Flash存储器,与程序空间是分开的地址范围0000H03FFH。 这这1K字节的数据据Flash存储器分为2个扇区,每个扇区包含512字节,对应的地址范围分别为第一扇区0000H01FFH第二扇区0200H03FFH10:15:5264/135使用方法建议同一次修改的数据放在同一个扇区,不是同一次修改的数据放在不同的扇区,不一定用满。 数据Flash存储器的擦除操作是按扇区进行的。 数据Flash存储器可以作为EEPROM使用,擦写次数在10万次以上,用于保存一些需要在应用过程中修改并且掉电不丢失的参数数据。 在用户程序中,可以对数据Flash区进行字节读/字节编程/扇区擦除操作。 10:15:5265/135 二、单片机的引脚及功能 1、STC12C5A60S2单片机的引脚封装LQFP-48和DIP-40MOSI/ADC5/P1.5P1.4/ADC4/CCP1/SSP5.3P5.2P5.1SS/P4.0SCLK/TxD2/CCP1/P4.3P4.7/RSTGNDWR/P3.6CLKOUT1/T1/P3.5CLKOUT0/T0/P3.4INT1/P3.3INT0/P3.2P5.0RD/P3.7TxD/P3.1RxD/P3.0XTAL2XTAL1NA/P4.4A8/P2.0A9/P2.1A11/P2.3A10/P2.2A12/P2.4P2.5/A13P2.6/A14EX_LVD/P4.6/RST2P4.1/ECI/MOSIP2.7/A15ALE/P4.5P0.7/AD7SCLK/ADC7/P1.7MISO/ADC6/P1.6P1.3/ADC3/CCP0/TxD2P1.2/ADC2/ECI/RxD2VP4.2/CCP0/RxD2/MISOP1.1/ADC1P1.0/ADC0/CLKOUT2P0.0/AD0STC12C5A60S2243567891011121314151611817201922212423262528273029323147484546434441423940373836353433P0.6/AD6P0.1/AD1P0.5/AD5P0.3/AD3P0.2/AD2P0.4/AD4CLKOUT2/ADC0/P1.0ADC1/P1.1RxD2/EC1/ADC2/P1.2TxD2/CCP0/ADC3/P1.3SS/CCP1/ADC4/P1.4MOSI/ADC5/P1.5MISO/ADC6/P1.6SCLK/ADC7/P1.7P4.7/RSTRxD/P3.0TxD/P3.1INT0/P3.2INT1/P3.3CLKOUT0/T0/P3.4CLKOUT1/T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1GNDVP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EX_LVD/P4.6/RST2ALE/P4.5NA/P4.4P2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A81234567891011121314151617181920403938373635343332313029282726252423222110:15:5266/135LQFP-48封装STC12C5A60S2单片机的逻辑符号图如图所示。 P1口STC12C5A60S2P3口INT0/P3.2INT1/P3.3RXD/P3.0TXD/P3.1CLKOUT0/T0/P3.4CLKOUT1/T1/P3.5P2口XTAL1XTAL2P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P1.0/ADC0/CLKOUT2P1.1/ADC1P1.2/ADC2/ECI/RxD2P1.3/ADC3/CCP0/TxD2P1.4/ADC4/CCP1/SSP1.5/ADC5/MOSIP1.6/ADC6/MISOP1.7/ADC7/SCLKP0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7RSTGND VP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0口WR/P3.6RD/P3.7P4口ALE/P4.5NA/P4.4RST/P4.7EX_LVD/RST2/P4.6SCLK/TxD2/CCP1/P4.3MISO/RxD2/CCP0/P4.2MOSI/ECI/P4.1SS/P4.0P5.2P5.3P5.0P5.1P5口10:15:5267/135DIP-40封装的STC12C5A60S2单片机资源除了有没有P4.0P4.3以及P5.0P5.3外外,其他资源和LQFP-48封装的STC12C5A60S2单片机完全相同。 于由于DIP封装的单片机焊接比较容易,因此,对于初学者,用最好选用DIP封装的单片机进行学习。 注意在实际应用中,设计单片机应用系统的原理图时,一般应使用逻辑符号图,以便进行电路分析,而设计应用系统的印刷电路板图时,必须使用单片机的引脚图。 10:15:5268/135引脚电源引脚外接晶体引脚控制和复位引脚输入/输出(I/O)引脚10:15:5269/135( (1)电源引脚V一般接电源的5V。 具体的电压幅度应参考单片机的手册。 GND接电源地。 10:15:5270/135( (2)外接晶体引脚XTAL1和XATL2芯片内部一个反相放大器的输入端和输出端。 通常用于连接晶体振荡器。 常见的连接方法如图所示。 XTAL2XTAL1C2C1GNDM单片机10:15:5271/135STC12C5A60S2单片机的工作时钟可以使用内部振荡器或者外部晶体振荡器(简称晶振)产生的时钟。 部出厂标准配置是使用芯片内部R/C振荡器。 常温下,5V单片机内部R/C振荡器频率是11MHz17MHz,3V单片机内部R/C振荡器为8MHz12MHz。 随着温度的变化,部内部R/C振荡器的频率会有一些温漂,制造中也会产生误差。 因此,部内部R/C振荡器只适用于对时钟频率要求不敏感的场合。 使用内部R/C振荡器时钟时,XTAL1和XTAL2引脚浮空。 10:15:5272/135使用外部晶振时,常见的连接方法与图3-14所所示的连接方法相同。 外部时钟频率在33MHz以以上时,建议使用外部有源晶振。 使用外部有源晶振时,从时钟从XTAL1脚输入,XTAL2脚必须浮空。 利用在系统编程(In-System Programming,ISP)对工具对STC12C5A60S2单片机下载用户程序时,可以在选项中设置选择使用外部晶体振荡器时钟或者使用内部R/C振荡器时钟。 10:15:5273/135( (3)控制和复位引脚ALE功能当访问外部存储器或者外部扩展的并行I/O口时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。 标准8051单片机的ALE脚对系统时钟进行6分分频输出,可对外提供时钟。 10:15:5274/135当当8051单片机时钟频率较高时,ALE脚是一个干扰源。 STC12C5A60S2单片机直接禁止ALE脚对系统时钟进行行6分频输出,彻底清除此干扰源,有利于系统的抗干扰设计。 到如果设计中需要用到ALE脚对外输出时钟,用可以利用STC12C5A60S2单片机的可编程时钟输出脚钟对外输出时钟(CLKOUT0/CLKOUT1/CLKOUT2)或或XTAL2脚串一个200欧姆电阻对外输出时钟。 STC12C5A60S2单片机的ALE引脚即便设置其有输出时,行也不是对系统时钟进行6分频输出,而是在用MOVX指令访问片外扩展器件时输出地址锁存信号。 10:15:5275/135RST当振荡器运行时,在此引脚上出现两个机器周期的高电平将使单片机复位。 如果需要单片机接上电源就可以复位,则需要使用上电复位电路。 典型的上电复位电路如图所示。 单片机RST/VPDGNDCr10uFRr10KV10:15:5276/135STC12C5A60S2单片机内部集成MAX810专用复位电路,时钟频率在12MHZ以下时,复位脚可接1K电阻再接地,也可以使用传统上电复位电路。 时钟频率高于12MHz时时,建议使用第二复位功能脚RST2(与与P4.6复用)。 10:15:5277/135( (4)输入/输出(I/O)引脚STC12C5A60S2单片机最多可以有44根I/O口线,44根I/O口线分别为P0口口(8根根)P0.0P0.7P1口口(8根根)P1.0P1.7P2口口(8根根)P2.0P2.7P3口口(8根根)P3.0P3.7P4口口(8根根)P4.0P4.7P5口口(4根根)P5.0P5.310:15:5278/1351)I/O口的工作模式4种工作模式准双向口/弱上拉,推挽/强上拉,输入/高阻和开漏模式。 复位后为准双向口/弱上拉工作模式。 由每个口的工作模式由2个控制寄存器中的相应位控制(PnM0和PnM1,n= 0、 1、 2、 3、 4、5)。 10:15:5279/135例如,P0M0和P0M1用于设定P0口的工作模式,其其中中P0M0.7和P0M1.7用于设置P0.7的工作模式,P0M0.6和P0M1.6用于设置P0.6的工作模式,以此类推。 设置关系如表所示。 PnM17:0PnM07:0I/O口模式00准双向口(标准8051单片机I/O口模式),灌电流可达20mA,拉电流为230A,由于制造误差,实际为250uA150uA01推挽输入输出(强上拉输出,可达20mA,要加限流电阻,尽量少用)10仅为输入(高阻)11开漏(Open Drain),内部上拉电阻断开,要外加上拉电阻10:15:5280/135例如,若设置P1.7为开漏,P1.6为强推挽输入输出,P1.5为高阻输入,P1. 4、P1. 3、P1. 2、P1.1和P1.0为弱上拉,则可以使用下面的代码进行设置MOV P1M1,#10100000B MOVP1M0,#11000000B10:15:5281/135STC12C5A60S2单片机的每个I/O口在弱上拉时受都能承受20mA的灌电流(最好还是使用限流电阻,如如1K)出在强推挽输出时都能输出20mA的拉电流(也要加限流电阻)。 整个芯片的工作电流推荐不要超过120mA。 即从从MCU-V流入的电流不超过120mA,从MCU-GND流出的电流不超过120mA,整体流入入/流出电流都不能超过120mA。 10:15:5282/1352)I/O口的复用功能P0口用作数据总线或者地址总线低8位位。 用作普通I/O。 P1口用作普通I/O。 复用为ADC转换输入、捕获/比较/脉宽调制、SPI通信线、第二串口或者第二时钟输出,如表所示。 10:15:5283/135表表3-4P1口的复用功能引脚复用功能P1.0ADC0(ADC转换输入通道0)/CLKOUT2(第二时钟输出)P1.1ADC1(ADC转换输入通道1)P1.2ADC2(ADC转换输入通道2)/ECI(可编程计数器阵列定时器的外部时钟输入)/RxD2(第二串口输入)P1.3ADC3(ADC转换输入通道3)/CCP0(捕捉/比较/脉宽调制通道0)/TxD2(第二串口输出)P1.4(SPI从器件选择)P1.5ADC5(ADC转换输入通道5)/MOSI(SPI主机输出从机输入)P1.6ADC6(ADC转换输入通道6)/MISO(SPI主机输入从机输出)P1.7ADC7(ADC转换输入通道7)/SCLK(SPI时钟)10:15:5284/135P2口用作地址总线的高8位输出。 用作通用I/O口使用。 P3口用作通用I/O口使用。 可复用为外部中断输入、计数器输入、时钟输出、第一串口和外部总线的读/写控制,如表所示。 10:15:5285/135端口引脚复用功能P3.0RXD(串行通信输入)P3.1TXD(串行通信输出)P3.2/INT0(外部中断0输入)P3.3/INT1(外部中断1输入)P3.4T0(定时器0外部输入)/CLKOUT0(时钟输出0)P3.5T1(定时器1外部输入)/CLKOUT1(时钟输出1)P3.6/WR(外部总线写控制信号)P3.7/RD(外部总线读控制信号)表表3-5P3口的复用功能10:15:5286/135P4口作通用I/O口使用。 某些口线具有复用功能,为可配置为SPI通信线、捕捉/比较/脉宽调制、第二串口线等,如表3-6所示。 端口引脚复用功能P4.0/SS(SPI从器件选择)P4.1ECI(可编程计数器阵列定时器的外部时钟输入)/MOSI(SPI主输出从输入)P4.2CCP0(捕捉/比较/脉宽调制通道0)/RxD2(第二串口输入)/MISO(SPI主输入从输出)P4.3CCP1(捕捉/比较/脉宽调制通道1)/TxD2(第二串口输出)/SCLK(SPI时钟)P4.4NA(空引脚)P4.5ALE(地址锁存控制信号,主要用于外部总线扩展)P4.6EX_LVD(外部低电压检测)/RST2(第二复位信号输入)P4.7RST(复位引脚)表表3-6P4口的复用功能10:15:5287/135RST/P4.7引脚在ISP下载程序时选择是复位脚是还是P4.7口口,成如设置成P4.7口口,必须使用外部时钟。 其中,P4. 4、P4.5和P4.6的第二功能由特殊功器能寄存器P4SW(为地址为BBH,复位值为X000XXXXB)设置。 P4SW的各位定义如下位号D7D6D5D4D3D2D1D0位名称LVD_P4.6ALE_P4.5NA_P4.410:15:5288/135NA_P4.4NA/P4.4引脚控制位。 0NA/P4.4脚是弱上拉,无任何功能。 1将NA/P4.4脚设置成I/O口口(P4.4)。 位号D7D6D5D4D3D2D1D0位名称LVD_P4.6ALE_P4.5NA_P4.4P4SW寄存器10:15:5289/135ALE_P4.5ALE/P4.5引脚控制位。 0ALE/P4.5脚是ALE信号。 CPU用MOVX指令访问片外存储器时,ALE输出信号的下降沿作为16位地址信号低8位的锁存信号。 1将ALE/P4.5脚设置成I/O口口(P4.5)。 位号D7D6D5D4D3D2D1D0位名称LVD_P4.6ALE_P4.5NA_P4.4P4SW寄存器10:15:5290/135LVD_P4.6EX_LVD/P4.6引脚控制位。 0EX_LVD/P4.6是外部低压检测脚,可使用查询方式或设置成中断来检测。 1将EX_LVD/P4.6脚设置成I/O口口(P4.6)。 位号D7D6D5D4D3D2D1D0位名称LVD_P4.6ALE_P4.5NA_P4.4P4SW寄存器10:15:5291/135P1口和P4口的选择由由AUXR1寄存器设置PCA/PWM、SPI和和UART2功能是在P1口还是在P4口口。 AUXR1寄存器(为地址为A2H,复位值为X00000X0B)的各位定义如下位号D7D6D5D4D3D2D1D0位名称-PCA_P4SPI_P4S2_P4GF2ADRJ-DPS10:15:5292/135PCA_P4PCA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年及未来5年中国便携医疗电子行业市场调研及投资规划建议报告
- 2026年中国口腔科材料项目经营分析报告
- 2025中国脑机接口技术发展现状及市场潜力评估报告
- 2026年中国香草项目经营分析报告
- 2025中国美妆代工企业技术升级与国际化战略报告
- 2025中国美妆产业园区集群效应与区域发展机遇报告
- 2026年中国转基因作物项目经营分析报告
- 快时尚明星同款系列创新创业项目商业计划书
- 增高型学生桌椅设计制造创新创业项目商业计划书
- 复古风格实木沙发创新创业项目商业计划书
- 《数据统计与分析:大数据时代统计学课程教案》
- 医院装修整改合同范例
- 2025年广东广州市高三一模高考物理试卷试题
- 离婚不离家协议范本
- 高中政治第3课时《正确对待外来文化》课件
- 案例解析:甲苯磺酸瑞马唑仑在全麻下行腹腔镜左侧卵巢输卵管切除术的病例分享
- 电厂钢煤斗制作安装施工方案
- 房地产 -中建系统物资管理三大手册附件5:中建七局一公司周转料具管理指导手册(2023版)
- 《导数与函数的极值、最值》教学设计
- 初级会计考试真题单选题100道及答案解析
- IICL测试考核资料
评论
0/150
提交评论