![第一章8051单片机的基本结构及工作原理_第1页](http://file4.renrendoc.com/view/cdcdb4f97aac9c2f0e5002050a96c793/cdcdb4f97aac9c2f0e5002050a96c7931.gif)
![第一章8051单片机的基本结构及工作原理_第2页](http://file4.renrendoc.com/view/cdcdb4f97aac9c2f0e5002050a96c793/cdcdb4f97aac9c2f0e5002050a96c7932.gif)
![第一章8051单片机的基本结构及工作原理_第3页](http://file4.renrendoc.com/view/cdcdb4f97aac9c2f0e5002050a96c793/cdcdb4f97aac9c2f0e5002050a96c7933.gif)
![第一章8051单片机的基本结构及工作原理_第4页](http://file4.renrendoc.com/view/cdcdb4f97aac9c2f0e5002050a96c793/cdcdb4f97aac9c2f0e5002050a96c7934.gif)
![第一章8051单片机的基本结构及工作原理_第5页](http://file4.renrendoc.com/view/cdcdb4f97aac9c2f0e5002050a96c793/cdcdb4f97aac9c2f0e5002050a96c7935.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式c语言——
嵌入式开发入门1参考资料1,?单片机原理及其接口技术?〔第2版〕胡汉才清华大学出版社〔42元〕2,?AT89系列单片机原理与接口技术? 王幸之等北京航空航天大学出版社〔48元〕3,?8051/96系列单片机原理及应用? 孙涵芳徐爱卿北京航空航天大学出版社〔35元〕4,?电子世界?中国电子学会主办〔期刊6.00元/期〕234本课主要内容及课时安排理论课学时24学时
第1章单片机根底知识〔4学时〕第3章Cx51数据与运算第5章Cx51构造数据类型中指针〔4学时〕第6章C51函数第8章8051内部资源的编程〔6学时〕第7,9章〔4学时〕第11,13章〔6学时〕5如何学习本门课程深刻掌握单片机的硬件结构〔RAM、定时器、并行和串行口中断系统,以及特殊功能存放器SFR〕。——坚持课后复习要有C和汇编语言根底熟练掌握指令系统。这也是运用C51编程的重要根底。掌握单片机与外围电路的接口。单片机应用的高级阶段。要有一本好的参考书。6计算机技术与单片机单片机的诞生标志着微型计算机的开展已经形成了:通用计算机系统和嵌入式计算机系统两大分支。作为嵌入式控制器,单片机的设计理念是:微型化、低本钱、低功耗及具有很好的性价比。是通用计算机所无法取代的。广泛地应用于家用电器、汽车电子、机器人、工业控制及仪表设计、办公自动化等重要的场合。对于一个当代工程师,对单片机的掌握程度已经成为直接影响其事业开展的重要因素。7微型计算机的应用形态从应用形态上,微机可以分成三种:◆多板机〔系统机〕将CPU、存储器、I/O接口电路和总线接口等组装在一块主机板〔即微机主板〕。各种适配板卡插在主机板的扩展槽上并与电源、软/硬盘驱动器及光驱等装在同一机箱内,再配上系统软件,就构成了一台完整的微型计算机系统〔简称系统机〕。工业PC机也属于多板机。8◆单板机将CPU芯片、存储器芯片、I/O接口芯片和简单的I/O设备〔小键盘、LED显示器〕等装配在一块印刷电路板上,再配上监控程序〔固化在ROM中〕,就构成了一台单板微型计算机〔简称单板机〕。单板机9单板机的I/O设备简单,软件资源少,使用不方便。早期主要用于微型计算机原理的教学及简单的测控系统,现在已很少使用。10◆单片机在一块硅芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。三种应用形态的比较:单板机单片机系统机〔多板机〕11通用计算机与单片机在硬件结构上的比较
微型计算机单片机微型计算机的组成框图〔由多个IC芯片组装在一个主电路板上〕8051单片机所有单元都组装在一个IC芯片上数据RAMCPU并行I/O程序ROM定时/计数器串行端口中断控制器扩展I/O端口系统总线〔DB、AB、CB〕大而全小而精绪论结束12嵌入式计算机系统人们在工业控制、家电产品、智能仪表、汽车电子等领域进行智能化设计时,将嵌入到被控制对象中的、已经失去了原有通用计算机形态及功能的专用计算机称之为“嵌入式计算机系统〞。在这些被控制对象中,往往要求嵌入式计算机系统要有极小的体积和极低的本钱,要有极小的功耗和较高的可靠性,而这些又恰恰是通用计算机无法做到的。以单片机为代表的嵌入式控制器能够极大地满足这种市场的需求。所以单片机又称微控制器〔microcontroller〕。返回13第一章单片机根底知识1.18051单片机的特点1.28051单片机内部结构1.38051系统扩展1.48051指令系统14
1.18051单片机的特点2.在8051单片机中,包含有CPU、程序存储器ROM、数据存储器RAM、定时/计数器、并行I/O端口、串行口、中断系统等;3.由于在设计理念上的不同,单片机内部包含的模块从性能上一般要比通用机简单,这样使工程技术人员在使用、编程和设计上非常简单、方便,也利于降低单片机的制造本钱;1.单片机具有计算机的根本特征,因此在其芯片内部包含着与通用计算机相同的根本部件和模块。由于其特殊性,在高档单片机中还包含了通用机所没有的一些特殊的电路模块〔A/D、D/A、PWM等〕;15一、8051单片机内部方框图
时钟电路4KROM程序存储器256BRAM数据存储器2X16位定时/计数器CPU处理器64KB总线扩展控制器可编程I/O端口P0-3可编程串行口中断控制〔以8051单片机为例〕16二、8051系列芯片及制造工艺返回171.28051的内部结构8051内部结构组成:CPU存储器并行口串行口定时器/计算器中断18一、CPU运算器包括:ALU、存放器ACC、B、TMP等功能:算术运算:+,—,×,÷逻辑运算:与,或,非,等控制器包括:定时控制逻辑、存放器IR、ID、PC、DPTR等功能:Page419程序状态字PSW:8位存放器,表征程序执行的状态信息。CY〔PSW.7〕进位标志:在加减法运算中,累加器A的最高位D7有进位,那么CY=1,否那么CY=0.同理,在减法运算中,如果A7有借位,那么CY=1。AC〔PSW.6〕:辅助进位位:用来判断加减法运算时,低四位是否向高四位进位或借位(即A3的进位或借位)F0〔PSW.5〕用户标志位:完全由用户来定义和使用。RS1,RS0工作存放器区选择位:确定工作存放器R0-R7在4个区中的位置。可以通过修改RS1,RS0的值来改变工作存放器区的选择。CYACF0RS1RS0OV-PRAM分配图20OV〔PSW.2〕溢出标志位:判断有符号数运算时是否有溢出。OV=1说明有溢出。P(PSW.0)奇偶标志位:用来标志累加器A中运算后1的个数。当P=1时,说明A中1的个数为奇数个,反之为偶数个。CYACF0RS1RS0OV-P21【举例】:有两个数0FH和F8H,试将两数相加
MOVA,#0FH;将立即数0FH送累加器AADDA,#0F8H;A的内容与立即数0F8H相加,结果送A00001111运算结果:A=07H
+11111000
Cy→100000111如何根据PSW来分析运算结果是否有溢出?CY=1OV=0AC=1P=122二、存储器存储器组织:哈佛结构普林斯顿结构231.8051单片机的存储器的配置特点(哈佛结构)①内部集成了4K的程序存储器ROM;②内部具有256B的数据存储器RAM; ③可以外接64K的程序存储器和数据存储器。从物理结构的角度讲,8051单片机的存储系统可以分为四个存储空间:即片内ROM,RAM和片外ROM、RAM。从逻辑上讲〔即用户编程的角度讲〕8051单片机的存储系统又可分为三个存储空间。即片内RAM,片外RAM,片内或外的程序存储器ROM。24从物理结构上单片机系统的存储器结构图
〔四个局部〕
8051单片机片内ROM4K(/EA=1)片内RAM256B片外RAM64K片外ROM64K(/EA=0或片内溢出〕返回返回上一次000HFFFH0000HFFFFH0FFFH1000H25〔一〕程序存储器(片内与片外)1、程序存储器〔ROM〕是存放程序、常数和表格的。2、在8051单片机中:
0FFFH0000H/EA=1时,系统执行片内的4KROM中的程序片外程序存储器(最大64K)单片机内部程序存储器(4K)/EA=0时,系统执行片外的程序0FFFH0000HFFFFH1000HPC>FFFH26程序存储器六个特殊的单元在程序存储器中,有六个单元是专用的。通常不能随便使用。0000H单元:上电复位时程序计数器PC指向的单元;0003H单元:外部中断/INT0的入口地址;000BH单元:定时器T0的溢出中断入口地址;0013H单元:外部中断/INT1的入口地址;001BH单元:定时器T1的溢出中断入口地址;0023H单元:串行口接收、传送的中断入口地址。返回ROM图1个复位地址+5个中断源入口地址27〔二〕内部数据存储器RAM数据存储器分为两个地址空间
1,访问内部数据存储单元时,使用
MOV
指令;
2,访问外部数据存储器时,使用
MOVX
指令。存储结构图特殊功能寄存器SFR通用数据存储器80H7FH00HFFH片内RAM片外RAM256B个字节64KB个字节片外数据存储器64KB0000HFFFFH1、访问片内AM20H单元MOVA,20H2、访问片外AM20H单元MOVR0,#20HMOVXA,@R028片内RAM低128B字节功能分配图
位寻址区3区2区1区0区便笺区08H07H00H7FH30H2FH20H1FH18H17H10H0FH四个工作存放器区每个区中有R0-R7八个工作存放器位寻址区16个单元20H-2FH,共有128可寻址位个位。位地址:00H-7FH注意:位地址与字节地址的区别通用的RAM区地址:30H-7FH继续返回上一次29片内RAM〔20H-2FH〕中的位寻址区结构图7F7E7D7C7B7A797877767574737271706F6E6D6C6B6A696867666564636261605F5E5D5C5B5A595857565554535251504F4E4D4C4B4A494847464544434241403F3E3D3C3B3A393837363534333231302F2E2D2C2B2A292827262524232221201F1E1D1C1B1A191817161514131211100F0E0D0C0B0A090807060504030201002FH20H字节地址返回上一次30位寻址区内的地址是位地址。共有00-7FH〔共128个位〕;要区分字节地址和位地址这两个不同的地址概念:MOVA,20h;将RAM的20单元内容送累加器A;MOVC,20h;将RAM位寻址区中20H位送CY中。返回310区工作存放器区结构图R7R6R5R4R3R2R1R0RAM地址07H06H05H04H03H02H01H00H返回上一次32
标识符名称地址ACCBPSWSPDPTRP0P1P2P3IPIETMODTCON累加器B寄存器程序状态字堆栈指针数据指针(包括DPH,DPL)口0口1口2口3中断优先级控制寄存器中断允许控制寄存器定时/计数器方式控制寄存器定时/计数器控制寄存器0E0H0F0H0D0H81H83H,82H80H90H0A0H0B0H0B8H0A8H89H88H〔三〕特殊功能存放器SFR(表一)33SFR(表二)
标识符名称地址TH0TL0TH1TL1SCONSBUFPCON定时/计数器0初值寄存器高8位定时/计数器0初值寄存器低8位定时/计数器1初值寄存器高8位定时/计数器1初值寄存器低8位串行口控制寄存器串行口数据缓冲器(接收,发送)电源控制寄存器8CH8AH8DH8BH98H99H97HSFR高128B低128B0FFH80H7FH00H特殊功能寄存器SFR在片内RAM中的位置注:表中黄色的单元为可按位寻址的字节34特殊功能存放器SFR说明程序计数器PC:用来存放下一条要执行的指令地址,长度为16位,所以寻址范围为0-65535(64K).在物理上是独立于SFR.累加器A:最常用的专用存放器,大多数的指令操作数都来自累加器A.所有的算术运算指令的运算结果都存放在A中.B存放器:乘除法指令使用的存放器.数据指针DPTR:一个16位的存放器.由高八位DPH和低八位DPL构成。DPTR主要用来存放RAM、ROM中数据块的首地址,所以称之为数据指针。
例如:片外RAM的2000H单元中有一个数x,试将其送到累加器A中.MOVDPTR,#2000h;DPTR←2000HMOVXA,@DPTR;A←x〔间址方式〕35SP堆栈指针:8位存放器,用来指示堆栈的位置,可由软件修改。51单片机的设计中,片内RAM区低128单元为堆栈的可用空间。〔复位时,SP被初始化为07H〕堆栈操作过程:进栈:PUSHACC指令〔设SP=07H〕1,SP+1送SP,此时SP=08H;2,ACC送RAM的08H单元;出栈:POPACC〔设SP=08H〕;1,将RAM中08H单元内容送A;2,SP-1送SP,此时SP=07H。
07HSP07HRAMx累加器A堆栈操作示意图08H“临时仓库〞36通过修改SP的值来改变堆栈在RAM中的位置:
MOVSP,#60H08H07HRAM改变堆栈位置示意图61H60H7FH60HSP注意:FILO〔FirstInLastOut〕例:比较以下两段程序:MOVSP,#60HMOVSP,#60HPUSH30HPUSH30HPUSH40HPUSH40HPOP40HPOP30HPOP30HPOP40H37并行端口P0-P3:80H、90H、A0H、B0H。如:MOV80H,A;将累加器中的数据送到P0口输出MOVA,90H;将P1口的数据输入到累加器A中
38定时/计数器T0、T1:无论是定时还是计数,对于8051单片机的定时/计数器来说,都是一个“计数器〞在计数。这个“计数器〞是由两个8位存放器〔高位和低位〕构成的16位计数器,分别是TH0、TL0〔T0〕;TH1、TL1〔T1〕。TH和TL中的数据直接与“定时操作〞或“计数操作〞有关,因此在使用定时/计数器之前,要对它进行初始化,其中就要对TH、TL赋初值。如:MOV8CH,#01H;为TH0赋值MOV8AH,#20H;为TL0赋值
TH0TL039串行数据缓冲器SBUF:它是专门用来存放发送或接收的数据,实际上它是两个独立的存放器。尽管在SFR中的RAM地址只是99H,但根据指令“发送〞或“接收〞两种不同的操作,有两个独立的缓存存在,硬件会自动的区分,将数据送如对应的缓冲单元。 MOVSBUF,A;A→SBUF〔引发串口通信〕 MOVA,SBUF;SBUF→A〔读取串口中的数据〕返回发送SBUF接收SBUF内部数据总线TXDRXD累加器A有关SFR中其它存放器的说明将相关的章节中作介绍40三、8位并行输入输出端口CPU输入输出端口外部设备内总线输入/输出端口成为CPU与外部设备进行数据交换的桥梁MCS-51418051单片机的四个并行端口P0、P1、P2和P3都是具有输出锁存功能的双向端口,这些锁存器的位置都在SFR中,其地址分别为:80H、90H、A0H、B0H。出于系统的考虑,在硬件设计上因为对端口功能都有不同的要求,所以它们又具有不同的结构特点.继续MCS-51逻辑图42继续MCS-51逻辑图1.P0口43继续MCS-51逻辑图(1)作为I/O端口,数据总线向引脚输出控制信号:0V1V244继续MCS-51逻辑图(2)作为I/O端口,由引脚向内部数据总线输入读引脚45继续MCS-51逻辑图(2)作为I/O端口,由引脚向内部数据总线输入读锁存器46继续MCS-51逻辑图(3)作为地址/数据复用口47继续MCS-51逻辑图控制〞信号为“0〞,V1管截止CPU自动将0FFH写入P0口锁存器V2管截止48P0口特点小结:【特点】:“通用数据I/O端口〞和“地址、数据复用总线〞。在作为通用数据I/O端口时,具有较强的输出驱动能力,外接一个上拉电阻,保证正确输出高电平。作为“地址、数据复用总线〞使用时,P0口首先输出外部存储器的低八位地址,然后再变为数据总线进行数据的输入或输出〔注意:此时P0口不能再作为通用I/O口〕。49特点:单纯的通用I/O端口。
与P0口的区别在于内部具有上拉电阻,所以输出时不用外接上拉电阻。2P1口返回返回前一次503P2口
特点:“通用数据I/O端口〞和“高八位地址总线〞51注意:使用外数据存储器时,P2口分两种情况:1,使用256B的外部RAM时,此时用8位的存放器R0或R1作间址存放器,这时P2口无用,所以在这种情况下,P2口仍然可以做通用I/O端口。如:movxa,@r0或movxa,@r12,如果访问外部ROM或使用大于256BRAM时,P2口必须作为外存储器的高八位地址总线。如:movxa,@dptr;访问外部数据存储器movca,@a+dptr;访问外部程序存储器这里使用了16位的存放器DPTR上一页返回524P3口
特点:通用I/O端口、多用途端口53在多用途情况下,P3口分别作为串行口、外中断输入、外部计数输入和系统扩展时使用的WR和RD信号的端口。在这种情况下,锁存器Q端为“1〞电平以保证与门是翻开的。通常情况下,P3口不做通用I/O口,以充分利用单片机的第二功能。54P3.0–P3.7P3端口线〔10–17脚〕:①通用I/O端口;②具有第二功能。口线定义说明口线定义说明P3.0RXD串行数据输入口P3.4T0计数器0外部输入信号P3.1TXD串行数据输出口P3.5T1计数器1外部输入信号P3.2INT0外部中断0输入口P3.6/WR外部数据存储器写信号P3.3INT1外部中断1输入口P3.7/RD外部数据存储器读信号P3口第二功能表引脚图返回55四振荡器、时钟电路和CPU的时序1振荡器、与时钟电路28051单片机的根本时序周期继续56内部时钟发生器的输出信号是单片机所需的时钟信号1振荡器与时钟电路使用外部振荡器信号,其外来的信号加在XTAL1的引脚上(见右图).XTAL2XTAL1NC外时钟使用外时钟时的电路连接15728051的根本时序
时序:CPU执行指令时所需控制信号的时间顺序。时序图中时间参数的描述:
①振荡周期
②
时钟周期;③机器周期;
④指令周期。返回58振荡周期T:振荡源的周期,由外接晶体或外输入时钟来决定。其值为石英振荡器频率的倒数。时钟周期:振荡周期的2倍,时序中最小的时间单位。 例如:在单片机外接1MHz的晶体,那么单片机的系统时钟的频率为1M,时钟周期为2×1µs.T59机器周期:完成特定功能所需要的时间。
8051单片机中的机器周期由6个时钟周期构成,分6个状态(S1-S6),每个状态又分为P1和P2两拍.即: S1P1,S1P2,S2P1,S2P2,S3P1,S3P2…S6P1,S6P2
TS2S6S5S4S3机器周期P1S1P260指令周期:即执行一条指令所需要的时间,它是时序图中最大的时间单位。在8051系统中,不同的指令它所包含的机器周期数不同.它们分别是:
1,单机器周期指令;
2,双机器周期指令;
3,四机器周期指令。
61假设:我们使用一个6M的晶体振荡器,那么一个机器周期为:1/6µs×12×1=2µs;两个机器周期为:1/6µs×12×2=4µs;四个机器周期为:/6µs×12×4=8µs。
指令的运算速度与它所包含的机器周期数有关:机器周期数越少,执行的速度就越快。〔8051单片机的指令系统除了乘、除法指令为四个机器周期外,其余都是单周期和双周期指令〕628051单片机外型图〔DIP封装〕8051单片机的逻辑符号图VCCRSTXTAL1
P0口XTAL2/EA/PSENALE
P1口P3口RXDTXD/INT0/INT1P2口T0T1/WR/RDGND87C51EPROM型AT89C51ATMELFLASH型返回上一次五8051单片机的引脚定义〔Page11〕电源及控制P3口P1口P0口P2口63六、单片机工作方式〔page12〕复位方式程序执行方式单步
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年生态建设策划与绿色发展战略协议
- 2025年人工智能技术研发合作协议
- 2025年专利权保护协议范例
- 2025年数据中心维护服务合同协议
- 2025年度会员卡购买与销售协议范本
- 2025年临时用工派遣协议样本
- 2025年劳动安全赔偿协议书倡议
- 2025年市场营销内部资料保密协议
- 2025年官方债权转让协议范例
- 2025年企业长期轿车租赁服务协议合同范本
- 配套课件-前厅客房服务与管理
- 2025年度药店营业员服务规范及合同约束协议3篇
- 工业和信息化部装备工业发展中心2025年上半年应届毕业生招聘易考易错模拟试题(共500题)试卷后附参考答案
- 重庆市2024-2025学年高一上学期期末联考生物试卷(含答案)
- 2024年医师定期考核临床类考试题库及答案(共500题)
- 2025安全生产工作目标及实施计划
- 《高原红细胞增多症血液稀释疗法护理操作规程》
- 应急处置洗消
- 年终抖音运营述职报告
- 【课件】如何保障我国未来的能源安全
- 结肠术后恢复护理
评论
0/150
提交评论