您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > STC12C5A60S2教程
网上下载的,我这分享了,还会继续上传我的资料的第2章STC12C5A60S2的增强型8051内核2.1STC12C5A60S2单片机的引脚MOSI/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.4A08/P2.0A09/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/RxD2VccP4.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.7XTAL1XTAL2GNDVccP0.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/A812345678910111213141516171819204039383736353433323130292827262524232221LQFP48封装DIP40封装逻辑符号图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/AD7RSTGNDVccP0.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口上电复位电路STC12C5A60S2单片机内部集成MAX810专用复位电路,时钟频率在12MHZ以下时,复位脚可接1K电阻再接地,也可以使用如右图所示的复位电路。STC12C5A60S2RSTGNDCr10uFRr10KΩVcc常见的晶振连接方法晶体振荡器M的典型值是11.0592MHz,电容C1、C2的典型值是47Pf。XTAL2XTAL1C2C1GNDMSTC12C5A60S22.2STC12C5A60S2单片机的结构2.2.1STC12C5A60S2单片机的内部结构RST定时和控制逻辑RAM地址寄存器RAM片内RC振荡器电源监控(上电复位、掉电复位)可配置I/O口P0~P4可配置I/O口P5程序FLASH程序地址寄存器缓冲器堆栈指针PC增量器PCDPTR硬件看门狗(WDT)8通道高速A/DSPI2路PWM/PCA/CCU捕获/比较单元指令寄存器可配置振荡器ALUPSW中断、UART、定时器逻辑XTAL1XTAL2B寄存器ACCTMP2TMP11K字节EEPOMCPU时钟ALE2.2.2CPU以8位算术/逻辑运算部件ALU为核心,加上通过内部总线而挂在其周围的暂存器TMP1,TMP2,累加器ACC,寄存器B,程序状态标志寄存器PSW以及布尔处理机就组成了整个运算器的逻辑电路。1.运算器单片机的中央处理器CPU由运算器和控制器组成。程序状态标志寄存器PSW:CY:进位标志位当执行加/减法指令时,如果操作结果的最高位D7出现进/借位,则CY置“1”,否则清零。此外,CPU在进行移位操作时也会影响这个标志位。AC:辅助进位标志位当执行加/减法指令时,如果低四位数向高四位数产生进/借位,则AC置“1”,否则清零。F0:用户标志0该位是由用户定义的一个状态标志。RS1,RS0:工作寄存器组选择控制位OV:溢出标志位指示运算过程中是否发生了溢出。F1:用户标志1该位是由用户定义的一个状态标志。P:奇偶标志位如果累加器ACC中1的个数为偶数,P=0;否则P=1。D7D6D5D4D3D2D1D0CYACF0RS1RS0OVF1P2.控制器控制器是CPU的大脑中枢,包括定时控制逻辑、指令寄存器、译码器、地址指针DPTR及程序计数器PC、堆栈指针SP、RAM地址寄存器、16位地址缓冲器等。2.3STC12C5A60S2单片机的存储器2.3.1存储器空间及存储器STC12C5A60S2单片机存储器结构的主要特点是程序存储器和数据存储器的寻址空间是分开的,有4个物理上相互独立的存储器空间:程序Flash存储器、数据Flash存储器(EEPROM)、内部数据存储器和外部数据存储器外部数据存储器内部数据存储器程序Flash存储器特殊功能寄存器低128字节内部RAMFFH80H7FH00H0000H03FFH03FFH0000H60KBF000H0000H1KB程序Flash存储器数据Flash存储器1024字节扩展RAM高128字节内部RAM数据Flash存储器1.程序Flash存储器程序Flash存储器用于存放用户程序、数据和表格等信息。STC12C5A60S2单片机片内集成了60KB的程序Flash存储器,其地址为0000H~F000H。单片机复位后,程序计数器的内容为0000H,从0000H单元开始执行程序。特殊单元0003H外部中断0中断服务程序的入口地址000BH定时/计数器0中断服务程序的入口地址0013H外部中断1中断服务程序的入口地址001BH定时/计数器1中断服务程序的入口地址0023H串行通信口1中断服务程序的入口地址002BHADC中断服务程序的入口地址0033H低电压检测中断服务程序的入口地址003BHPCA中断服务程序的入口地址0043H串行通信口2中断服务程序的入口地址004BHSPI中断服务程序的入口地址读取程序存储器中保存的表格常数等内容时,使用MOVC指令。2.数据存储器数据存储器也称为随机存取数据存储器。STC12C5A60S2单片机的数据存储器在物理上和逻辑上都分为两个地址空间:内部数据存储区和外部数据存储区。(1)内部数据存储区STC12C5A60S2单片机片内集成了256字节RAM,可用于存放程序执行的中间结果和过程数据。内部RAM的地址范围是00H~FFH,共256个单元,分为三部分:①低128字节RAM:00H~7FH。用“MOV”和“MOV@Ri”指令访问。②高128字节RAM:80H~FFH。用“MOV@Ri”指令访问。③特殊功能寄存器(SFR)区:80H~FFH,用“MOV”指令访问。0区(R7~R0)1区(R7~R0)2区(R7~R0)3区(R7~R0)0FH~08H17H~10H20H2FH30H通用用户RAM和堆栈区(30H~7FH)[可直接或间接字节寻址]80H~FFH[只能间接寻址访问]特殊功能寄存器区(80H~FFH)[只能直接寻址访问]7FH80HFFH1FH~18H~位寻址区(16字节,共128位)也可以字节寻址07H~00H4个工作寄存器区也可做RAM单元使用~~1)工作寄存器区00H~1FH共32个单元用作工作寄存器,分为四组(每一组称为一个寄存器组),每一组中包括8个8位的工作寄存器,分别是R0~R7。PSW寄存器中的RS1和RS0的组合决定当前使用的工作寄存器组。2)位寻址区20H~2FH之间的单元既可以像普通RAM单元一样按字节存取,也可以对单元中的任何一位单独存取,共128位,所对应的位地址范围是00H~7FH。特殊功能寄存器中,直接地址可被8整除的寄存器(除了IP.7、IP.6和IE.6以外)也可以进行位寻址。可进行位寻址的单元,请见教材图2-8和图2-9.RS1RS0工作寄存器组工作寄存器地址000R7~R0对应的地址为07H~00H011R7~R0对应的地址为0FH~08H102R7~R0对应的地址为17H~10H113R7~R0对应的地址为1FH~18H3)用户RAM和堆栈区内部RAM中的30H~0FFH单元是用户RAM和堆栈区。STC12C5A60S2单片机有一个8位的堆栈指针SP,并且堆栈区只能设置在内部数据存贮区。单片机复位以后,SP为07H,指向了工作寄存器组0中的R7,因此用户初始化程序都应对SP设置初值,一般设在30H以后为宜。STC12C5A60S2的堆栈是向上生成的。4)特殊功能寄存器(SFR)80H~FFH既为高128字节RAM区的地址范围,又为特殊功能寄存器区的地址范围,地址空间重叠,但物理上是独立的,使用时通过不同的寻址方式加以区分。高128字节的RAM区使用间接寻址访问,特殊功能寄存器使用直接寻址访问。除了程序计数器PC和4个工作寄存器组外,其余的寄存器都在SFR区中。特殊功能寄存器及其复位值如教材表2-2所示。(2)外部数据存储区外部数据存储区也称为扩展RAM区或XRAM(附加RAM)。STC12C5A60S2单片机片内除了集成256字节的内部RAM以外,片内还集成了1024字节的外部数据存储器,地址范围为0000H~03FFH,可用于存放数据。在汇编语言中,XRAM通过MOVX指令间接寻址,即使用“MOVX@DPTR”或者“MOVX@Ri”指令访问。在C语言中,可使用xdata声明存储类型即可。如:unsignedcharxdatai=0;单片机芯片内的XRAM是否可以访问受辅助寄存器AUXR(地址为8EH,复位值为00H)中的EXTRAM位控制。AUXR的各位定义如下:位号D7D6D5D4D3D2D1D0位名称T0x12T1x12UART_M0x6BRTRS2SMODBRTx12EXTRAMS1BRSEXTRAM:内部/外部RAM存取控制位。0:内部XRAM可以存取;1:芯片外数据存储器存取,禁止访问内部XRAM。3.数据Flash存储器STC12C5A60S2单片机内部集成了1K字节的数据Flash存储器(EEPROM),地址范围是0000H~03FFH,与程序Flash存储器空间是分开的。这1K字节的数据Flash存储器分为2个扇区,每个扇区包含512字节,对应的地址范围分别为:第一扇区:0000H~01FFH第二扇区:0200H~03FFH使用时,建议同一次修改的数据放在同一个扇区,不是同一次修改的数据
本文标题:STC12C5A60S2教程
链接地址:https://www.777doc.com/doc-7377492 .html