【大学课件】单片机原理与应用总复习

上传人:xiao****1972 文档编号:71245475 上传时间:2019-01-19 格式:PPT 页数:44 大小:1.51MB
返回 下载 相关 举报
【大学课件】单片机原理与应用总复习_第1页
第1页 / 共44页
【大学课件】单片机原理与应用总复习_第2页
第2页 / 共44页
【大学课件】单片机原理与应用总复习_第3页
第3页 / 共44页
【大学课件】单片机原理与应用总复习_第4页
第4页 / 共44页
【大学课件】单片机原理与应用总复习_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《【大学课件】单片机原理与应用总复习》由会员分享,可在线阅读,更多相关《【大学课件】单片机原理与应用总复习(44页珍藏版)》请在金锄头文库上搜索。

1、1,单片机原理与应用 总复习,http:/ 单片机综述 (1.5),+ 外设(键盘、显示、AD、DA),1、单片机的概念(单片微型计算机、微控制器) 将CPU、存储器、定时器/计数器、多种I/O接口等电路集成在一块芯片上所构成的计算机。 2、单片机的内部结构:,3,2.1 单片机的内部结构,由运算器(ALU)、控制器和专用寄存器组构成,程序计数器PC:存放下一条需要执行的指令内存地址,自动加1。,16位、决定了可以寻址的程序存储器的空间64KB。 上电后初始值是0000H,所以从该地址开始执行程序。,累加器A、B 程序状态字PSW,堆栈指针SP,数据指针DPTR,4,存储器结构-ROM,805

2、1的内部ROM 4K B; 8031没有内部ROM。 如果使用8051,/EA引脚如何连接?如果片内ROM用完了怎么办?也就是说当PC值为多少的时候,会转到片外ROM执行? 内部ROM和外部ROM的最大寻址空间多大?决定于哪个寄存器?,单片机的存储器 有ROM、RAM之分;还有片内、片外之分,5,存储器部分片内RAM,8051片内RAM 128字节(地址00-7FH),片外RAM 可扩展64KB(地址0000H-FFFFH)。共同占用部分访问时用MOV和MOVX指令区别。 片内RAM分为:(1)工作寄存器区(00H-1FH)4组R0-R7 (2)位寻址区(20H-2FH):两种访问方法。 (3

3、)便笺区(30H-7FH),6,7,上电后,默认使用的是哪一组工作寄存器?地址是多少?如果要更改工作寄存器的地址,使用什么寄存器、什么指令?,8,7FH 便笺区 30H,2FH 位寻址区 20H,1FH 工作寄存器区 00H,1、位寻址区是指 20H2FH单元,共16个单元。 2、 位寻址区的 16个单元(共计128位)的每1位都有一个8位表示的位地址, 位地址范围为00H1FH。 4、 同样, 位寻址的RAM单元也可以按字节操作作为一般的数据缓冲 区。 两种寻址方法:假如寻找0B位,可以用 SETB 0BH; SETB 21H.3;,9,7FH 真正RAM区 00H,FFH SFR区 80H

4、,1、高128B的RAM单元中有21个单元可用,这21个分散在高128B的地址空间内,分别是A,B,PSW,SP,DPH,DPL,P0,P1,P2,P3,IP,IE,TCON,TMOD,TH0,TL0,TH1,TL1,SCON,SBUF,PCON。 2、11个可以按位寻址。规律:地址可以被8整除。,3 特殊功能寄存器区(SFR):有特殊用途的寄存器的集合。参见P58表2-3、图2-6,10,控制引脚的功能,单片机最小系统的组成,11,3、控制线,RST复位信号 需要让8051复位时,给该引脚高电平,并保持24个时钟周期。,地址锁存允许/编程线 有外部存储器:访问外存时锁存低8位地址 无外部存储

5、器时,ALE输出为晶振6分频的脉冲序列,可用作外部时钟源;,片外ROM选通线。MOVC命令时自动在该脚产生负脉冲,选通外部ROM,-允许访问片外存储器/编程电源线) /EA=1 从内部开始执行程序; /EA=0 只访问外程序存储器;,12,8051访问外部存储器的指令时序: 1、8051对外部ROM的读操作过程: MOVC A,A+DPTR;A(A+DPTR)=x 使用到ALE地址锁存、PSEN选通ROM。 2、8051对外部RAM的写操作过程: MOVX DPTR,A;x-2050H 使用到ALE地址锁存、/WR=0,/RD=1;,13,MOVC A,A+DPTR;A(A+DPTR)=x,M

6、OVX DPTR,A;x-2050H,14,第三章 指令部分,7种寻址方式 寄存器寻址 eg: MOV A,R0 直接寻址 eg: MOV A,20H ; MOV A,SP 立即寻址 eg: MOV A,#3AH 寄存器间址 eg: MOV A,R0 变址寻址 eg: MOVC A,A+DPTR 相对寻址 eg: SJMP $ 位寻址 eg: MOV C,7FH,15,数据传送指令,内部数据传送指令 MOV 注意不能在Rn之间传送 外部RAM 与内部数据传送指令 MOVX MOVX A , DPTR MOVX A , Ri MOVX DPTR , A MOVX Ri , A ROM与内部数据传

7、送指令 MOVC MOVC A , A+DPTR MOVC A , A+PC Eg:(1) R1内容传送到R0 (2)外部RAM 20H单元的内容传送到A (3) 程序存储器ROM 2000H单元的内容送内部RAM 20H; (4) 外部RAM 1000H单元的内容送内部RAM 20H (5) 片外RAM 2000H单元中的数据传送到片外RAM 3000H,16,查表指令的使用,例3.6 已知A中有一个0-9范围的数,查找该数的平方 解:采用DPTR做基址寄存器: MOV A,#data MOV DPTR,#2000H; MOVC A,A+DPTR; ORG 2000H TAB:DB 0,1,

8、4,9,.81,17,堆栈操作指令,先进后出、后进先出 PUSH direct ;SPSP+1,(SP) (direct) POP direct ;(SP) (direct), SPSP-1,18,ADD、ADDC、SUBB 特点:都是以A作为第一操作数。 影响PSW标志位。 只能是8位二进制数据的运算。 INC、DEC MUL AB ;A*B=BA 形成标志 DIV AB ;AB=AB,算术运算指令,逻辑运算指令,ANL、ORL、XRL、 CLR A、CPL A,移位指令,RR、RL、RRC、RLC、SWAP 特点: 只有循环移位。 目的操作数都在A中。 单操作数指令,ANL A,Rn; A

9、NL A,direct; ANL A,Ri; ANL A,#data; ANL direct,A; ANL direct,#data;,19,转移指令,无条件转移指令 LJMP add16 ;长转移指令 AJMP addr11 ;绝对转移指令 SJMP rel ;短转移指令 JMP A+DPTR ;变址寻址转移指令 条件转移指令 累加器A判零转移指令JZ、JNZ 比较条件转移指令: CJNE A,#data,rel; 减1条件转移指令: DJNZ Rn,rel,20,子程序相关的指令,ACLL addr11 LCALL addr16 RET;子程序返回指令,用于子程序末尾。 RETI;中断返回

10、指令,用于中断服务程序末尾。 子程序的开头必须是标号,以供主程序调用。,21,位操作指令,位传送指令: MOV C,bit; MOV bit,C;,位置位、位清零指令 CLR C; CLR bit; SETB C; SETB bit,位运算指令 ANL C,bit;ANL C,/bit; ORL C,bit;ORL C,/bit; CPL C; CPL bit;,位控制转移指令 (1)Cy内容为条件的转移指令 JC rel; JNC rel; (2)位地址内容为条件的转移指令 JB bit,rel; JNB bit,rel; JBC bit,rel;,22,第四章 汇编语言程序设计,汇编语言语

11、句有两种:指令性语句和指示性语句 汇编语言语句格式包括:标号、操作码、操作数、注释 常用伪指令的使用方法: ORG:起始汇编伪指令 END:结束汇编伪指令 DB、DW,23,第六章 MCS-51的中断系统,(1)什么是中断,中断的作用是什么?,24,25,中断相关的几个重要SFR,3)中断允许寄存器IE(A8H),26,4)中断优先级寄存器IP(B8H),5)定时器方式控制寄存器TMOD(89H 不能位寻址),同级中断的优先级顺序 INT0 T0 INT1 T1 串行口。,27,外部中断初始化步骤,1、开中断,2、设立优先级,3、设立触发方式(电平or边沿),例6.1 请写出/INT1为低电平

12、触发 和高中断优先级的中断系统初始化程序 CLR IT1 ;电平触发 IT1 = 0; SETB EX1 EX1 = 1; SETB PX1 PX1 = 1; SETB EA EA = 1;,28,定时器初始化编程格式,初始化编程格式:,TMOD = x ;选择工作方式 THx = 0x# ;装入Tx时间常数 TLx= 0x# ETx = 1 ;开Tx中断 EA = 1 ;开总中断 TRx = 1 ;启动Tx定时器,29,例:若单片机时钟频率为12MHz,请计算定时100us所需的定时器初值,并写出初始化程序,各种方式定时时间比较: 方式0:213 *1us=8192us=8.192ms 方式

13、1:216 *1us=65.536ms 方式2、方式3:28 *1us=0.256ms 方式0时:(213 TC)*1us=100us TC=1F9CH;TH0=FCH、TL0=1CH 方式1:(216 TC)*1us=100us TC=FF9CH 方式2: (28-TC)*1us=100us TC=009CH,定时器/计数器例程,1 根据时钟频率计算机器周期 2将定时时间与各种方式最大时间比较 3、选择合适的方式,求出初值 4、写出初始化程序,30,中断程序格式,Sbit LED = P10; Void main() IT0 = 0; EX0 = 1; EA = 1; while(1); V

14、oid Int0_Int() interrupt 0 LED = !LED; ,31,定时器例程,例7.11 设8051时钟频率12MHz,编写程序令P1.0引脚输出2S的方波程序,sbit Pulse = P10; unsigned char Cnt_50ms; Void T1_Init(void) TMOD = 0x10; TH1 = 0x3c; TL1 = 0xb0; ET1 = 1; EA = 1; TR1 = 1; ,Void T1_Int() interrupt 3 TH1 = 0x3c; TL1 = 0xb0; if(Cnt_50ms = 20) Cnt_50ms = 0; Pu

15、lse = Pulse; ,Void main() T1_Init(); while(1); ,32,计数器例程,分析:T1工作在方式2,200个脉冲产生一次溢出,所以,256-200=56 ;C=38H。那么TH0=TL0=38H。,利用T1的方式2对外部信号计数,要求每计满200个数,将P1.0引脚取反。,Sbit Pin = P10; Void main() TMOD = 0x60; TH1 = 0x38; TL1 = 0x38; ET1 = 1; EA = 1; TR1 = 1; Void T1_Int() interrupt 3 Pin = Pin; ,33,第八章 MCS-51对AD和DA的接口,ADC0809、DAC0832的作用是什么?什么是分辨率、什么是转换精度?这两款芯片的分辨率、转换精度分别是多少?,DAC0832和MCS51单片机的连接方法有:直通方式、单缓冲方式、和双缓冲方式。 (两个锁存器处于不同的导通关闭状态),34,其内部结构和引脚功能如下图所示:,数模转换器-DAC0832,DAC0832结构引脚图,缓冲器,35,如图所示连

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号