- 1、本文档共54页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
51单片机中的微处理器四、存储器、堆栈、SFR五、单片机
一、MCS-51系列单片机
二、MCS-51单片机内部结构与引脚信号三、51单片机中的微处理器
四、存储器、堆栈、SFR
五、单片机时序
六、单片机的工作方式
七、输入输出(I/O)端口;40;51系列单片机常见封装;数据存储器;在访问片外存储器时为分时复用的地址(低8位)/数据总线;XTAL2(18脚) 、XTAL1(19脚) :外接晶体和微调电容。; (29脚):片外程序存储器的读选通信号,也就是片外程序存储器的读信号。;P0.0-P0.7(39脚~32脚):P0口8位双向I/O口。在访问片外存储器时,它是分时复用的地址(低8位)和数据总线。; P3.0-P3.7(10脚~17脚):P3口8位双向I/O口。;算数逻辑单元
ALU;1、算数逻辑单元ALU;3、控制部件及振荡器;4、专用寄存器组;B: 8 位的寄存器(8bit register);CY(PSW.7)进位/借位标志位:若ACC在运算过程中发生了进位或借位,则CY=1;否则=0。它也是布尔处理器的位累加器,可用于布尔操作。
AC(PSW.6)半进位/借位标志位:若ACC在运算过程中,D3位向D4位发生了进位或借位,则AC=1,否则=0。
F0 (PSW.5):可由用户定义的标志位。
OV (PSW.2):溢出标志位。OV=1时特指累加器在进行运算时出错(超出范围);OV=0时未出错。
P (PSW.0)奇偶标志位:P=1表示累加器中“1”的个数为奇数;P=0表示累加器中“1”的个数为偶数。;RS1;DPTR:16位的数据指针;8051存储器可以分成两大类:;存储器结构(8051)memorizer structure;内部
ROM
(EA=1);在程序存储器中,有6个单元具有特殊功能; org 0000h
jmp main
(跳过中断入口地址区)
org 0100h
main: mov p1,#55h
mov r0,#3fh
Loop: djnz r0,loop
cpl a
mov p1,a
jmp main
end;片内RAM 128字节(00H—7FH);R0;27H;这些可位寻址的空间,可通过执行指令直接对某一位进行操作,如置1、清0或判1、判0等,可用作软件标志位或用于位(布尔)处理。
20H~2FH:既可以字节操作,又可以位操作,但是要用不同的指令来区分;
MOV 20H,A (字节寻址)
SETB 00H (位寻址直接给出位地址)
SETB 20h.0 (位寻址给出的是字节地址);可寻址片外RAM 64K字节 (0000H—FFFFH);
可寻址片内RAM 128字节 (00H—7FH);; 在片内RAM中,常常要指定一个专门的区域来存放某些特别的数据,它遵循先进后出和后进先出(LIFO/FILO)的原则,这个RAM区叫堆栈。;00H;从堆栈取出数据时:取出的数据是最近放进去的一个数据,也就是当前栈顶的数据。然后SP再自动减1,仍指着栈顶……;▼特殊功能寄存器SFR(专用寄存器)
专用于控制、选择、管理、存放单片机内部各部分的工作方式、条件、状态、结果的寄存器。;FFH;SFR;五、单片机时序;振荡周期: 外接振荡器的周期.f=12MHz, 则T=1/12us
机器周期:等于12个振荡周期。例如外接晶振的频率为12MHz,则机器周期是为1us。
指令周期:以机器周期为单位,51系列单片机有一机器周期指令,二个机器 周期指令,四个机器周期指令。;六、单片机的工作方式;SMOD位,串行口波特率倍率控制位,SMOD=1,波特率加倍
PD为掉电控制位,PD=1,晶振停振,RAM和SFR内容保持不变;51系列单片机片内有四个并行的I/O口;在无外扩存储器的系统中,这四个端口的每一个都可以作双向通用的I/O端口。;P0.n(n=0~7)由一个输出锁存器、两个三态输入缓冲器和输出驱动电路及控制电路组成。P0口既可以作
为I/O用,也可以作为地址/数据线用。;P0口作为普通I/O口;② 输入时----分读引脚或读锁存器
读引脚:由传送指令(MOV)实现;
下面一个缓冲器用于读端口引脚数据,当执行一条由端口输入的指令时,读脉冲把该三态缓冲器打开,这样端口引脚上的数据经过缓冲器读入到内部总线。;;**原因:如果此时该端口的负载恰是一个晶体管基极,且原端口输出值为1,那么导通了的PN结会把端口引脚高电平拉低;若此时直接读端口引脚信号,将会把原输出的“1”电平误读为“0”电平。现采用读输出锁存器代替读引脚,图中,上面的三态缓冲器就为读锁存器Q端信号而
文档评论(0)