[信息与通信]第2章 AT89S51单片机的硬件结构

上传人:e****s 文档编号:243362302 上传时间:2024-09-21 格式:PPT 页数:104 大小:2.26MB
返回 下载 相关 举报
[信息与通信]第2章 AT89S51单片机的硬件结构_第1页
第1页 / 共104页
[信息与通信]第2章 AT89S51单片机的硬件结构_第2页
第2页 / 共104页
[信息与通信]第2章 AT89S51单片机的硬件结构_第3页
第3页 / 共104页
点击查看更多>>
资源描述
,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单片机原理及应用,第,2,章,AT89S51,单片机的硬件结构,第二章 单片机的硬件结构,本章内容,Single Chip Microcomputer,硬件结构,复位操作和复位电路,时钟电路与时序,CPU,存储器的结构,并行,I/O,端口,引脚功能,低功耗节电模式,2.1 AT89S51,单片机的硬件结构,图,2-1,AT89S51,单片机片内结构,中央处理器,CPU,:,8,位,运算和控制功能,面向控制的位处理功能。,内部,RAM,:,共,256,个,RAM,单元,用户使用前,128,个单元,用于存放可读写数据,后,128,个单元被专用寄存器占用。,内部,ROM,:,4KB flash ROM,,,用于存放程序、原始数据和表格。,定时,/,计数器:,2,个,16,位的定时,/,计数器,实现定时或计数功能。,并行,I/O,口:,4,个,8,位的,I/O,口,P0,、,P1,、,P2,、,P3,。,串行口:,一个全双工异步串行口。,中断控制系统:,5,个中断源(外中断,2,个,定时,/,计数中断,2,个,串行中断,1,个),特殊功能寄存器(,SFR,):,26,个,,对片内各功能部件管理、控制和监视,。,AT89S51,单片机的硬件资源,与,AT89C51,相比,,AT89S51,有更突出的优点,:,(,1,)增加在线可编程功能,ISP,(,In System Program,),,字,节,和,页编程,,现场程序调试和修改更加方便灵活;,(,2,),数据指针,增加到,两个,,方便了对片外,RAM,的访问过程;,(,3,),增加,了,看门狗定时器,,提高了系统的抗干扰能力;,(,4,),增加,断电标志,;,(,5,)增加,掉电状态,下的,中断恢复模式,。,2.2 AT89S51,的引脚功能,先了解引脚,牢记各引脚的功能。,AT89S51,与,51,系列中各种型号芯片的引脚互相兼容。目前多采用,40,只,引脚,双列直插,。,引脚按其功能可分为如下,3,类,:,(,1,)电源及时钟引脚,VCC,、,VSS,;,XTAL1,、,XTAL2,。,(,2,)控制引脚,PSEN*,、,ALE/PROC*,、,EA* /VPP,、,RST,(,RESET,),(,3,),I/O,口引脚,P0,、,P1,、,P2,、,P3,,为,4,个,8,位,I/O,口,1,电源引脚,(,1,),V,CC,(,40,脚):,+5V,电源。,(,2,),V,SS,(,20,脚):,数字地。,图,2-2,AT89S51,双列直插封装方式的引脚,2,时钟引脚,(,1,),XTAL1,(,19,脚):,片内振荡器反相放大器和时钟发生器电路输入端。用片内振荡器时,该脚接外部石英晶体和微调电容。,外接时钟源时,,该脚接外部时钟振荡器的信号。,(,2,),XTAL2,(,18,脚),:,片内振荡器反相放大器的输出端。当使用,片内振荡器,,该脚连接外部石英晶体和微调电容。当使用,外部时钟源,时,本脚,悬空,。,3.,控制引脚,(,1,),RST (RESET,,,9,脚,),:,复位信号输入,在引脚加上,持续时间大于,2,个机器周期的高电平,,可使单片机,复位,。正常工作,此脚电平应 。,(,2,),/VPP,(Enable Address/Voltage Pulse of Programing,,,31,脚,),:,引脚,第一功能,:外部程序存储器访问允许控制端。,=1,,在,PC,值不超出,0FFFH,(即不超出片内,4KB Flash,存储器的地址范围)时,单片机读,片内程序存储器,(,4KB,)中的程序,但,PC,值超出,0FFFH,(即超出片内,4KB Flash,地址范围)时,将,自动转向读取片外,60KB,(,1000H-FFFFH,)程序存储器空间中的程序。,=0,,,只读取,外部的程序存储器,中的内容,读取的地址范围为,0000H,FFFFH,,片内的,4KB Flash,程序存储器不起作用。,V,PP,:,引脚,第二功能,,对片内,Flash,编程,接,编程电压,。,(,3,),ALE/,(,Address Latch Enable/PROGramming,,,30,脚),ALE,为,CPU,访问外部程序存储器或外部数据存储器提供,地址锁存信号,,将,低,8,位地址,锁存在片外的地址锁存器中。,引脚,第二功能,,对片内,Flash,编程,为,编程脉冲输入脚。,(,4,),(,Program Strobe ENable,,,29,脚),片外程序存储器读选通信号,低电平有效。,4.,并行,I/O,口引脚,(,1,),P0,口:,8,位,漏极开路双向,I/O,口,当,外扩存储器,及,I/O,接口芯片,时,,P0,口作为低,8,位地址总线及数,据总线的,分时复用,端口。,P0,口也可用,作通用的,I/O,口,,需加上拉电阻,这时为,准双向口,。,作为通用,I/O,输入,应先向端口写入,1,。可驱动,8,个,LS,型,TTL,负载。,(,2,),P1,口:,8,位,准双向,I/O,口,具有内部上拉电阻。,准双向,I/O,口,作为通用,I/O,输入时,应先向端口锁存器写,1,。,P1,口可驱动,4,个,LS,型,TTL,负载。,、和,可用于对片内,Flash,存储器串行编程和校验,它们分别是串行数据输入、输出和移位,脉冲引脚。,(,3,),P2,口:,8,位,准双向,I/O,口,具有内部上拉电阻。,当,AT89S51,扩展外部存储器及,I/O,口时,,P2,口作为,高,8,位地址总线,用。,P2,口,也可作为普通的,I/O,口,使用。当作为通用,I/O,输入时,应先向端口输出锁存,器写,1,。,P2,口可驱动,4,个,LS,型,TTL,负载。,(,4,),P3,口:,8,位,准双向,I/O,口,具有内部上拉电阻。,可作为,通用的,I/O,口使用,。作为,通用,I/O,输入,,应先向端口输出锁存器写入,1,。可,驱动,4,个,LS,型,TTL,负载。,P3,口还可提供,第二功能,。第二功能定义见下表,应熟记。,内部结构展开图,1288,RAM,RAM,地址寄存器,P3,口,P1,口,P2,口,P0,口,锁存器,锁存器,锁存器,锁存器,中断控制,定时,/,计数器,串行,I/O,口,SP,寄存器,B,累加器,A,暂存器,1,暂存器,2,程序状态,字,PSW,指令寄存器,IR,指令译码器,ID,数据指针,DPTR,缓冲器,程序计数器,PC,增,1,程序地址寄存器,AR,定时与控制,4K8,ROM,ALU,CPU,AT89S51,的,CPU,CPU,包括运算器和控制器二大部分。,一、运算器,运算器包括算术逻辑部件,(ALU),、累加器,A,、暂存寄存器、寄存器,B,、程序状态寄存器(,PSW,),十进制调整电路等。运算器主要用于实现算术,/,逻辑运算及位操作运算。下面介绍运算器的各组成部分。,1,、算术逻辑部件,ALU,2,、累加器,A,3,、寄存器,B,4,、程序状态字寄存器,PSW,1,算术逻辑运算单元,ALU,算术运算:,加、减、乘、除;,逻辑运算,:与、或、异或、循环、求补和清零;,位操作:,置“,1,”,、清“,0,”,、求反、测试转移等。,2,累加器,A,是,8,位特殊功能寄存器,字节地址为,E0H,,复位值为,00H,。,作用如下:,(,1,),ALU,单元的输入数据源之一,又是,ALU,运算结果存放单元。,(,2,)数据传送大多都通过累加器,A,,相当于数据的中转站。为解决“瓶颈,堵塞”问题,,AT89S51,增加了一部分可以不经过累加器的传送指令。,3.,寄存器,B,8,位特殊功能寄存器,字节地址为,F0H,,,复位值,为,00H,。,为执行乘法和除法而设。在不执行乘、除法操作的情况下,可把它当,作一个普通寄存器来使用。,乘法,,两乘数分别在,A,、,B,中,执行乘法指令后,乘积在,BA,中,除法,,被除数取自,A,,除数取自,B,,商存放在,A,中,余数存,B,中。,4,程序状态字寄存器,PSW,PSW,位于片内特殊功能寄存器区,字节地址为,D0H,,复位值,为,00H,。,包含了,程序运行状态的信息,,其中,4,位保存当前指令执行后的状态,供,程序查询和判断。,格式如图,2-3,所示。,图,2-3,PSW,的格式,PSW,中各个位的功能,:,(,1,),Cy,()进位标志位,在算术和逻辑运算时,若有,进位,/,借位,,,Cy,1,;否则,,Cy,0,。,在位处理器中,它是位累加器。,(,2,),Ac,()辅助进位标志位,在,BCD,码运算时,用作十进位调整。即当,D3,位向,D4,位产生进位或借位,时,,Ac,1,;否则,,Ac,0,。,(,3,),F0,()用户设定标志位,由用户使用的一个状态标志位,可用指令来使它置,1,或清,0,,控制程序的,流向。用户应充分利用。,(,4,),RS1,、,RS0,(、),4,组工作寄存器区选择,选择片内,RAM,区中的,4,组工作寄存器区中的某一组为当前工作寄存区。,(,5,),OV,()溢出标志位,当执行算术指令时,用来指示运算结果是否产生溢出。如果结果产生溢,出,,OV=1,;否则,,OV=0,。,(,6,)位,保留位,(,7,),P,()奇偶标志位,指令执行完,累加器,A,中,“,1,”,的个数,是,奇数,还是,偶数,。此标志位对,串行通信,有重要的意义,常用奇偶检验的方法来检验数据串行传输的可靠性。,串行异步通信的数据格式 :,奇偶校验:,在发送数据时,数据位尾随的,1,位为奇偶校验位(,1,或,0,)。奇校验时,数据中“,1”,的个数与校验位“,1”,的个数之和应为奇数;偶校验时,数据中“,1”,的个数与校验位“,1”,的个数之和应为偶数。接收字符时,对“,1”,的个数进行校验,若发现不一致,则说明传输数据过程中出现了差错。,二、控制器,1,、程序计数器,PC,程序计数器,PC,的功能与普通微机相同,它用来存放,CPU,执行的下一条指令的地址。当一条指令按照,PC,所指的地址从程序存储器中取出后,,PC,会自动加,1,,指向下一条指令,。程序计数器,PC,是一个,16,位,的寄存器,可寻址,64KB,的程序存储器空间;复位时,,PC,中内容为,0000H,。,2,、指令寄存器,IR,和指令译码器,ID,指令寄存器是存放,指令代码,的地方。当执行指令时,,CPU,把从程序存储器中读取的指令代码送入指令寄存器,然后指令译码器译码后由定时控制电路发生相应的控制信号,最终完成指令所规定的操作。,3,、堆栈指针,SP,位于片内特殊功能寄存器区,字节地址为,81H,,,复位值,为,07H,。,指示堆栈顶部在内部,RAM,块中的位置,可指向内部,RAM 00H,7FH,的任何单元。,堆栈是为,子程序调用,和,中断操作,而设,,,主要用来保护断点,和,现场。,(,1,)保护断点,无论是子程序调用操作还是中断服务子程序调用,最终都要返回主程,序。应预先把主程序的断点在堆栈中保护起来,为程序正确返回做准备。,(,2,)现场保护,执行子程序或中断服务子程序时,要用到一些寄存器单元,会破坏原有内容。要把有关寄存器单元的内容保存起来,送入堆栈,这就是所谓的“现场保护”。,4,、数据指针寄存器,DPTR,16,位特殊功能寄存器,字节地址为,82H,85H,,,复位值,为,00H,。,双数据指针寄存器,便于访问,数据存储器,ROM,。,DPTR0,:,AT89C51,单片机,原有,的数据指针;,DPTR1,:新增加,的数据指针。,AUXR1,的,DPS,位,用于选择,两个数据指针,。,当,DPS=0,时,选用,DPTR0,;当,DPS=1,时,选用,DPTR1,。,数据指针,可作为一个,16,位寄存器来用,也可作为两个独立的,8,位寄存器,DP0H,(或,DP1H,)和,DP0L,(或,DP1L,)来用。,5. AUXR1,寄存器,AUXR1,是辅助寄存器,格式如,图,2-6,所示:,DPS,:,数据指针寄存器选择位。,0,:,选择数据指针寄存器,DPTR0,;,1,:,选择数据指针寄存器,DPTR1,。,图,2-6,AUXR1,寄存器的格式,片内程序,存储器,4KB,(,ROM 0000H0FFFH,),片内数据,存储器,256B,(,RAM 00HFFH,),片外程序,存储器,最大,64KB,(,ROM 0000HFFFFH,),片外数据,存储器,最大,64KB,(,RAM 0000HFFFFH,),AT89S51,在,物理结构,上设计成,程序,存储器与,数据,存储器独立分开的哈佛结构,分为,四,个地址空间:,一、,AT89S51,单片机的存储器配置,2.4 AT89S51,存储器的结构,1234567891011121314,2827262524232221 201918171615,EPROM,2764,1234567891011121314,2827262524232221 201918171615,EPROM,2764,1234567891011121314151617181920,4039383736353433323130292827262524242221,1234567891011121314,2827262524232221 201918171615,RAM,6264,1234567891011121314,2827262524232221 201918171615,RAM,6264,8031,8751,8051,89C51,片内,RAM,片内,ROM,256B,(字节),4K,64K,64K,存储器空间可分为,4,类,:,.,程序存储器空间,片内和片外两部分。,片内,4KB,Flash,ROM,,编程和擦除完全是电气实现。可用通用编程器,对其编程,也可,在线编程,。,当片内,4KB Flash,存储器不够用时,可片外扩展,最多可扩展至,64KB,程序存储器。,.,数据存储器空间,片内,与,片外,两部分。,片内有,128 B RAM,(,52,子系列为,256B,)。,片内,RAM,不够用时,在,片外可扩展至,64KB RAM,。,.,特殊功能寄存器,SFR,(,Special Function Register,),片内各功能部件的控制寄存器及状态寄存器。,SFR,综合反映了整个,单片机基本系统内部实际的工作状态及工作方式。,.,位地址空间,共有,211,个,可寻址位,构成了位地址空间。它们位于内部,RAM,(共,128,位)和特殊功能寄存器区(共,83,位)中。,64KB,ROM,EA=0,EA=1,0000H,0FFFH,1000H,FFFFH,4KB,ROM,FFH,80H,7FH,00H,SFR,RAM,64KB,RAM,(I/O),0000H,FFFFH,片内,片外,片外,程序存储器,数据存储器,二、程序存储器,作用,-,程序存储器用于存放,编好的程序,和,表格常数,。,AT89S51,片内有,4K,字节,ROM,,片外用,16,位地址线最多可扩展,64K,字节,ROM,,两者是统一编址的。,如果 端保持,高,电平,,AT89S51,执行片内前,4KB ROM,地址,(,0000H,0FFFH,),中的程序。当寻址范围超过,4KB,(,1000H,FFFFH,)时,则从片外存储器取指令。,当 端保持,低,电平时,,AT89S51,的所有取指令操作均在片外程序存储器中进行,这时片外存储器可以从,0000H,开始编址。,(,2,)在程序存储器中,有,6,个单元具有特殊功能,000,0,H,000,2,H,:主程序的入口。,000,3,H,000,A,H,:,外部中断,0,入口。,000,B,H,00,12,H,:,定时器,0,溢出中断入口。,00,13,H,00,1A,H,:,外部中断,1,入口。,00,1B,H,00,22,H,:,定时器,1,溢出中断入口。,00,23,H,00,2A,H,:,串行口,中断入口。,复位后,,PC,0000H,,即程序从,0000H,开始执行指令。,两个入口地址间仅有,8,个存储单元,显然不够放置中断服务程序,故通常在中断入口地址处放一条跳转指令,中断服务,程序从跳转后的地址开始存放。,程序,存储器,程序,存储器资源分布,内部,外部,0000H,0FFFH,(4K),0000H,FFFFH,(64K),0000H,0FFFH,(4K),0000H,0001H,0002H,(PC),0000H,是程序执行的起始单元,在这三个单元存放一条无条件转移指令,中断,5,中断,4,中断,3,中断,2,中断,1,0003H,000BH,0013H,001BH,0023H,002BH,外部中断,0,定时器,0,中断,外部中断,1,定时器,1,中断,串行口中断,8,位,0FFFH,0FFEH,EA=1 EA=0,中断入口地址,三、内部数据存储器,1,、总体配置,寄存器区,4,组,(32B),通用,RAM,区,(80B),堆栈或,数据缓冲,位地址区,(16B),寄存器区,4,组,(32B),7FH,寄存器,3,组,寄存器,2,组,寄存器,1,组,寄存器,0,组,.,.,.,.,.,.,.,.,.,00H,30H,2FH,20H,1FH,.,.,.,低,128,单元,专用寄存器区,SFR,FFH,80H,高,128,单元,位寻址区,通用,RAM,区,(,1,)工作寄存器区,内部,RAM,的前,32,个单元(,00H,1FH,)作为工作寄存器使用,共分为,4,组,每组含,8,个寄存器,在组中按,R0,R7,编号。在任一时刻,,CPU,只能使用其中的一组寄存器(即当前寄存器),由,PSW,中的,2,位,RS1,、,RS0,来决定选哪一组为当前工作寄存器,.,2,、低,128,单元,通用,RAM,区,(80B),堆栈或,数据缓冲,位地址区,(16B),寄存器区,4,组,(32B),7FH,寄存器,3,组,寄存器,2,组,寄存器,1,组,寄存器,0,组,寄存器区,4,组,(32B),.,.,.,.,.,.,.,.,.,00H,30H,2FH,20H,1FH,.,.,.,寄存器,0,组,RS1,、,RS0=,00,R7,R6,R5,R4,R3,R2,R1,R0,00H,01H,02H,03H,04H,05H,06H,07H,通用,RAM,区,(80B),堆栈或,数据缓冲,位地址区,(16B),寄存器区,4,组,(32B),7FH,寄存器,3,组,寄存器,2,组,寄存器,1,组,寄存器,0,组,寄存器区,4,组,(32B),.,.,.,.,.,.,.,.,.,00H,30H,2FH,20H,1FH,.,.,.,寄存器,1,组,R7,R6,R5,R4,R3,R2,R1,R0,08H,09H,0AH,0BH,0CH,0DH,0EH,0FH,RS1,、,RS0=,01,通用,RAM,区,(80B),堆栈或,数据缓冲,位地址区,(16B),寄存器区,4,组,(32B),7FH,寄存器,3,组,寄存器,2,组,寄存器,1,组,寄存器,0,组,寄存器区,4,组,(32B),.,.,.,.,.,.,.,.,.,00H,30H,2FH,20H,1FH,.,.,.,寄存器,2,组,R7,R6,R5,R4,R3,R2,R1,R0,10H,11H,12H,13H,14H,15H,16H,17H,RS1,、,RS0=,10,通用,RAM,区,(80B),堆栈或,数据缓冲,位地址区,(16B),寄存器区,4,组,(32B),7FH,寄存器,3,组,寄存器,2,组,寄存器,1,组,寄存器,0,组,寄存器区,4,组,(32B),.,.,.,.,.,.,.,.,.,00H,30H,2FH,20H,1FH,.,.,.,寄存器,3,组,R7,R6,R5,R4,R3,R2,R1,R0,18H,19H,1AH,1BH,1CH,1DH,1EH,1FH,RS1,、,RS0=,11,通用,RAM,区,(80B),堆栈或,数据缓冲,位地址区,(16B),寄存器区,4,组,(32B),7FH,寄存器,3,组,寄存器,2,组,寄存器,1,组,寄存器,0,组,寄存器区,4,组,(32B),.,.,.,.,.,.,.,.,.,00H,30H,2FH,20H,1FH,.,.,.,(,2,)位寻址区(,20H,2FH,)共,16,个字节单元,合计,128,位,位地址为,00H,7FH,。,通用,RAM,区,(80B),位地址区,(16B),7FH,寄存器,3,组,寄存器,2,组,寄存器,1,组,寄存器,0,组,位地址区,20H,21H,22H,23H,24H,25H,26H,27H,28H,29H,2AH,2BH,2CH,2DH,2EH,2FH,00H,01H,02H,03H,04H,05H,06H,07H,08H,0FH,10H,7FH,78H,70H,68H,60H,58H,50H,48H,40H,38H,30H,28H,20H,77H,6FH,67H,1FH,5FH,57H,4FH,47H,3FH,37H,2FH,27H,1FH,17H,.,.,D7 D6 D5 D4 D3 D2 D1 D0,.,.,.,.,.,.,.,.,.,00H,30H,2FH,20H,1FH,.,.,.,(3),用户,RAM,区,(30H,7FH),通用,RAM,区,(80B),位地址区,(16B),00H,30H,2FH,20H,1FH,7FH,寄存器,3,组,寄存器,2,组,寄存器,1,组,寄存器,0,组,通用,RAM,区,.,.,.,.,.,.,.,.,.,.,.,.,共,80,个字节单元,1,、只能以存储单元(字节地址),的形式使用。,2,、常把堆栈开辟在此区。,3,、高,128,单元(,SFR,),说明:,(,1,),SFR,共,26,个,不连续的分散在内部,RAM,的高,128,位,80H,F,FH,单元,中,尽管还有许多空闲地址,但用户不能使用,用于系统升级。,(,2,)有,11,个,SFR,可以位寻址。其特征是字节地址均能被,8,整除(字,节地址的末位是,0,或,8,),(,3,),IP,中有,3,位,,IE,中有,2,位对用户无实际意义,故直接寻址位为,83,位,再加上可位寻址的,16,个字节单元中的,128,位,共计有,211,个,可寻址位。,与,ALU,相关的,(,3,个),累加器,A,、,寄存器,B,、程序状态字寄存器,PSW,与指针相关的,(,5,个),堆栈指针,SP,、数据指针,DPTR0,、,DPTR1,与端口相关的,(,7,个),四个并行输入,/,输出口的寄存器,P0,、,P1,、,P2,、,P3,;,串行口控制寄存器,SCON,、,串行口数据缓冲器,SBUF,、,串行通讯波特率倍增寄存器,PCON,,,一些位还与电源控制相关,所以又称为电源控制寄存器。,与定时,/,计数器相关的,(,6,个),定时器工作模式寄存器,TMOD,;,定时器控制寄存器,TCON,;,定时,/,计数器,T0,的两个,8,位计数初值寄存器,TH0,、,TL0,;,它们可以构成,16,位的计数器,,TH0,存放高,8,位,,TL0,存放低,8,位,定时,/,计数器,T1,的两个,8,位计数初值寄存器,TH1,、,TL1,;,它们可以构成,16,位的计数器,,TH1,存放高,8,位,,TL1,存放低,8,位,与中断相关的,(,2,个),中断优先级控制寄存器,IP,、,中断允许控制寄存器,IE,作为对,AT89S51,存储器结构的总结,,图,2-7,为各类存储器的结构图。,从图中可清楚看出各类存储器在存储器空间的位置。,图,2-7,AT89S51,单片机的存储器结构,总结,1,、地址重叠。,ROM,、,RAM,分别编址,,EA,*,来区别访问片,内,片外程序存储器,;而访问片内片外数据存储器靠不同的指,令和不同的寻址方式。,2,、片外,ROM,和片外,RAM,的读写信号不同。对片外,ROM,的,读写用,PSEN*,、,PROG*,;对片外,RAM,的读写用,RD*,、,WR*,。,3,、位地址空间有两个区域,一个是片内,RAM,中的,20H2FH,,共,16,个字节,128,位;一个是,SFR,中的位地址,共有,11,个字节,,83,个可位寻址。,一、概述,MCS-51,共有,4,个,8,位,双向并行,I/O,端口,,,各具特殊的电路结构,,每位均有自己的输出锁存器(特殊功能寄存器,SFR,)、输出驱动器和输入缓冲器。,这,4,个端口除了按字节输入,/,输出外,还可以按位寻址。,2.5,并行,I/O,端口,二、,P1,口,P1,口某位的位电路结构,1,位电路结构,P1,口位电路结构由以下,三部分组成,:,(,1,)一个数据输出锁存器,用于输出数据位的锁存。,(,2,)两个三态的数据输入缓冲器,BUF1,和,BUF2,,分别用于读锁存器数据,和读引脚数据的输入缓冲。,(,3,)数据输出驱动电路,由一个场效应管(,FET,)和一个片内上拉电,阻组成。,2,工作过程分析,P1,口,只能作为通用的,I/O,口,使用。,(,1,),P1,口作,输出口,时,若,CPU,输出,1,,,Q=1,,,=0,,场效应管截止,,P1,口,引脚的输出为,1,;若,CPU,输出,0,,,Q=0,,,=1,,场效应管导通,,P1,口引,脚的输出为,0,。,(,2,),P1,口作为,输入口,时,分为,“读锁存器”,和,“读引脚”,两种方式。,“读锁存器”时,,锁存器的输出端,Q,的状态经输入缓冲器,BUF1,进入内,部总线;,“读引脚”时,,,先向锁存器写,1,,使场效应管截止,,引脚上的电平经输入缓冲器,BUF2,进入内部总线。,3,P1,口的特点,(,1,),P1,口的字节地址为,90H,,位地址为,9097H,,是,内部带有上拉电阻,的,8,位准双向口。,(,2,),P1,口作输出口使用时,,无,需外接上拉电阻。,(,3,),P1,口作输入口使用时,应区分读引脚和读锁存器,,读引脚,时,应,先向锁存器写,“,1”,。,三、,P2,口,P2,口某一位的位电路结构,双功能口,,字节地址,为,A0H,,,位地址,为,A0H,A7H,。,1,位电路结构,P2,口,某一位的电路,包括:,(,1,)一个数据输出锁存器,用于输出数据位的锁存。,(,2,)两个三态数据输入缓冲器,BUF1,和,BUF2,,分别用于读锁存器数据和,读引脚数据的输入缓冲。,(,3,)一个多路转接开关,MUX,,一个输入是锁存器的,Q,端,另一个输入是,高,8,位地址。,(,4,)输出驱动电路,由场效应管(,FET,)和内部上拉电阻组成。,2,工作过程分析,(,1,),P2,口用作地址总线,在控制信号作用下,,MUX,与“地址”接通。当“地址”为,0,时,场效应管,导通,,P2,口引脚输出为,0,;当“地址”线为,1,时,场效应管截止,,P2,口引,脚输出,1,。,(,2,),P2,口用作通用,I/O,口,在内部控制信号作用下,,MUX,与锁存器的,Q,端接通。,CPU,输出,1,时,,Q=1,,场效应管截止,引脚输出,1,;,CPU,输出,0,时,,Q=0,,场效应管导通,引脚输出,0,。,P2,口输入时,分,“读锁存器,”和,“读引脚”,两种方式,:,“读锁存器”时,,Q,端信号经输入缓冲器,BUF1,进入内部总线。,“读引脚”时,先向,锁存器写,1,,使场效应管截止,引脚上的电平经,输入缓冲器,BUF2,进入内部总线。,3,P2,口的特点,作为地址输出线,时,,P2,口输出的高,8,位地址与,P0,口输出的低,8,位地,址,可寻址,64KB,地址空间。,作为通用,I/O,口,时,,P2,口为准双向口。功能与,P1,口一样。,一般情况下,,P2,口,大多作为高,8,位地址总线口,使用,这时就不能再作,为通用,I/O,口。,四、,P3,口,P3,口某一位的位电路结构,P3,口的字节地址为,B0H,,位地址为,B0H,B7H,。,每位,具有第二功能:,口线,第二功能,信号名称,I/O,特性,P3.0,RXD,串行数据接收,输入,P3.1,TXD,串行数据发送,输出,P3.2,INT0,外部中断,0,申请,输入,P3.3,INT1,外部中断,1,申请,输入,P3.4,T0,定时,/,计数器,0,输入,输入,P3.5,T1,定时,/,计数器,1,输入,输入,P3.6,WR,外部,RAM,写选通,输出,P3.7,RD,外部,RAM,读选通,输出,1,位电路结构,P3,口某一位的电路包括:,(,1,),1,个,数据输出锁存器,锁存输出数据位。,(,2,),3,个,三态数据输入缓冲器,BUF1,、,BUF2,和,BUF3,,分别用于读锁存器、,读引脚数据和第二功能数据的输入缓冲。,(,3,)输出驱动,由与非门、场效应管(,FET,)和内部上拉电阻组成。,2,工作过程分析,(,1,),P3,口用作第二输入,/,输出功能,当选择第二,输出,功能时,该位的锁存器需要置,1,,使与非门为开启状态。,当第二输出为,1,时,场效应管截止,引脚输出为,1,;,当第二输出为,0,时,场效应管导通,引脚输出为,0,。,当选择第二,输入,功能时,该位的锁存器和第二输出功能端均应置,1,,保,证场效应管截止,引脚的信息由输入缓冲器,BUF3,的输出获得。,(,2,),P3,口用作第一功能,通用,I/O,口,用作,第一功能通用输出,时,,第二输出功能,端应保持高电平,与非门,开启。,CPU,输出,1,时,,,Q=1,,场效应管截止,,引脚输出为,1,;,CPU,输出,0,时,,,Q=0,,场效应管导通,,引脚输出为,0,。,用作,第一功能通用输入,时,位的输出锁存器和第二输出功能均应,置,1,,场效应管截止,引脚信息通过输入,BUF3,和,BUF2,进入内部总线,,完成,“读引脚”,操作。,当,P3,口,第一功能通用输入,时,也可执行,“读锁存器”,操作,此时,Q,端,信息经过缓冲器,BUF1,进入内部总线。,3,P3,口的特点,P3,口内部,有上拉电阻,,无高阻抗输入态,-,准双向口,。,P3,口,作为第二功能的输出,/,输入,或第一功能通用输入,,均须将相应,位的锁存器置,1,。实际应用中,由于复位后,P3,口锁存器自动置,1,,满足第,二功能所需的条件,所以不需任何设置工作,就可以进入第二功能操作。,P3,口,不作为第二功能,用时,可,作为第一功能通用,I/O,使用。,引脚输入部分有两个缓冲器,第二功能的输入信号取自缓冲器,BUF3,的,输出端,第一功能的输入信号取自缓冲器,BUF2,的输出端。,五、,P0,口,P0,口某一位的位电路结构,P0,口的字节地址为,80H,,位地址为,80H87H,,是漏极开路的准双向口。,可作为,低,8,位,地址,/,数据,总线口;也可作为通用,I/O,口。,1,位电路结构,一个输出锁存器:,用于数据位的锁存。,两个三态的数据输入缓冲器,:,用于,读锁存器数据,的输入缓冲器,B,UF1,和,读引脚数据,的输入缓冲器,BUF2,。,一个多路转接开关,MUX,:作为通用,I/O,口和地址,/,数据选择,反相器、与门:构成控制电路,两个场效应管:构成输出驱动电路,P0,口结构,输出锁存器,多路开关,构成输出驱动电路,构成控制电路,带有控制端的输入缓冲器,2,、,P0,口作为通用,I/O,口使用的情况,单片机硬件自动使控制,C=0,,多路选择开关与锁存器反相输出端,Q*,端相连,与门关闭。, 作输出口时,内部总线发出“,1”,信号,在“写锁存器”信号控制下,“,1”,信号被锁存在锁存器中,故反相端,=0,,导致场效应管,T2,截止,又由于与门关闭,,T1,也截止,故,T2,漏极开路,即输出端漏极开路,需在外部电路接上拉电阻才能在引脚上得到“,1”,信号。,内部总线发出“,0”,信号,(,同理,),P0,口某位结构,VCC,R,作输入口时:分为“读引脚”和“读锁存器”两种情况,读引脚:,从内部总线送出“,1”,信号,,使,T2,管截止。否则,若之前锁存器为,“,0”,,端口被篏位在“,0”,电平。使输入高电平“,1”,无法读入。所以:,P0,口在作为通用,I/O,口时,属于准双向口。,读锁存器:此时,Q,端信息经过缓冲器,BUF1,进入内部总线。,3,、,P0,口作为地址,/,数据总线使用的情况,单片机硬件自动使控制,C=1,,多路选择开关与反相器相连,与门打开。,输出时(输出,地址低,8,位,),地址,/,数据总线发出“,1”,信号,使场效应管,T1,导通,,T2,截止,引脚上得,到,“1”,;,地址,/,数据总线发出“,0”,信号,使场效应管,T1,截止,,T2,导通,引脚上得,到,“0”,。,无需,外接上拉电阻,P0,口某位结构,输入时(输入,数据,),CPU,自动,地使转换开关,MUX,拨向锁存器,并向,P0,口写入,0FFH,,使,T2,截止,,T1,也截止,同时“读引脚”信号有效,数据经缓冲器进入内部数据总线。,可见,,P0,口作为地址,/,数据总线使用时,具有,高电平,、,低电平,和,高阻抗,3,种状态,是一个真正的双向口。,说明,:低,8,位地址信息和数据信息,分时地,出现在地址,/,数据总线上。 在时序上是先出现地址后出现数据。,P0,口小结:,1,、,P0,口可作为地址,/,数据总线使用,也可以作为通用,I/O,口使用,但,不能,同时使用两种功能,。,2,、两种功能,自动转换,(所用的指令不同)无需专门的指令去切换。,3,、作为通用输出口使用时应外接上拉电阻。,4,、作为通用输入口使用时应区分读引脚和读锁存器。 若是读引脚,应,先向锁存器写“,1”,。,P0,口,P1,口,P2,口,P3,口,(,a,),不恰当的连接:高电平驱动,(,b,),恰当的连接:低电平驱动,发光二极管与,AT89S51,并行口的直接连接,六、,P1,P3,口驱动,LED,发光二极管,时钟电路产生,AT89S51,工作时所,必需的控制信号,,在时,钟信号的控制下,严格按时序执行指令。,时钟频率,直接影响单片机的,速度,,时钟电路的质量也,直接影响单片机系统的稳定性。,MCS-51,单片机允许的时钟,频率在,1.2MHz,12MHz,之间。,常用的时钟电路有,两种方式,,一种是,内部时钟,方式,,另一种是,外部时钟,方式。,2.6,时钟电路与时序,一、单片机内部时钟电路,1,、内部结构,(,1,)单片机内部有一个可控的高增益负反馈反相放大器,,XTAL2,(,18,脚)和,XTAL1,(,19,脚)分别是放大器的输出端和输入端,放大器可与作为反馈,元件的片外晶体或陶瓷谐振器一起构成自激振荡器。,(,2,)振荡器的工作受,PD,(特殊功能寄存器)端控制。,PD,为掉电保持,模式控制位。,PCON.1=1(PD=1),振荡器停止工作,系统进入低功耗状态。常用于电,源故障时仍需保持,RAM,信息的场合。,PCON.1=,(PD=0),单片机正常运行。,、外部连线及注意事项,注意:,1,、振荡频率取决于外接晶振频率,晶振频率范围通常是,12MHz,。晶,体频率越高,,单片机速度就越快,。常选,6MHz,或,12MHz,的,石英晶体。,2,、电容大小会影响振荡器频率高低、振荡器的稳定性和起振的快速性。,C1,、,C2,可在,20pF,100pF,之间取值。通常晶振频率为,12MHZ,,,C1,和,C2,为,30pF,;晶振频率为,6MHZ,,,C1,和,C2,为,20pF,。,3,、设计,PCB,板时,应使晶振和电容尽可能与单片机芯片,靠近,,以,减小,寄生,电容,增强稳定性。,二、单片机外部时钟方式,用现成的外部振荡器产生脉冲信号,常用于,多片,AT89S51,同时工作,以便于多片,AT89S51,单片机之间的,同步,,一般为低于,12MHz,的方波。 外部时钟源,直接接到,XTAL1,端,,XTAL2,端,悬空,,见图,2-14,。,AT89S51,的外部时钟方式电路,1,、几个常用概念,由振荡产生的振荡信号并不能直接为单片机使用,还必须由单片机内部的时钟电路对其分频:,振荡器,时钟发生器,2,Q,Q,P1,P2,状态时钟,3,6,ALE,机器周期,XTAL1,XTAL2,三、时序,ALE,ALE,一个,机器周期,包含,12,个振荡周期或,6,个时钟周期,指令的执行时间称作,指令周期,(,单、双、四周期,),P1,P2,P1,P2,P1,P2,P1,P2,P1,P2,P1,P2,P1,P2,(,1,)时钟周期,时钟周期指为单片机提供定时信号的,振荡源,的周期或,外部输入时钟,的周期。,(,2,)状态周期,它是振荡周期的两倍,,分为,P1,节拍和,P2,节拍,,通常在,P1,节拍完成算术逻辑操作,在,P2,节拍完成内部寄存器之间的数据传送操作。(注意,P1,和,P2,的相位关系 ),(,3,)机器周期,一个机器周期由,6,个状态,组成,如果把一条指令的执行过程分作几个基本操作,则将完成一个基本操作所需的时间称作机器周期。单片机的单周期指令执行时间就为一个机器周期。,(,4,)指令周期,指令周期是执行一条指令所需的全部时间。,MCS-51,单片机的指令周期通常由,1,、,2,、,4,个机器周期组成。,例:,若晶振频率为,fosc=12MHz,,时钟周期,状态周期,,ALE,,机器周期分别为多少?,时钟周期:,Tosc=1/fosc=1/12,S,状态周期:,Tsy =2Tosc=1/6,S,ALE,周期:,ALE =6Tosc=1/2,S,机器周期:,Tcy=12Tosc=1,S,2,、,MCS-51,单片机的典型指令时序包括:,单,字节,单,机器周期指令,单,字节,双,机器周期指令,单,字节,四,机器周期指令(乘法、除法指令),双,字节,单,机器周期指令,双,字节,双,机器周期指令,三,字节,双,机器周期指令,单字节单机器周期指令如:,INC A ;(04H),双字节单机器周期指令如:,ADD A,,,#data;(24H data),单字节双机器周期指令 如:,INC DPTR ;(A3H),2,个机器周期中,ALE,信号有效,4,次,后,3,次读操作无效。,注意:,(,1,),以振荡信号和,ALE,信号作参考,,ALE,信号代表取指周期(当,ALE,信号出,现时取操作码),(,2,)在访问外部数据存储器(执行,MOVX,指令)时,将,跳过一个,ALE,脉冲,(在,一个机器周期只有效一次),故,ALE,的频率不是恒定的。,(,3,)大多数指令需要,12,个机器周期,只有乘法 (,MUL,)和除法(,DIV,)指,令需要,2,个以上机器周期(,4,个机器周期),2.7,复位操作和复位电路,一、复位的基本概念:,1,、什么是复位,复位是单片机的,初始化,操作,其主要功能是把包括,PC,在内的一些专用寄存器赋予初始数据,使单片机从这些初值开始工作。,复位后:,PC=0000H,,,SP=07H,2,、复位的作用:,()开机初始化,否则单片机从随机状态开始工作,不能正常运转。,()系统死机(程序出错或操作错误引起)时重新启动,复位不影响内部的状态。,3,、复位的实现:,单片机的复位都是靠,外部电路,实现的。,在时钟电路工作后,只要在单片机的,RST,引脚上出现个机器周期以上的高电平,实际应用中,高电平应大于,10ms,,单片机便复位:,若,RST,保持高电平则循环复位,,若,RST,从高电平变为低电平,则单片机从,0000,地址开始执行程序。,二、复位电路的设计:,、基本复位电路,上电复位电路 按键复位,在,MCS,51,中,最常见的复位电路为上电复位电路,它能有效的实现上电复位和手动复位。,复位信号为高电平有效,其有效时间应持续,24,个振荡周期以上,才能完成复位操作,若使用,6MHz,晶振,则需持续,4S,以上才能完成复位操作。,在通电瞬间,由于,RC,的充电过程,在,RST,端出现一定宽度的正脉冲,只要该正脉冲保持,10ms,以上,就能使单片机自动复位,在,6MHz,时钟时,通常,C,取,22F,,,R1,取,200,,,R2,取,1K,,这时能可靠的上电复位和手动复位。,CMOS,单片机内部有拉低电阻,故不接外接电阻也可。,2,、系统复位,外部扩展的,I/O,接口电路也需要系统的同步复位信号,可同步给出,也可独立设计。,3,、,WDT,复位,常用的,WDT,芯片有:,DS1232L,、,philips,公司的,max809,,,max810,、,X5045,、,IMP813,。,指令,寄存器,译码,地址,译码,程序计数器,地址寄存器,累加器,A,运算器,存,储,器,内部数据总线,外部地址总线,AB,数据缓冲器,外部数据总线,DB,寄存器区,外部控制总线,CB,内部控制信号,时钟及清零,单片机的工作过程,取指过程,例,:,MOV A,#09H,74H,09H,;,把,09H,送到累加器,A,中,执行过程,PC=,0000H,0001H,0000H,0002H,0 1 1 1 0 1 0 0,0 0 0 0 1 0 0 1,(PC),(PC),0001H,0002H,0000H,外部控制总线,CB,取指过程,(PC),执行过程,你知道,PC,的作用吗?,1.,AT89S51,单片机内部,RAM,包括,( ),。,A.,程序存储区,B.,堆栈区,D.,工作寄存器及特殊功能区,C.,位寻址区,课堂练习,E.,中断入口地址区,2.,09H,位地址所在的字节地址是( ),A,02H,C,08H,B,21H,D,20H,课堂练习,3.,单片机在进行取指令操作时,指令的地址是由( )的内容决定。,A,SP,C,DPTR,D,PSEN,和,ALE,B,PC,课堂练习,A,20H,B,30H,D,70H,C,00H,课堂练习,4.,8031,单片机中既可位寻址,又可字节寻址的单元是( )。,两种低功耗节电工作模式,:,空闲模式,(,idle mode,)和,掉电保持模式,(,power down mode,)。,低功耗节电模式的控制电路,2.8,低功耗节电模式,两种节电模式可通过,PCON,的,位,IDL,和,位,PD,的设置来实现。,特殊功能寄存器,PCON,的格式,PCON,寄存器各位定义:,SMOD,:,串行通信波特率选择(该位见第,7,章的介绍)。,:保留位。,GF1,、,GF0,:通用标志位,两个标志位用户使用。,PD,:,掉电保持模式控制位,,PD=1,,则,进入掉电保持模式。,IDL,:,空闲模式控制位,若,IDL=1,,则,进入空闲运行模式,。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!