第4章-STC89C52单片机硬件结构
- 格式:ppt
- 大小:2.29 MB
- 文档页数:3
STC89C52单片机调试报告The debugging report of STC89C52MCU姓名:***专业:电子信息工程时间:2011年8月2日STC89C52单片机调试报告摘要:通过这次对单片机最小系统的焊接与调试,我对单片机内部结构有了深入的了解,并且学会了利用单片机扩展其他模块,对单片机的外围器件已经能熟练地操作,自己亲自焊接与调试,发现了自己画的PCB 板有许多问题,经过不断的调试,最后顺利完成了52单片机基本外围器件的调试和扩展,这次52单片机外围器件的调试为我以后参加比赛奠定了基础。
【本科组】1.技术讨论:STC89C52是一种八位的单片机,共40个引脚,五个中断源,三个内部中断,分别为定时器0,定时器1,串口中断,两个外部中断,分别为外部中断0和外部中断1,4个双向的I/O口可以用来扩展外部器件和存储器。
除此之外,利用单片机的ALE和PSEN引脚也可以扩展外部存储器。
如果外部器件需要时钟信号,可以利用单片机的定时器作外部器件的时钟,由于单片机正常工作的时候ALE 引脚会输出6分频的方波,所以时钟信号也可以接单片机的ALE引脚。
2.技术路线:我用的PCB板是自己画的,板子上除了STC89C52单片机主控芯片外,主要模块有:四位数码管,两位数码管,蜂鸣器,虚拟串口,矩阵键盘,电源指示灯,时钟芯片DS1302,温度传感器DS18B20,12864液晶,诺基亚液晶,除此之外,我利用单片机外围引脚的排针扩展了ADC0809,DS18B20多点测温。
3.硬件设计:3.1数码管部分采用的是四位共阴数码管,段选通过单片机的P2口控制,位选通过P0.4-P0.7控制,驱动用的是8050NPN数码管,R5-R8的作用是限流,防止电流过大烧坏数码管,R1-R4的作用也是限流作用,防止电流过大烧坏单片机。
3.2复位电路单片机的第九脚只要出现连续两个机器周期以上的高电平就恢复位,复位电路上电容采用的是10UF,电阻中的阻值是10K。
基于STC89C52单⽚机最⼩系统的设计基于STC89C52单⽚机最⼩系统的设计1 设计内容及要求设计题⽬:基于STC89C52单⽚机最⼩系统的设计及制作。
设计要求:输⼊信号为传感器、电压、电流、开关等形式,单⽚机型号可以⾃⼰选择(51,128,430等),输出控制信号为模拟电压或者数字信号,控制对象可以是电机(直流电机,步进电机)、开关、显⽰器等。
(注:可以采⽤单⽚机、传感器电路模块以及集成电路芯⽚制作。
)使⽤器材:感光板及常⽤PCB制版器材、常⽤电⼦装配⼯具、万⽤表、⽰波器及电⼦元器件(详见附录)。
2 STC89C52单⽚机2.1 STC89C52单⽚机简介单⽚微型计算机简称单⽚机,是典型的嵌⼊式微控制器(Microcontroller Unit),常⽤英⽂字母的缩写MCU表⽰单⽚机,它最早是被⽤在⼯业控制领域。
单⽚机由芯⽚内仅有CPU的专⽤处理器发展⽽来。
最早的设计理念是通过将⼤量外围设备和CPU集成在⼀个芯⽚中,使计算机系统更⼩,更容易集成进复杂的⽽对体积要求严格的控制设备当中。
⽤专业语⾔讲,单⽚机就是在⼀块硅⽚上集成了微处理器、存储器及各种输⼊/输出接⼝的芯⽚。
2.2 单⽚机的特点(1)⾼集成度,体积⼩,⾼可靠性单⽚机将各功能部件集成在⼀块晶体芯⽚上,集成度很⾼,体积⾃然是最⼩的。
芯⽚本⾝是按⼯业测控环境要求设计的,内部布线很短,其抗⼯业噪声性能优于⼀般通⽤的CPU。
单⽚机程序指令,常数及表格等固体化在ROM中不易破坏,许多信号通道均在⼀个芯⽚内,故可靠性⾼。
(2)控制功能强为了满⾜对控制对象的要求,单⽚机的指令系统均有极丰富的条件:分⽀转移能⼒、I/O⼝的逻辑操作机位处理能⼒,⾮常适⽤于专门的控制功能。
(3)低电压,低功耗,便于⽣产携带为了便于⼴泛使⽤于便携式系统,许多单⽚机内的⼯作电压仅为 1.8V~3.6V,⼯作电流仅为数百微安。
(4)易扩展⽚内具有计算机正常运⾏所需的部件。
芯⽚外部有许多供扩展⽤的三总线及并⾏、串⾏输⼊/输出管脚,很容易构成各种规模的计算机应⽤系统。
AT89C52单片机介绍在众多的单片机系列中,AT89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系列可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,也适用于常规编程。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89C52为众多嵌入式控制应用系统提供高灵活、超高效的解决方案。
AT89C52具有以下标准功能:8K字节Flash,256字节RAM,32位I/O口线,3个16位定时器/计数器,一个响亮2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89C52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
AT89C52单片机为很多嵌入式控制系统提供了一种灵活性高且廉价的方案。
故此选用AT89C52单片机。
1 AT89C52单片机1.1 AT89C52单片机的硬件结构如图3-1所示,为AT89C52的硬件结构图。
AT89C52单片机的内部结构与MCS-51系列单片机的构成基本相同。
CPU是由运算器和控制器所构成的。
运算器主要用来对操作数进行算术、逻辑运算和位操作的。
控制器是单片机的指挥控制部件,主要任务的识别指令,并根据指令的性质控制单片机各功能部件,从而保证单片机各部分能自动而协调地工作。
它的程序存储器为8K字节可重擦写Flash闪速存储器,闪烁存储器允许在线+5V电擦除、电写入或使用编程器对其重复编程。
数据存储器比51系列的单片机相比大了许多为256字节RAM。
AT89C52单片机的指令系统和引脚功能与MCS-51的完全兼容。
图 3-1 单片机89C52结构框图1.2 主要性能参数• 8K字节可重擦写Flash闪速存储器• 1000次可擦写周期•全静态操作:0Hz-24MHz•三级加密程序存储器• 256×8字节内部RAM• 32个可编程I/O口线• 3个16位定时/计数器• 8个中断源•可编程串行UART通道•低功耗空闲和掉电模式图 3-2 AT89C52外部引脚图1.3 AT89C52管脚说明VCC:电源GND:接地P0口:P0口是一个8位漏级开路的双向I/O口。
STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。
该器件采用ATMEL 搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
单片机总控制电路如下图4—1:图4—1单片机总控制电路1.时钟电路STC89C52内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。
时钟可以由内部方式产生或外部方式产生。
内部方式的时钟电路如图4—2(a) 所示,在RXD和TXD引脚上外接定时元件,内部振荡器就产生自激振荡。
定时元件通常采用石英晶体和电容组成的并联谐振回路。
晶体振荡频率可以在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值的大小可对频率起微调的作用。
外部方式的时钟电路如图4—2(b)所示,RXD接地,TXD接外部振荡器。
对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。
片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
示,RXD接地,TXD接外部振荡器。
对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。
片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
RXD接地,TXD接外部振荡器。
对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。
片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
(a)内部方式时钟电路(b)外部方式时钟电路图4—2时钟电路2.复位及复位电路(1)复位操作复位是单片机的初始化操作。
其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。
除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。
STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。
该器件采用ATMEL 搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
单片机总控制电路如下图4—1:图4—1单片机总控制电路1.时钟电路STC89C52内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。
时钟可以由内部方式产生或外部方式产生。
内部方式的时钟电路如图4—2(a) 所示,在RXD和TXD引脚上外接定时元件,内部振荡器就产生自激振荡。
定时元件通常采用石英晶体和电容组成的并联谐振回路。
晶体振荡频率可以在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值的大小可对频率起微调的作用。
外部方式的时钟电路如图4—2(b)所示,RXD接地,TXD接外部振荡器。
对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。
片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
示,RXD接地,TXD接外部振荡器。
对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。
片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
RXD接地,TXD接外部振荡器。
对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。
片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
(a)内部方式时钟电路(b)外部方式时钟电路图4—2时钟电路2.复位及复位电路(1)复位操作复位是单片机的初始化操作。
其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。
除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。
1.2 单片机内部主要部件单片机内部电路比较复杂,MCS-51系列的8051型号单片机的内部电路根据功能可以分为CPU、RAM、ROM/EPROM、并行口、串行口、定时/计数器、中断系统及特殊功能寄存器(SFR)等8个主要部件,如图1-2-1所示。
这些部件通过片内的单一总线相连,采用CPU加外围芯片的结构模式,各个功能单元都采用特殊功能寄存器集中控制的方式。
其他公司的51系列单片机与8051结构类似,只是根据用户需要增加了特殊的部件,如A/D转换器等。
在设计程序过程中,寄存器的使用非常频繁。
本节内容在了解单片机内部的组成机构基础上,重点介绍单片机内部常用的寄存器的作用。
图1-2-1 MCS-51架构1.2.1中央处理器(CPU)中央处理器是单片机的核心,主要功能是产生各种控制信号,根据程序中每一条指令的具体功能,控制寄存器和输入/输出端口的数据传送,进行数据的算术运算、逻辑运算以及位操作等处理。
MCS-51系列单片机的CPU字长是8位,能处理8位二进制数或代码,也可处理一位二进制数据。
单片机的CPU从功能上一般可以分为运算器和控制器两部分。
一、控制器控制器由程序计数器PC、指令寄存器、指令译码器、定时控制与条件转移逻辑电路等组成。
其功能是对来自存储器中的指令进行译码,通过定时电路,在规定的时刻发出各种操作所需的全部内部和外部的控制信号,使各部分协调工作,完成指令所规定的功能。
各部分功能部件简述如下。
1.程序计数器PC(Program Counter)程序计数器是一个16位的专用寄存器,用来存放下一条指令的地址,具有自动加1的功能。
当CPU要取指令时,PC的内容送地址总线上,从存储器中去取出一个指令码后,PC 内容自动加1,指向下一个指令码,以保证程序按顺序执行。
PC是用来指示程序的执行位置,在顺序执行程序时,单片机每执行一条指令,PC就自动加1,以指示出下一条要取的指令的存储单元的16位地址。
也就是说,CPU总是把PC 的内容作为地址,根据该地址从存储器中取出指令码或包含在指令中的操作数。
stc89c52单片机1. 简介stc89C52是基于8051指令集的单片机,由深圳市思特奇科技有限公司研发生产。
它是一款高性价比的单片机,广泛应用于工业控制、家电控制、仪器仪表等领域。
stc89C52具有丰富的外设资源和强大的计算能力,是嵌入式系统开发的理想选择。
2. 主要特性stc89C52具有以下主要特性:•基于8051指令集架构,具备成熟可靠的系统平台•CPU主频为11.0592MHz,运算速度快•8KB的内部FLASH程序存储器,用于存储程序代码•256B的内部RAM,用于存储数据和临时变量•32个I/O口,用于连接外部设备和传感器•支持多种通信接口,包括UART、SPI和I2C等•4个定时器/计数器,用于定时和计数应用•2个外部中断输入,能够实现外部中断信号的响应•强大的PWM功能,用于生成精确的脉冲信号•低功耗设计,节能环保•大部分引脚可多功能复用,灵活性强3. 开发环境搭建要开始使用stc89C52单片机进行开发,需要搭建适合的开发环境。
以下是搭建开发环境的步骤:1.安装编译器和开发工具–从思特奇公司官方网站下载并安装STC-ISP烧录工具。
–从STC-ISP官方网站下载并安装STC-ISP编译和调试工具。
2.连接硬件–将stc89C52单片机和外部电路连接,包括电源、晶振和外设。
3.编写代码–使用C语言或汇编语言编写代码,实现所需功能。
4.编译和烧录–使用STC-ISP编译工具编译代码,生成Hex文件。
–使用STC-ISP烧录工具将Hex文件烧录到stc89C52单片机。
5.调试和测试–运行程序,使用串口调试工具验证代码功能是否正常。
4. 基本编程示例以下是一个简单的基于stc89C52单片机的闪烁LED示例程序:#include <reg52.h>sbit LED = P1^0;void delay(unsigned int t){unsigned int i, j;for (i = 0; i < t; i++)for (j = 0; j < 125; j++);}void main(){while (1){LED = 0; // LED亮delay(500); // 延时500msLED = 1; // LED灭delay(500); // 延时500ms}}上述代码通过控制P1口的第0位来控制LED的亮灭,通过delay函数实现延时功能。
3.2 51单片机部分3.2.1 单片机选型依据MCS-51系列为美国Intel公司在上世纪80年代推出的一种8位单片机。
在芯片的集成程度上有较大提高,同时也大幅提升了性能,单片机的功能也大大丰富,功能单元的数量与种类答复增加,取得巨大成功,如今在我国获得广泛的应用。
MMCS51单片机的内部总体结构其基本特性如下:8位CPU、片内振荡器、4k字节ROM、128字节RAM、21个特殊功能寄存器、32根I/O线、可寻址的64k字节外部数据、程序存贮空间、2个16位定时器、计数器中断结构:具有二个优先级、五个中断源、一个全双工串行口、位寻址(即可寻找某位的内容)功能,适于按位进行逻辑运算的位处理器。
除128字节RAM、4k字节ROM和中断、串行口及定时器模块外,还有4组I/O口P0~P3,余下的就是CPU的全部组成。
把4kROM换为EEPROM就是8751的结构,如去掉ROM/EEPROM 部分即为8031,如果将ROM置换为Flash存贮器或EEPROM,或再省去某些I/O,即可得到51系列的派生品种,如89C51、AT89C2051等单片机。
单片机各部分是通过内部的总线有机地连接起来的。
MCS51单片机的组成如下:运算器以完成二进制的算术/逻辑运算部件ALU为核心,再加上暂存器TMP、累加器ACC、寄存器B、程序状态标志寄存器PSW及布尔处理器。
累加器ACC是一个八位寄存器,它是CPU中工作最频繁的寄存器。
在进行算术、逻辑运算时,累加器ACC往往在运算前暂存一个操作数(如被加数),而运算后又保存其结果(如代数和)。
寄存器B主要用于乘法和除法操作。
标志寄存器PSW也是一个八位寄存器,用来存放运算结果的一些特征,如有无进位、借位等。
其每位的具体含意如下所示:对用户来讲,最关心的是以下四位。
(1)进位标志CY(PSW.7)。
它表示了运算是否有进位(或借位)。
如果操作结果在最高位有进位(加法)或者借位(减法),则该位为1,否则为0[1] 。