第八章 单片机接口技术
单片机原理及其接口技术

单片机原理及其接口技术
单片机是一种能够实现控制、数据采集、运算处理等功能的微处理器
技术,是拥有最广泛应用范围的控制芯片之一、单片机中主要包括由编程
器芯片(CPU)、内存、外围电路元器件以及相关的接口技术组成,正是
由于单片机的优势,其在智能家居、智能物联网、汽车电子等领域得到了
广泛的应用。
单片机接口技术是一种实现硬件和软件之间通信的技术,它确保系统
的稳定性和可靠性。
接口技术主要有I/O接口、传输接口、外设接口、模
拟量接口、通用接口、串行接口和无线接口等。
I/O接口是单片机的核心技术,它是用来实现硬件和软件间的任务交
互的接口,通过I/O接口,可以实现软件和外围设备之间的信息传输,它
由多种I/O接口技术,如串口口、并口、中断口和DMA(Direct Memory Access)组成,用于实现与外部设备的连接。
外设接口是一种实现单片机与外设之间的接口技术,它要求使用特定
的接口类型来连接数据。
外设一般包括存储设备、显示器、键盘、投影仪、打印机等,外设接口可以用来控制外设,传输数据,收集外边设备的信息。
外设接口主要有USB接口、SCSI接口、GPIO接口、I2C接口、SPI接口等。
微机原理与接口技术课件全 (9)

(2)键的识别 通常有两种方法可识别被按之键:一种是“行扫描”法; 一种是“反转”法。 1)行扫描法 依次对每一行进行扫描,选使被扫描的行为低电平,其它 所有的行均为高电平,接着检测各列线的状态(称为“列”)。 若各列码均为高电平(即列码为全1),则被按之键不在这行。 继续扫描下一行;若列线不全为高电平(即列码为非全1),则 被按之在此行。根据行扫描码及列码就可知被按之键的坐标值 (即位置码)。再根据位置码通过查表可得到它的键值。查表 法的扫描子程序流程图如图7-6所示。
四、输入/输出寻址方式
当主机执行I/O操作时,应先对I/O接口中的端口进行寻址, 其寻址方式有如下两种: 此时,I/O端口单独编址。CPU指令系统中有专门用于I/O操 作的指令——I/O指令,CPU访问I/O端口时发出I/O读命令或写 命令,访问内存时发存储器读或写命令。因此,端口地址与存 储单元地址可重叠。此时,I/O端口不占用存储空间且与访问 I/O设备指令有别。 这种寻址方式中,将I/O端口与存储单元统一编址,即CPU 把I/O端口作为存储单元对待,I/O端口占用一定的存储空间。 采用这种寻址方式的CPU指令系统中没有专门的I/O指令,
微型机中常外设有LED显示器、CRT显示器、键盘、打印机、软 磁盘存储器等。单片机应用系统中常设置LED显示器、拔盘、键 盘、点阵式打印机等外设。
§8-2 键盘及其接口
返回
在微型机系统中,键盘是最常用的输入设备,键盘通常由 数字键和功能键组成,其规模取决于系统的要求。
键盘可分为编码键盘和非编码键盘两种,前者有检测键闭 合,去抖动及产生相应键编码的硬件电路,而后者则没有这些 硬件,上述功能在有少量的硬件支持下由软件来完成。由此可 见编码键盘产生键编码的速度快且基本上不占用CPU时间,但硬 件开销大,电路复杂,成本高;非编码键盘则硬件开销省,电 路简单,成本低,但占用CPU时间较长。
单片机原理及接口技术(C51编程)(第2版)-习题答案 - 第8章习题解答

第8章思考题及习题8参考答案一、填空1、AT89S51的串行异步通信口为 (单工/半双工/全双工)。
答:全双工。
2。
串行通信波特率的单位是 .答:bit/s3。
AT89S51的串行通信口若传送速率为每秒120帧,每帧10位,则波特率为答:12004.串行口的方式0的波特率为。
答:fosc/125.AT89S51单片机的通讯接口有和两种型式。
在串行通讯中,发送时要把数据转换成数据。
接收时又需把数据转换成数据。
答:并行,串行,并行,串行,串行,并行6.当用串行口进行串行通信时,为减小波特率误差,使用的时钟频率为 MHz。
答:11.05927.AT89S51单片机串行口的4种工作方式中,和的波特率是可调的,与定时器/计数器T1的溢出率有关,另外两种方式的波特率是固定的。
答:方式1,方式38.帧格式为1个起始位,8个数据位和1个停止位的异步串行通信方式是方式。
答:方式1。
9.在串行通信中,收发双方对波特率的设定应该是的。
答:相同的。
10.串行口工作方式1的波特率是。
答: 方式1波特率=(2SMOD/32)×定时器T1的溢出率二、单选1.AT89S51的串行口扩展并行I/O口时,串行接口工作方式选择。
A. 方式0B.方式1C. 方式2 D。
方式3答:A2. 控制串行口工作方式的寄存器是。
A.TCON B。
PCON C. TMOD D.SCON答:D三、判断对错1.串行口通信的第9数据位的功能可由用户定义.对2.发送数据的第9数据位的内容是在SCON寄存器的TB8位中预先准备好的.对3.串行通信方式2或方式3发送时,指令把TB8位的状态送入发送SBUF中。
错4.串行通信接收到的第9位数据送SCON寄存器的RB8中保存。
对5.串行口方式1的波特率是可变的,通过定时器/计数器T1的溢出率设定.对6. 串行口工作方式1的波特率是固定的,为fosc/32.错7. AT89S51单片机进行串行通信时,一定要占用一个定时器作为波特率发生器。
第8章单片机应用接口技术

P 1 .0 P 1 .1 P 1 .2
P 1 .3
P 1 .4 P 1 .5 P 1 .6
8051
Y0
A
Y1
B
Y2
C
Y3
Y4
Y5
Y6
Y7
74LS138
LE
DCB A
CD4511
GF E DCB A
LE
DCB A
CD4511
GF E DCB A
LE
DCB A
CD4511
GF E DCBA
LE
DCB A
P2.6
WR
P0.0~P0.7
Q0 CLK Q1
Q2
Q3
Q4
D0~D7 Q5 Q6
Q7
74LS273-1
P2.7
Q0
CLK
Q1 Q2
Q3
D0~D7 Q4
Q5
Q6
Q7
74LS273-2
dp g f e d c b a a
fgb
e
c
d dp
COM
dp g f e d c b a a
fgb
e
c
d dp
COM
• 2.LED显示接口
• 在单片机系统中,LED显示一般采用静态显 示和动态扫描两种驱动方式。静态驱动方式的工 作原理是每一个LED显示器用一个I/O端口驱动、 亮度大、耗电也大、占用的I/O端口多,但显示 位多时一般很小采用。
• 动态扫面方式的工作原理是将多个显示器的 段码同名端连在一起,位码分别控制,利用视角 暂留效应,分别进行显示。只要保证显示的频率, 看起来的效果和一直显示是一样的。电路上一般 用一个I/O端口驱动段码,用另一个I/O口实现位 控。因此动态显示占用的I/O口少,耗电也少。
微机原理与单片机接口技术(第2版)李精华 第8章 微处理器控制系统的接口扩展

8.1.2 编址技术
所谓编址,就是通过51单片机地址总线,使片外扩展的存 储器和I/O口中的每个存储单元或元器件,在51单片机的寻址 范围内均有独立的地址,以便51单片机使用该地址能唯一地选 中该单元。51单片机对外部扩展的存储器和I/O设备进行编址 的方法有两种:线选法和译码法。 1、线选法
所谓线选法,就是直接选定单片机的某根空闲地址线作为 存储芯片的片选信号。 2、译码法
由P0口作为地址线低8位,P2口作为地址线高8位,构 成16位地址,寻址范围为64KB。由于P0口分时复用为 地址总线和数据总线,除提供低8位地址之外,又要 作为数据口,地址和数据分时控制输出。为避免地址 和数据的冲突,低8位地址必须用锁存器锁存。也就 是在P0口外加一个锁存器,当ALE为下降沿时,将低8 位地址锁存。
位(LSB)所对应的输入模拟电压的变化量。分辨率定义 为转换器的满刻度电压(基准电压)VFSR与2n的比值,即
分辨率= VFSR 式中,n为A/D转2换n器输出的二进制位数,n越大,分
辨率越高。分辨率取决于A/D转换器的位数,所以习惯上 用输出的二进制位数或BCD码位数表示。
8.2 A/D转换器与D/A转换器简介
2.A/D转换器的主要技术指标 • (2)量化误差:模拟量是连续的,而数字量是断续
的,当A/D转换器的位数固定后,数字量不能把模拟 量所有的值都精确地表示出来,这种由A/D转换器有 限分辨率所造成的真实值与转换值之间的误差称为量 化误差。一般量化误差为数字量的最低有效位所表示 的模拟量,理想的量化误差容限是±1/2LSB。
三、教学难点
I2C总线接口的程序设计。
四、教学方式
8.1 单片机的外部并行总线
8.1.1 并行总线结构 51单片机具有外部并行总线,分为地址总线(AB)
单片机的接口技术ppt课件

代码位 D7
D6
D5
D4
D3
D2
D1
D0
显示段 dp
g
f
e
d
c
b
a
按照上述格式,显示各种字符的8段LED数码管的段码如表102所示。
2019/8/29
5
显示各种字符的8段LED数码管的段码如表9-2所示
表9-2 8段LED段码
2019/8/29
ED数码管结构
2019/8/29
图9-1 8段LED数码管结构及外形4
8段LED数码管的字型码
为了使数码管显示不同的符号或数字,要把某些段发光二极管点亮,就 要为LED数码管提供段码(字型码)。
LED数码管共计8段。正好是一个字节。习惯上是以“a”段对应段码字 节的最低位。各段与字节中各位对应关系如表9-1所示。
2. 按键的识别
• 键的闭合与否,行线输出电压上就是呈现高电平或低电平。高电平,表示 键断开,低电平则表示键闭合,通过对行线电平的高低状态的检测,可确 认按键按下以及按键释放与否。
• 为了确保对一次按键动作只确认一次按键有效,必须消除抖动期t1和t3的 影响。通常t1和t3小于10ms。按键闭合时的电压抖动波形见图9-8。
8/29/2019
15
1. 键盘输入的特点
• 常见键盘:触摸式键盘、薄膜键盘和按键式键盘,最常用的是按键式键盘。 按键实质上就是一个开关。如图9-7(a)所示,按键开关的两端分别连接 在行线和列线上,通过键盘开关机械触点的断开、闭合,其行线电压输出 波形如图9-7(b)所示。
2019/8/29
图9-7 键盘开关及其行线波形 16
;有键按下,跳去抖动
单片机原理及接口技术

单片机原理及接口技术
单片机原理及接口技术是当今电子设备常用的一种技术,它的原理及接口技术
的运用非常的重要。
单片机原理是由外部设备、单片机芯片、内部外设和软件构成的。
它的特点主
要有多种编程模式、多指令集,不仅可以直接执行指令,还能擅长控制、解决问题、动态反应等。
单片机接口技术主要涉及到I/O接口、中断模式、外设控制、中断服务程序等,它利用串行通信、并行通信、外部设备控制等技术来连接计算机以及其他外部设备,实现数据传输、程序模式以及各种设备的控制等功能。
另外,单片机接口技术还能进行数据编码/解码、数据包处理、数据逻辑处理、数据可靠性保障和去除干扰等工作。
总之,单片机原理及接口技术的运用非常重要,它的技术知识覆盖面广,运用
范围也比较广泛,熟悉它是很有必要的。
单片机原理及接口技术(C51编程)(第2版)-习题答案 - 第8章习题解答

第8章思考题及习题8参考答案一、填空1、AT89S51的串行异步通信口为(单工/半双工/全双工)。
答:全双工。
2. 串行通信波特率的单位是。
答:bit/s3. AT89S51的串行通信口若传送速率为每秒120帧,每帧10位,则波特率为答:12004.串行口的方式0的波特率为。
答:fosc/125.AT89S51单片机的通讯接口有和两种型式。
在串行通讯中,发送时要把数据转换成数据。
接收时又需把数据转换成数据。
答:并行,串行,并行,串行,串行,并行6.当用串行口进行串行通信时,为减小波特率误差,使用的时钟频率为 MHz。
答:11.05927.AT89S51单片机串行口的4种工作方式中,和的波特率是可调的,与定时器/计数器T1的溢出率有关,另外两种方式的波特率是固定的。
答:方式1,方式38.帧格式为1个起始位,8个数据位和1个停止位的异步串行通信方式是方式。
答:方式1。
9.在串行通信中,收发双方对波特率的设定应该是的。
答:相同的。
10.串行口工作方式1的波特率是。
答:方式1波特率=(2SMOD/32)×定时器T1的溢出率二、单选1.AT89S51的串行口扩展并行I/O口时,串行接口工作方式选择。
A. 方式0B.方式1C. 方式2D.方式3答:A2. 控制串行口工作方式的寄存器是。
A.TCON B.PCON C. TMOD D.SCON答:D三、判断对错1.串行口通信的第9数据位的功能可由用户定义。
对2.发送数据的第9数据位的内容是在SCON寄存器的TB8位中预先准备好的。
对3.串行通信方式2或方式3发送时,指令把TB8位的状态送入发送SBUF中。
错4.串行通信接收到的第9位数据送SCON寄存器的RB8中保存。
对5.串行口方式1的波特率是可变的,通过定时器/计数器T1的溢出率设定。
对6. 串行口工作方式1的波特率是固定的,为fosc/32。
错7. AT89S51单片机进行串行通信时,一定要占用一个定时器作为波特率发生器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
等待,定时计数器计满溢出,自动重装初值,然后向CPU 申请中断,(与上例不同,不用查询TF1)转到001B, CPU接受中断TF1自动清零。 单片机原理及应用——自动化系
• 中断扫描方式
为了提高CPU工作 效率,可采用中断扫 描工作方式,其工作 过程如下:当无键按 下时, CPU处理自己 工作,当有键按下时, 产生中断请求,CPU 转去执行键盘扫描子 程序,并识别键号。
软件方案—延时10ms~20ms后再 次判断。
单片机原理及应用——自动化系
独立式键盘接口
特点:
+5v
一线一键,按键识 别(编程)简单;但是 占用较多口线,适合8键 以下使用。
P1.0
P1.1
P1.7
单片机原理及应用——自动化系
例:用P1口检测三个按键的状态完成相应的功能。
解:资源分配:用P1口的低三位检测三个按键 的输入,为1表示按键没有按下,为0表示相应 按键被按下。
显示Βιβλιοθήκη 单片机原理及应用——自动化系
静态显示方式
• 连接:所有LED的位选(公共)端连接到+VCC或GND,每个LED的8 根段选线分别连接一个8位并行I/O口,从该I/O口送出相应的字 型码显示字型。 I/O(2) I/O(1) I/O(3) I/O(4)
GND/+5V
GND/+5V
GND/+5V
GND/+5V GND/+5V
单片机原理及应用——自动化系
8.2显示器接口技术
• LED的结构及显示原理
• 静态显示方式 • 动态显示方式 • 动态显示的实现
单片机原理及应用——自动化系
问题:LED显示器如何显示出指定数字/字符?
g f com a 8
a f b
b 6
10 9
7
g
共 阴 极
共 阳 极
e d
c
.
若用共阴极接法,显示数字“2”应送什么二进制8位数? D7 D6 D5 D4 D3 D2 D1 D0 Dp g f e d c b a 0 1 0 1 1 0 1 1 单片机原理及应用——自动化系
单片机原理及应用——自动化系
例:方法一
TM :MOV R1,#100 TM0 :MOV TMOD,#20H MOV TH1,#9CH MOV TH0,#9CH SETB TR1 LK :JBC TF1,TM1 SJMP LK TM1 :DJNZ R1,TM0 SKEY :LCALL KEY JZ TM LCALL T10MS LCALL KEY JZ TM LCALL SERCH …
流程图: 编程:按三个按键中的任一键都对应一个特定功 能。
单片机原理及应用——自动化系
键分析 读P1口 有键按下吗?
延时10ms
有键按下吗? Y P1.0=0? N P1.1=0? N P1.2=0? N 读P1口 N 键已释放吗? Y 延时10ms 分析结束 单片机原理及应用——自动化系 N Y Y Y
7
8 9 A b
07H
7FH 6FH 77FH 7CH
F8H
80H 90H 88H 83H
y
H L “灭” …
6EH
76H 38H 00H …
91H
89H C7H FFH …
单片机原理及应用——自动化系
例:模拟产品计数显示电路
P1.0 P1.1 P1.2 P1.3
510Ω×8
a b c d f
a b g
P1.4
P1.5 P1.6
e
f g dp e d c
T1
P1.7
+5V
.
8051
P3.3
单片机原理及应用——自动化系
编程
来一个脉冲加 一,只要T1内 容变化,显示 就立刻变化。
因为是一位显 DISP2:MOV DPTR,#TAB ORG 0000H 示器,所以最 MOV A,TL1 START:MOV TMOD,#60H 多显示到F MOVC A,@A+DPTR MOV TH1,#00H MOV P1,A MOV TL1,#00H CJNE A,#8E,DISP2 MAIN:MOV P1,#0C0H ;显示0(共阳极) LJMP START DISP:JB P3.3,DISP TAB:0C0H,0F9H,0A4H… DELAY:MOV R2,#14H ACALL DELAY 去抖 DELAY1:MOV R3,$ JB P3.3,DISP DJNZ R3,$ DISP1:JNB P3.3,DISP DJNZ R2,DELAY1 ACALL DELAY 松开了吗? RET JNB P3.3,DISP1 END SETB TR1
使用时主程序应该为:MAIN:LCALL KS JZ XXXX …
单片机原理及应用——自动化系
方法一
按键识别——扫描法
原理: 在某一时刻只让一条列线处于低电平,其余列线均处 于高电平,则当这一列有键按下时,该键所在的行电平将 会由高电平变为低电平,可判定该列相应的行有键按下。 流程: 当第0列处于低电平时,逐行查找是否有行线变低,若 有,则第0列与该行的交叉点按键按下;若无,则表示第0 列无键按下,再让下一列处于低电平,依次循环,这种方 式成为键盘扫描。 键号=行首号(0、4、8、12)+列号(0、1、2、3)
第八章 单片机接口技术
人机接口: 键盘接口 显示接口 模拟量输入/输出接口: D/A转换接口 A/D转换接口 通讯接口
单片机原理及应用——自动化系
8.1键盘接口
• 按键的特点及输入原理 • 独立式按键
• 行列式按键
单片机原理及应用——自动化系
按键的特点及工作原理
◎按键的分类: 触点式:机械;无触点式:电气 ◎键输入原理: 通过按键的接通与断开,产生两种相反的逻辑状态。 低电平“0”与高电平“1” ◎键功能的实现: 1:对于一组键或一个键盘,需要通过接口电路与单片机相连。可 采用查询或中断的方式测试有无按键; 2:再确定那一个键按下,将键号送入累加器A; 3:然后判断是数字键还是功能键,若是数字键,将键号对应的数 字送入相关输入缓冲区;若是功能键,则通过跳转指令转入执行该键 的功能程序,执行完后再返回主程序。
难点在于如何判 断究竟是哪个键 按下?
列号 0 4 8 1 2 3 行线 5 6 7 9 10 11
12 13 14 15 行首号 键号=行号+列号 列线
返回键扫描
单片机原理及应用——自动化系
键盘扫描子程序一般包括以下内容:
判别有无键按下;
扫描获取闭合键的行、列值; 用计算法或者查表法得到键值;
判断闭合键释放否,如果没有释放继续等待;
S0键处理 S1键处理 S2键处理
若判断键是 程序: 否释放将如 何修改?
ORG 0000H KB:MOV P1,#0FFH MOV A,P1 CPL A ANL A,#07H;只用到了低三 位,将其它位屏蔽掉 JZ KB LCALL D10ms;去抖 MOV A,P1 CPL A ANL A,#07H JZ KB
单片机原理及应用——自动化系
键盘扫描程序
SERCH: MOV R2,#0EFH MOV R3,#00H LTNE0: MOV A,R2 MOV P1,A MOV A,P1 JB ACC.3,LINE1 MOV A,#00H AJMP TRYK LINE1: JB ACC.2,LINE2 MOV A,#04H AJMP TRYK LINE2: JB ACC.1,LINE3 MOV A,#08H AJMP TRYK ;某一列为低电平(P1.4=0) ;R3作为列号寄存器
单片机原理及应用——自动化系
0 0
0
0
例:方法三
ORG 0000H LJMP MAIN ORG 0003H LJMP SKEY MAIN:MOV P1,#0F0H; MOV IE,#81H; SJMP $ SKEY:LCALL KEY;有键按下,就申请中断 JZ TM1 LCALL T10MS LCALL KEY JZ TM1 LCALL SERCH; … TM1:MOV IE,#81H RETI
保存闭合键号。
单片机原理及应用——自动化系
键按下/释放判断
KS:MOV MOV MOV MOV CPL ANL RET A,#00H P1,A P1,#0FH A,P1 A A,#0FH
;全扫描字#00H送P1口 ;读入P1口状态 ;变正逻辑,高电平表示有键按下 ;取低四位 ;返回,A≠0表示有键按下
10ms=10000us计数10000次 选择定时器1方式2 初值:X=256-100=156=9CH 循环100次
;调用按键测试程序,看是否有键按下,出口为A ;判断A的内容:(A=0无键按下,转TM) ;去抖
;调用键扫描程序,判断键号
单片机原理及应用——自动化系
因为每隔10ms自动中断,当进行键处理 例:方法二 时就不能再中断了,这里关中断
;ACC.0=1无键按下转查下一列 ;ACC.0=0有键按下,行首号送A ;4行均没有键按下,则转到下一列 ;左移一位查找下一列 ;ACC.0=0查完
上一页
单片机原理及应用——自动化系
键盘工作方式——定时扫描与中断扫描
• 定时扫描工作方式 每隔一段时间对键盘扫描一次。它利 用单片机内部的定时器产生一定时间(例 10ms)的定时,当定时时间到就产生定时 器溢出。可通过查询或中断方式对键盘进 行扫描,确定是否有键按下及识别键号。 再根据键号执行该键对应的功能程序。
• 特点:原理简单、显示亮度强,无闪烁、占用I/O口资源较多。
单片机原理及应用——自动化系
动态显示方式
• 连接:所有LED的段选线共同连接在一起共用一个8位的I/O口 动态显示用分时的方法轮流控制各个数码管的COM端,使每个数码管轮流 线,而每个LED的位选分别由一根相应的I/O口线控制。因此必 点亮。在轮流点亮数码管的扫描过程中,每位数码管的点亮时间极为短暂。但是 须采用动态扫描显示方式,每一个时刻只选通其中一个LED, 由于人的视觉暂留现象和发光二极管的余辉,给人的印象就是一组稳定的显示数 据。 同时在段选口送出该位LED的字型码。 动态显示节省I/O口资源,此外因为是亮灭的形式,还节省能源。但是亮度 不如静态显示。