第10章具有51内核的8位单片机简介第10章具有51内核的8位单片机简介10.1AT89C系列单片机10.28XC51系列单片机10.38XC552系列单片机第10章具有51内核的8位单片机简介10.1AT89C系列单片机10.1.1AT89C2051主要性能(1)与MCS-51兼容;(2)内部带2KB可编程闪速存储器;(3)寿命为1000次擦/写循环;(4)数据保留时间为10年;(5)工作电压范围为2.7V~6V;(6)全静态工作频率为0Hz~24Hz;第10章具有51内核的8位单片机简介(7)两级程序存储器锁定;(8)128×8位内部RAM;(9)15条可编程I/O线;(10)2个16位定时器/计数器;(11)5个两级中断源;(12)可编程全双工串行UART通道;(13)直接对LED驱动输出;(14)片内精确的模拟比较器;(15)片内振荡器和时钟电路;(16)低功耗的休眠和掉电模式。第10章具有51内核的8位单片机简介10.1.2AT89C2051内部结构及引脚描述图10.1AT89C51内部结构第10章具有51内核的8位单片机简介图10.2AT89C2051引脚配置第10章具有51内核的8位单片机简介表10.1P3口特殊功能第10章具有51内核的8位单片机简介10.1.3特殊功能寄存器SFR表10.2AT89C2051的SFR第10章具有51内核的8位单片机简介10.1.4程序存储器的加密表10.33种锁定位保护模式第10章具有51内核的8位单片机简介10.1.5低功耗工作方式1)待机方式(休眠方式)当利用软件使待机方式位IDL(PCON.0)=0时,单片机进入空闲方式。此时,CPU处于休眠状态,而片内所有其它外围设备都保持工作状态,片内RAM和所有特殊功能寄存器内容保持不变。在待机方式下,当晶振fOSC=12MHz,电源电压VCC=6V时,电源电流ICC从20mA降至5mA;而VCC=3V时,ICC由5.5mA降至1mA。中断或硬件复位可以终止待机方式。第10章具有51内核的8位单片机简介当待机方式由硬件复位终止时,CPU要从休眠处恢复程序的执行,执行2个机器周期后,内部复位电路才起作用。此时,硬件禁止访问内部RAM,但允许访问端口引脚。为了防止休眠被复位终止时对端口引脚意外写入的可能性,在生成待机方式的指令后不应紧跟对端口引脚的写指令。如果不采用外部上拉,P1.0和P1.1应置“0”;如果采用外部上拉,则应置“1”。第10章具有51内核的8位单片机简介2)掉电方式由掉电方式位PD(PCON.1)=1设置。此时,振荡器停止工作,设置掉电方式的指令成为最后执行的一条指令,片内RAM和特殊功能寄存器内容保持不变。在掉电方式下,VCCmin=2V。当VCC=6V时,ICCmax=100μA;当VCC=3V时,ICCmax=20μA。退出掉电方式的唯一方式是硬件复位。硬件复位将重新定义特殊功能寄存器,但不影响片内RAM。复位的保持时间应足够长,以便振荡器能重新开始工作并稳定下来。在VCC没有恢复到正常工作电压之前,不应进行复位。如果不采用外部上拉,P1.0和P1.1应置“0”,否则置“1”。第10章具有51内核的8位单片机简介10.1.6闪速存储器的编程图10.3编程闪速存储器第10章具有51内核的8位单片机简介图10.4闪速存储器编程和校验时序第10章具有51内核的8位单片机简介表10.45种编程模式第10章具有51内核的8位单片机简介一、编程(写代码数据)AT89C2051编程按下述步骤进行:(1)上电过程:VCC加电,置RST为“L”(低电平),XTAL1为“L”,其它所有引脚悬空,等待10ms以上;(2)置RST为“H”(高电平),P3.2为“H”;(3)在引脚P3.3、P3.4、P3.5、P3.7上施加相应的逻辑电平,选定基本编程模式;第10章具有51内核的8位单片机简介(4)地址信号由内部地址计数器提供(初始值为000H),欲写入该地址中的数据加至引脚P1.0~P1.7上;(5)将RST电平升至12V启动编程;(6)给P3.2施加一负脉冲,则编程内部存储器阵列或锁定位的1个字节,字节写周期采用自定时,通常为1.2ms;(7)若要校验已编程数据,将RST从12V降至逻辑电平“H”,并置引脚P3.3~P3.7为校验模式电平,输出数据即可在P1口读取;(8)编程下一个地址字节,对XTAL1施加一正脉冲,内部地址计数器加1,然后在P1口上加载欲写入的新数据;第10章具有51内核的8位单片机简介(9)重复步骤(5)~(8),改变数据,递增地址计数器直到2KB存储阵列全部编程或目标文件结束;(10)下电过程:置XTAL1为“L”,RST为“L”,其它I/O引脚悬空,VCC下电。当前次编程未结束时,不允许开始下一次编程。如何确定一次编程操作是否结束,AT89C2051提供了以下两种方法。第10章具有51内核的8位单片机简介1.数据查询特性AT89C2051具有通过数据查询来检测写周期结束的特性。在写期间,读操作将导致P1.7输出写入数据的补码,一旦写完成,所有输出将出现真实数据,这时可开始下一数据编程。利用这一特性,可以在启动某一次编程后不断地查询写入数据,直到查询的数据为真实数据时,就可判定写周期已结束。第10章具有51内核的8位单片机简介2.准备好/在编程期间,引脚P3.3(RDY/BSY)提供了编程状态。当引脚P3.2(PROG)电平升高后,引脚P3.1电平下降,表示BUSY,编程结束后P3.1电平抬高,表示READY(见图10.4所示时序)。利用查询该状态信息便可确定编程的结束。第10章具有51内核的8位单片机简介二、校验(读代码数据)图10.5校验闪速存储器第10章具有51内核的8位单片机简介(1)使RST从“L”变为“H”,地址计数器复位000H;(2)提供适当的控制信号(见图10.4所示时序),从P1口读取数据与编程写入数据作比较;(3)给XTAL1施加正脉冲,地址计数器加1;(4)从P1口读1个代码数据与编程写入数据作比较;(5)重复步骤(3)、(4),直至整个存储阵列校验完毕。第10章具有51内核的8位单片机简介三、写锁定位写锁定位完成对闪速存储器加密。按前述编程模式表操作:先选择写锁定位模式,然后将RST升至12V,P3.2施加编程脉冲,即可将锁定位写入(改变模式选择P3.3、P3.4、P3.5、P3.7的输入组合来实现锁定位LB1、LB2的写入)。不能直接校验锁定位,要通过观察其持性是否被允许来完成。第10章具有51内核的8位单片机简介四、芯片擦除当编程模式选择为芯片擦除模式并使P3.2引脚上施加10ms的PROG脉冲后,整个闪速存储器(2KB)和2个锁定位即可被擦除。擦除后,存储器阵列全为FFH。第10章具有51内核的8位单片机简介五、特征字节表示AT89C系列芯片的基本特性,由3或4字节组成,存储于程序存储区的低端。AT89C2051芯片的特征字节位于地址000H、001H、002H中,当选择读特征字节模式(P3.3=P3.4=P3.5=P3.7=“L”)并采用类似校验步骤读取数据时,即可获得AT89C2051芯片的特征字:(000H)=1EH表示该产品由Atmel生产;(001H)=21H表示是89C2051/89C1051;(002H)=FFH表示12V编程。第10章具有51内核的8位单片机简介图10.6AT89C2051在线编程示例10.1.7第10章具有51内核的8位单片机简介10.28XC51系列单片机10.2.18XC51GB8XC51GB是一种先进的80C51微控制器,它具有优良的性能,主要包含:串行扩展口、8通道8位A/D转换器,可编程的计数器阵列,片内EPROM。其主要特性如下:(1)片内有8KB的EPROM和256字节的RAM;(2)2个可编程计数阵列,包括:2×5高速I/O通道;比较/捕捉模块;脉冲宽度调制器;监视定时器;第10章具有51内核的8位单片机简介(3)3个16位定时器/计数器,T0、T1具有4种编程方式,T2具有捕捉及波特率生成方式;(4)8通道8位A/D转换器,具有4种编程方式;(5)专用监视定时器;(6)可编程串行通道,可进行帧错误检测、自动地址识别;(7)串行扩展通道;(8)48位可编程I/O(9)15个中断源,可设置为4(10)工作温度扩大,环境温度在-40℃~+125℃能正常工作。第10章具有51内核的8位单片机简介10.2.28XC51GB的内部结构图10.78XC51GB结构框图第10章具有51内核的8位单片机简介一、片内RAM和SFR8XC51GB片内有256个字节数据RAM,其地址为00H~7FH、80H~FFH,其中地址80H~FFH与特殊功能寄存器SFR的地址重叠。虽然地址相同,但它们在物理上是相互独立的。当一条指令访问地址高于7FH的内部区域时,CPU应清楚此次操作是访问数据RAM的单元,还是访问指令中指定地址表示的SFR空间。8XC51GB指令系统规定:采用直接地址的指令均为访问数据RAM单元,例如:MOV0A0H,#data第10章具有51内核的8位单片机简介是访问特殊功能寄存器空间中地址为0A0H的寄存器;而采用间接寻址的指令为访问数据RAM区的单元,例如:MOVR0,#0A0HMOV@R0,#data即为访问RAM区地址为0A0H的单元。8XC51GB的片内特殊功能寄存器在8051单片机的21个基础上新增了69个,共计90个,地址分配和CPU的复位值如表10.5所示。第10章具有51内核的8位单片机简介表10.5SFR地址分配及复位值第10章具有51内核的8位单片机简介二、8XC51GB端口及操作表10.6端口复用功能第10章具有51内核的8位单片机简介三、8XC51GB的A/D表10.7ACON寄存器格式第10章具有51内核的8位单片机简介A/D转换有两种方式:连续方式和触发方式,决定通道的转换次序也有两种方式:扫描方式和选择方式,它们都是由ACON中的各控制位决定。连续方式:在ACON中将ATM置“0”时,则进入连续方式。将ACE置“1”时,则A/D转换总是从ACH0~ACH7的8个通道连续反复进行。转换结束后,将AIF置“1”,然后再从ACH0通道开始下一轮A/D转换,只要ATM=0、ACE=1保持不变,则转换将连续反复进行。第10章具有51内核的8位单片机简介触发方式:ATM置“1”时,则进入触发方式。ACE置“1”时,外部引脚TR1GIN的第一个下降沿将开始对通道ACH0~ACH7进行一次转换,并转换结果送入相应的A/D转换结果寄存器ADRES0~ADRES7中。扫描方式:AIM置“0”,便进入扫描方式。在此方式下,将依次转换8个通道ACH0~ACH7,并将转换结果送入相应的转换结果寄存器ADRES0~ADRES7中。选择方式:AIM置“1”,便进入选择方式。在此方式下,A/D转换器先对前4个通道ACH0~ACH3中的某一通道(由ACS1、ACS0决定)进行4次A/D转换,并将结果依次送入ADRES0~ADRES3中,然后再对通道ACH4~ACH7依次转换一次,将结果依次送入ADRES4~ADRES7中。第10章具有51内核的8位单片机简介图10.8中断源四、8XC51GB1.中断源第10章具有51内核的8位单片机简介外部中断INT0、INT1:这两个中断都可以由电平触发或跳变沿触发,具体触发方式决定于寄存器TCON中IT0和IT1二位的值。外部中断INT2、INT3:这两个中断都可设置为上升沿或下降沿触发,具体触发方式由中断控制寄存器EXICON中IT2和IT3二位的值决定。外部中断INT4、INT5、INT6:这三个中断都是上升沿触发的。图10.9EXICON中断控制寄存器第10章具有51内核的8位单片机简介2.8XC51GB的15个中断源都可通过将两个中断允许寄存器IE和IEA中对应的中断源控制位置“1”开中断;置“0”禁止中断。图10.10IE格式第10章具有51内核的8位单片机简介图10.11IEA格