Download presentation
Presentation is loading. Please wait.
1
接口技术 (单片机原理与应用)
2
第一章 基础知识 1.1 数字电子计算机 1.2进位计数制 1.3 数制与码制 1.4数字电路 1.5程序和软件
3
1.1 数字电子计算机原理 计算机组成的4个基本要素 -存储器 Memory -运算器 Arithmetic -控制器 Controller
-输入输出设备 Input/Output
4
计算机基本结构 输入输出 I/O 存储器 M 运算器 ALU BUS 控制器 CU 图1.
5
1.2进位计数制 Xb=∑ bi 2i ⑴ ⑴ N位二进制数 1010…1100
Xb=bN-1 bN-2 … b1 b0 ; bi={0..1} ; 权 P=2 Xb=bN-12N-1 + bN-22N-2 + … + b b020 ; N-1 Xb=∑ bi 2i ⑴ i=0
6
Xd=∑ di10i ⑵ ⑵N位十进制数 Xd =…1234567890; P=10
Xd=dN-1 dN-2 … d1 d0 ; di={0..9} Xd=dN-110N-1 + dN-210N-2 + … + d d0100 ; n-1 Xd=∑ di10i ⑵ i=0
7
Xh=hN-1 hN-2 … h1 h0 ; hi=0…9ABCDEF
P=16 Xh=hN-116N-1 + dN-216N-2 + … + d d0160 ; n-1 Xd=∑ hi16i ⑶ i=0 任意进制 N-1 Xr=∑ ri Pi ; ri =0…P ⑷ i=0
8
不同进位制数的转换 二进制→十进制 公式计算 十进制→二进制 除2取余 十六进制→二进制 4位分割 八进制→二进制 3位分割
二进制→十进制 公式计算 十进制→二进制 除2取余 十六进制→二进制 位分割 八进制→二进制 位分割 纯小数转换 乘2取整
9
1.3数制与码制(编码) 自然二进制码 8421码 2421码 5421码 无权码(余3码、 格雷码) BCD码 (2-10进制编码)
ASCII码
10
1.3数制与码制 原码 反码 补码 机器数 浮点数、定点数
11
1.4数字电路 *布尔代数 (逻辑代数) 与、或、非基本运算,摩根定律 *门电路-------------------组合逻辑电路
*门电路+触发器 时序逻辑电路 *数字部件 存储器、寄存器、锁存器、译码器、计数器 缓冲器… Memory Register latch encoder counter buffer
12
基本R-S触发器 Q Q R S
13
1.5程序语言和软件 计算机语言 1.高级语言程序—面向问题 (人) 算法,数据库 , 设计 VHDL
Fortran, Visual C,C, C++, Java (面向目标) 2.汇编语言程序—面向机器 (机) Assemble language 汇编语言
14
1.5程序语言和软件 系统程序、软件 应用程序、软件
15
计算机基本工作原理 1. 周期性 2. 取指令和执行指令 执行指令 取指令
16
第二章单片机原理 2.1概述 单片机与嵌入式系统 嵌入式系统(微控制器) Embedded Micro-controller
面向检测与控制对象,嵌入到应用系统中的计算机系统 单片机 Single Chip Micro-computer是典型的嵌入式系统
17
嵌入式系统的主要特点 嵌入式系统的主要特点: 1.实时性强、可靠性高、体积小、性价比好 2.高密度、 高速度、 低电压 、低功耗
18
嵌入式系统的常用器件 单片机 (MCU) FPGA Field Programmable Gate Array
可现场编程门阵列 XILINX PLD Programmable Logic Device 可编程逻辑器件 CPLD,HCPLD DSP Digital Signal Processing/Processor 数字信号处理
19
MCU的两种设计方式 1.哈佛结构(Harvard) 程序存储器(ROM) CPU 数据存储器(RAM)
2.普林斯顿结构(Princeton) CPU 存储器ROM 存储器RAM
20
2.2 MCS-51单片机原理 2.2.1 51单片机结构(哈佛结构) 1. 封装与引脚(Package & Pin)
单片机结构(哈佛结构) 1. 封装与引脚(Package & Pin) DIP Dual In-Line Pin 双列直插式 TQFP Thin Quad Flat Pack 薄型四方扁平封装 PLCC Plastic Leaded Chip Carrier
21
51单片机DIP封装和引脚分配 P1.0 | P1.7 RST P3.0 P3.7 XTAL2 XTAL1 Vss 40 39 8 32
31 30 21 Vcc P0.0 | P0.7 /EA ALE /PSEN P2.7 P2.0
22
MCS-51系列基本型号 8031 无内部 ROM 8051 内部4KB (PROM)掩膜技术 8751 内部4KB (EPROM)可光擦除
23
51内部结构 ROM 程序存储器 CPU/MCU ALU RAM 数据存储器 控制器 P0 P1 P2 P3 外部 内部总线
24
引脚功能 1.端口线 4个8位I/O端口, 驱动能力 P0、P1、P2、P3 2.控制线 ALE、 /EA、/PSEN、RST
XTAL1、XTAL2 3.电源线 Vcc 、Vss
25
P0端口内部结构 Vcc 控制 地址/数据 T1 读锁存器 P0.X 内部总线 D Q CP /Q T2 写入 MUX 读引脚
26
时钟频率的产生 XTAL1 XTAL2 1.内部振荡电路 C1 晶体 C2 2.外部振荡电路 XTAL1 XTAL2 外部时钟源
27
复位电路 1.自动上电复位 2.人工按钮复位 +5V Vcc RST Vss C R
28
2.1.2 8051单片机CPU结构 1.控制器 MCU(IR、 OSC、IER等) 2.运算器 ALU (加法器、布尔处理器)
3.专用寄存器组SFR 8位:R0~R7,Acc,B,PSW,SP, IP,IE,SCON,P0~P3,TMOD… 16位:PC,DPTR
29
程序状态字PSW寄存器 d7 d6 d5 d4 d3 d2 d1 d0 Cy AC F0 RS1 RS0 OV .. P
Cy: 8位运算后, D7的进位 AC: 辅助进位, 8位运算后, D3的进位 F0: 用户标志位 RS1,RS0: 工作寄存器选择 00,01,10,11 OV:运算溢出标志, OV= C7⊕C6 P: 奇偶校验标志, P = a7⊕a6⊕… ⊕a0
30
堆栈的概念 堆栈是访问地址有序的存储器 有两种形式:地址增加型和地址减少型 堆栈指针 SP,总是指向栈顶 增加型 数据入栈 SP=SP+1
7FH 。 01H 00H 减少型 数据入栈 SP=SP-1 SP 栈底
31
2.1.3存储器地址分配 4个物理地址空间: 1.内部程序ROM(0000H-0FFFH/16位地址)
2.内部数据RAM(00H-0FFH/8位地址) 3.外部程序ROM(16位地址), 4.外部数据RAM(16位地址)
32
存储器地址分配 3个逻辑地址空间: 1. 程序存储器ROM(0000H-0FFFFH) 2.内部数据RAM(00H-0FFH)
3.外部数据RAM(0000H-0FFFFH)
33
程序存储器地址分配 0FFFFH 0FFFFH 外部 外部 1000H 0FFFH 内部 0000H 0000H /EA=1 /EA=0
34
数据存储器地址分配 内部RAM 外部RAM 0FFH 0FFFFH SFR 80H 7FH 30H 位寻址区 20H~2FH 1FH
工作寄存器区 R0~R7,4组 0000H 00H
35
51CPU工作时序 1.时钟周期 T T=1/fOSC 2.机器周期 M M=12T 3.状态周期 S Si=2T ,i=1~6
4.指令周期 I I= (1、2或4) M
36
读外部ROM指令时序图 S1 S2 S3 S4 S5 S6 S1 12 ALE PSEN P2 A15 ------ A8
P1 P2 ALE PSEN P2 A A8 A A8 P0 A7-A0 指令 A7-A0 数据 外接锁存器 A A0 A A0
37
51单片机最小系统 +5V VCC P0 外 设 C P1 RST R P2 P3 C1 XTAL2 C2 XTAL1 VSS
38
51单片机扩展系统 DBus 最 小 系 统 地 址 锁 存 器 P0 外 部 存 储 器 或 I/O ABus P2 Vcc P1 EA
D7~D0 DBus 最 小 系 统 地 址 锁 存 器 P0 外 部 存 储 器 或 I/O A7~A0 ABus G ALE P2 Vcc A15~A8 P1 EA PSEN CBus WR RD
39
第三章 51指令系统 3.1指令的表示形式 指令的周期和长度 指令的构成 操作码 + [操作数] 操作码的助记符表示 保留标识符和用户标识符
40
3.2 七种寻址方式 1.立即寻址 MOV R0 , #0F0H 2.直接寻址 MOV 40H , 30H
3.2 七种寻址方式 1.立即寻址 MOV R0 , #0F0H 2.直接寻址 MOV 40H , 30H 3.寄存器寻址 MOV A , R7 4.寄存器间接寻址 MOV A , @R0 5.变址寻址 MOVC A , @A+PC 6.相对寻址 SJMP rel 7.位寻址 MOV C , 20H
41
3.3 五类操作功能 数据传送类 MOV、MOVX、MOVC 算术运算类 ADD、SUB、MUL、DIV
逻辑运算类 ANL、ORL 、CPL、RL 控制转移类 SJMP、LJMP、JC、LCALL 位操作类 SETB bit、ANL C,bit
42
例题 11,12,13,17,20,22,25 JMP @A+DPTR ; 散转指令 子程序调用和返回指令 位逻辑 条件转移
43
第四章 汇编语言程序设计 4.1 汇编语言格式 [标号:] 指令 [; 注释] 行编辑, 一条指令占一行 执行指令和伪指令
第四章 汇编语言程序设计 4.1 汇编语言格式 [标号:] 指令 [; 注释] 行编辑, 一条指令占一行 执行指令和伪指令 伪指令 ORG, END, DB, DW,DS,EQU, BIT 源程序的汇编 人工汇编和机器汇编
44
4.2汇编语言程序的设计方法 顺序、分支、循环、调用 流程图
45
第五章 单片机基本系统与扩展 1.三总线方法扩展 DB,AB,CB 2.地址译码方式 .全地址译码方式 .部分地址译码方式 .线选方式
46
5.1 存储器的扩展 存储器容量 = 2N,N为地址线数 常用存储器 27系列,28系列
47
扩展电路的基本连接方法 存储器或I/O口 CPU 地址锁存器 振 荡 8031 和 复 373 位 电 路 D0~D7 8 P0 A0~A7
ALE G A8~A15 P2 m /CE /EA 译码电路 /PSEN /OE (ROM) /RD /RE (RAM) /WE /WR
48
5.2 并行I/O口的扩展 与外存储器地址统一编址 简单I/O口 用中小规模集成电路构成 可编程I/O口 大规模IC 智能I/O口 含CPU
49
简单I/O口的扩展电路 CPU 振 荡 和 复 位 电 路 输出设备 8031 373 口地址=7FFFH; 输入设备 +
D0~D7 8 373 273 P0 口地址=7FFFH; CLK ALE G /EA 输入设备 D0~D7 /RD + 244 P2.7 口地址=7FFFH; + /WR /G
50
第六章 8051中断系统 中断源 外部中断和内部中断 中断入口地址 中断响应和屏蔽 中断程序的调用和返回 中断源的扩展
51
6.1中断系统的组成 1. 8051有5个基本的中断源 两个外部中断: INT0, INT1 三个内部中断: T0,T1, SIO
2. 中断入口地址 INT H; T BH; INT H; T BH; SIO H;
52
6.2有关的中断寄存器 IE 中断允许寄存器 EA __ __ EX0 ET0 EX1 ET1 ES 2. IP 中断优先权寄存器
__ __ __ PS PT1 PX1 PT0 PX0 TCON 定时器控制寄存器 TF1 TR1 TF0 TR0 IE1 IT1 IF0 IT1
53
6.3 8051内部定时器 由两个独立的16位计数器组成 采用增量计数方式 可以定时也可以计数 C / T 4种工作方式
有关寄存器 TMOD, TCON, TH0,TL0 TH1,TL1
54
定时器的基本结构 fosc 1/12 C/ T TLx THx TFx Tx 1 中断 TRx EA GATEx + ETx INTx
C/ T TLx THx TFx Tx 1 中断 TRx EA GATEx + ETx INTx TRx 软件启动, Tx 外部计数输入 GATEx 门控, INTx 硬件启动
55
定时器的4种工作方式 1. 定时时间的计算公式 Ta 定时时间 a 时间常数(初值) 12 * ( 2 M – a ) Ta =
fosc M = 8/13/16 (方式) 2. TMOD 方式寄存器 GATE1 C/T M1 M0 GATE0 C/T M1 M0
56
1.方式0 13位计数器 M = 13 2.方式1 16位计数器 M= 16 3.方式2 8位计数器 M = 8 自动重装初值
4.方式3 两个独立的8位计数器 TL ,TH TL TH 方式0 溢出 Tp t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 方式1 溢出 Tp t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
57
方式2,方式3 方式2 8位自动重装初值 Tp TLx TFx THx 方式3 仅T0 Tp TL0 TF0 TH0 TF1
58
定时器编程 查询方式 中断方式 例题: 使用8051定时器T0, 定时1ms, 在P1.0位输出周期为2ms的方波信号, 已知系统时钟频率fosc= 12MHz.
59
查询方式编程 ORG 0H; MOV TMOD, #01H; 使用T0,方式1,定时
MOV TL0, #XL;装入时间常数低位 XL=18H; MOV TH0, #XH;装入时间常数高位 XH=FCH; SETB TR0;启动T0开始计数 WAIT:JNB TF0, WAIT; CLR TF0;清溢出标志 MOV TL0, #XL; MOV TH0, #XH; 重装时间常数 CPL P1.0; P1口0位取反输出 SJMP WAIT; END;
60
6.4 8155可编程并行接口芯片 8155内部有3个逻辑部件: 1. 3个I/O接口, PA, PB, PC和一个控制口
2. RAM 256字节 3. 14位的减量计数器, 带输出端, 4种工作 方式
61
8155与8031的典型连接电路 8031 8155 PA PB PC(6) TIMER IN TIMER OUT P0 AD0~AD7
ALE ALE PB /WR /WR PC(6) /RD /RD RST RST TIMER IN IO/M P2.0 P2.7 /CE TIMER OUT
62
8155端口地址分配 与/CE端和IO/M端的连接方式有关, 前图连接为线选方式,各端口地址为:
控制口 0xxxxxx1-xxxxx FF8H; A口 xxxxxx1-xxxxx FF9H; B口 xxxxxx1-xxxxx FFAH; C口 xxxxxx1-xxxxx FFBH; TL xxxxxx1-xxxxx FFCH; TH xxxxxx1-xxxxx FFDH; 存储器 0xxxxxx0-(00~FF) 7E00H~7EFFH;
63
8155控制字 TM2 TM1 IEB IEA PC2 PC1 PB PA PC2 PC1
ALT1;AB口均为基本I/O,C口为输入 ALT2;AB口均为基本I/O,C口为输出 ALT3;A为选通,B基本,PC0~2为A口服 务,提供联络(握手)线 ALT4;AB均为选通, PC0~2 为A口服务 PC0~2为B口服务
64
8155AB口选通联络线方式 PC0 A INTR A口中断请求线 PC1 A BF A口数据缓冲器满 PC2 A STB A口选通线
PC B INTR B口中断请求线 PC B BF B口数据缓冲器满 PC B STB B口选通线
65
8155选通连接原理和时序 8155 8031 PA 输 出 入 设 备 P0 AD0~AD7 PC1(BF) /WR /WR /RD
PC2(STB) /INT0 PC0(AINTR)
66
8155选通输入时序 PDB 口数据输入 BF /STB INTR /RD
67
8155选通输出时序 DB PDB 口数据输出 /WR BF /STB INTR 申请中断
68
8155定时器工作方式 T 定时时间 方式0 单方波 方式1 连续方波 方式2 单脉冲 方式3 连续脉冲 Tw = Tin
69
第七章 单片机串行通信 串行通信基本知识 8051 UART 结构 工作方式 串行通信编程
70
串行通信基本知识 异步传送和同步传送 波特率 bps 异步传送帧格式
UART Universal Asynchronous Receiver and Transmit
71
8051 UART 内部结构 SBUF S.R Acc SCON T1 SBUF S.R
72
SCON, SBUF寄存器 SCON 串口控制器 SM0 SM1 SM2 REN TB8 RB8 TI RI SBUF 数据缓冲器
73
工作方式与波特率计算 工作方式: 波特率bps 方式0: 扩展并口 fb0 = fosc /12 方式1: 8位数据 ( T1为方式2)
fb1= 2SMOD fosc /12/32/(28 –TH1 ) 方式2: 9位数据 fb2= 2SMODfosc/64 方式3: 9位数据 fb3= fb1
74
8051串行通信编程举例 发送程序 试编写51单片机UART发送子程序, 查询方式. 发送数据在内存30H-5FH中, 已知系统时钟fosc=11.059MHz, 采用奇校验发送, UART工作模式为3(9位), 波特率为9600bps,SMOD=0.
75
TPRG: MOV SCON, #11000000b; UART为方式3
MOV TMOD, # b; T1为方式2 MOV TL1, #XL; 波特率为9600bps MOV TH1,#XH; (XL=XH) SETB TR1; 启动T1工作; MOV R0, #30H; 发送数据首地址 NEXT: MOV A MOV C, P; 奇校验 CPL C; MOV TB8, C; 装入校验位; MOV SBUF, A; 发送; JNB TI , $; 等待字节发送结束; CLR TI; 清除发送中断标志; INT R0;下一个数据; CJNE R0, # 60H, NEXT; 是否全部发完 RET; 返回主程;
76
按键与LED显示器 一、按键工作原理 解决抖动问题 二、键盘的组成 1. 独立式键盘和行列式键盘 2. 编码键盘和非编码键盘
77
KEY & Keyboard Vcc VK R VK Vcc K t 10 ms
78
独立式键盘 Vcc 8051 R R R P1.0 … … P1.7 K0 K1 K7
79
中断方式行列式键盘 Vcc +5V 8051 /INT0 P1.0 输出 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 输入 P1.7
80
LED发光二极管原理 电流型器件 工作电流一般从几个mA到 几十mA Vcc a a 8段数码管 b b a … … b g h h h
共阴极 共阳极
81
静态显示器接口 段码 DB 8位I/O口 8位I/O口 8位I/O口 8位I/O口 /CS0 … /CS3
82
动态显示器接口 DB 段码 8位I/O口 8位I/O口 位码 DB
Similar presentations