Presentation is loading. Please wait.

Presentation is loading. Please wait.

第8章 应用系统配置及接口技术 ● 教学目标 ● 学习要求

Similar presentations


Presentation on theme: "第8章 应用系统配置及接口技术 ● 教学目标 ● 学习要求"— Presentation transcript:

1 第8章 应用系统配置及接口技术 ● 教学目标 ● 学习要求
第8章 应用系统配置及接口技术 ● 教学目标 介绍单片机与开关及键盘接口技术 介绍单片机与显示器接口技术 介绍单片机与A/D转换器的接口技术 介绍单片机与D/A转换器的接口技术 ● 学习要求 掌握单片机接口电路的基本功能,了解单片机接口的一般结构 熟悉单片机系统的I/O端口配置,掌握相应接口的程序编制

2 8.1 单片机与开关及键盘接口技术 8.1.1 键盘的工作原理 1)键盘的输入原理 2)键输入接口的软、硬件功能 ⑴ 键状态的可靠输入
8.1 单片机与开关及键盘接口技术 键盘的工作原理 1)键盘的输入原理 2)键输入接口的软、硬件功能 ⑴ 键状态的可靠输入 ① 双稳态消抖 ② 滤波消抖电路 ③ 软件消抖 ⑵ 获得键值或键号

3 ⑶ 键处理程序 ① 监测有无键按下; ② 有键按下后,在无硬件去抖动电路的情况下,应用软件延时方法除去抖动影响; ③ 有可靠的逻辑处理办法,如N键锁定,即只处理一个键,其间任何按下又松开的键不产生影响,不管一次按键持续有多长时间,仅执行一次按键功能程序; ④ 输出确定的键号,以满足执行相应子程序要求。

4 8.1.2 独立式按键与行列式键盘及接口 1)独立式按键的硬件结构 2)独立式按键的软件结构

5 3)行列式键盘的结构及原理

6 4)行列式按键的识别方法 ⑴ 扫描法 分两步进行: 第一步,识别键盘有无键按下; 第二步,如果有键被按下,识别出具体的按键。 识别键盘有无键按下的方法是:让所有列线均置为低电平,检查各行线电平是否有变化,如果有变化,则说明有键被按下;如果没有变化,则说明无键被按下。(实际编程时应考虑按键抖动的影响,通常采用软件延时的方法进行抖动消除处理)。 识别具体按键的方法是(称为扫描法):逐列置低电平,其余各列置为高电平,检查各行线电平的变化,如果某行电平由高电平变为低电平,则可确定此行此列的交叉点处的按键被按下。

7 ⑵ 线反转法

8 线反转法的两个具体操作步骤: ① 将行线编程为输入线,列线编程为输出线,并使输出线为全低电平,则行线中电平由高到低变化的所在行为按键所在行。 ② 同①完全相反,将行线编程为输出线,列线编程为输入线,并使输出线为全低电平,则列线中电平由高到低变化的所在列为按键所在列。 实际编程时同样应考虑用软件延时进行消抖处理。

9 5) 键盘的工作方式 ⑴ 编程扫描方式 键盘扫描程序一般应具备下述几个功能: ① 判断键盘上有无键按下。其方法为列电平全输出为“0”电平时,读行线电平状态,若行电平全为“1”电平,则键盘无键按下,若不全为“1”电平,则有键按下。 ② 去除键抖动的影响。方法为,在判断有键按下后,软件延时一段时间(一般为10ms左右)后,再判断键盘状态,如果仍为有键按下状态,则认为有一个确定的键被按下,否则按键抖动处理。 ③ 扫描键盘,得到按下键的键号。 ④ 判别闭合的键是否释放。键闭合一次仅进行一次键功能操作。等键释放后即将键值送入累加器A中,然后执行键功能操作。

10 键号 1 2 3 4 5 6 7 键值 FEXE FDXE FBXE F7XE EFXE DFXE BFXE 7FXE 8 9 10 11 12 13 14 15 FEXD FDXD FBXD F7XD EFXD DFXD BFXD 7FXD 16 17 18 19 20 21 22 23 FEXB FDXB FBXB F7XB EFXB DFXB BFXB 7FXB 24 25 26 27 28 29 30 31 FEX7 FDX7 FBX7 F7X7 EFX7 DFX7 BFX7 7FX7

11 ⑵ 定时扫描工作方式 定时扫描工作方式是利用单片机内部定时器产生定时中断(例如10ms),CPU响应中断后对键盘进行扫描,并在有键按下时识别出该键,并执行相应的键功能程序。

12 ⑶ 中断工作方式 只有在键盘上有键按下时,发出中断请求,CPU响应中断请求后,转中断服务程序,进行键盘扫描,识别键码。

13 8.2单片机与显示器接口技术 1)LED显示器结构与原理 ⑴ LED显示器结构

14 共阴极和共阳极的七段显示代码如下: 显示字符 共阴极段代码 共阳极段代码 3FH C0H c 39H C6H 1 06H F9H d 5EH
3FH C0H c 39H C6H 1 06H F9H d 5EH A1H 2 5BH A4H E 79H 86H 3 4FH B0H F 71H 8EH 4 66H 99H P 73H 8CH 5 6DH 92H U 3EH C1H 6 7DH 82H I 31H CEH 7 07H F8H Y 6EH 91H 8 7FH 80H H 76H 89H 9 6FH 90H L 38H C7H A 77H 88H =. C8H 37H b 7CH 83H “灭” 00H FFH

15 ⑵ LED显示器工作原理

16 2)动态显示器程序设计

17 8.3 A/D转换器与单片机的接口 A/D转换器与单片机的接口是单片机应用系统的重要接口,任何型号的ADC芯片都能与单片机连接,但接口形式与ADC芯片型号、转换速度以及分辨率的要求不同有所差异。 从ADC接口电路结构来看,ADC芯片与单片机连接有如下形式: ⑴ 与单片机总线直接连接: ⑵ 用三态门与单片机连接: ⑶ 通过I/O接口与单片机相连:

18 1).3位半双积分A/D转换器MC14433与8031单片机的接口
MC14433是3位半双积分A/D转换器。 特点:抗干扰性能好、转换精度高、自动校零、自动极性输出、自动量程控制信号输出、动态字位扫描BCD码输出、单基准电压、外接元件少和价格低廉等。 但其转换速度慢,约1~10次/秒。 ⑴ MC14433的内部结构及引脚功能 内部结构如图

19 MC14433芯片的引脚分布如图 VAG:模拟地 VR:外接输入基准电压 Vx:被测电压输入端 R1、R1/C1、C1:外接积分电阻R1和积分电容元件端 C01、C02:外接失调补偿电容C0端 DU:显示更新输入,高电平有效CLKI和CLK0:时钟脉冲输入、输出端,可以外接电阻RC VEE:模拟部分的负电源端,接-5V VSS:数字部分的负电源端 EOC:转换结束信号,高电平有效当转换结束后,在该引脚将输出一个脉宽为1/2时钟的正脉冲; OR:超量程检出端,低电平有效

20 DS1~DS4:多路选通脉冲输出端。DS1对应千位,DS4对应个位,每个选通脉冲周期为18个时钟周期,每两个相邻脉冲之间间隔2个时钟周期

21 超量程时,A/D转换输出数为1999,欠量程时读出数为<179。
Q0~Q3:BCD码数据输出端。其中Q3为最高位,Q0为最低位。当DS2、DS3、DS4选通期间,输出三位完整的BCD码,即0~9十个数字任一个。但在DS1选通期间,Q0~Q3除了千位的0或1外,还表示了转换值的正负极性和欠量程还是超量程,其含义见表。 DS1 Q3 Q2 Q1 Q0 输出结果状态 1 × 千位数为0 千位数为1 输出结果为正值 输出结果为负值 输入信号超量程 输入信号欠量程 超量程时,A/D转换输出数为1999,欠量程时读出数为<179。

22 ⑵ MC14433与8031单片机的接口设计 由于EOC与DU端相连,每次转换结束都有相应的BCD码和选通信号出现在Q0~Q3和DS1~DS4上。其程序清单见书。

23 2).并行逐次逼近式A/D转换器与8031单片机的接口
⑴ AD574/674/774/1674,ADS774系列A/D转换器 ① 工作原理 AD1674包括宽频带采样保持器、10V基电压源、时钟电路、D/A转换器、SAR寄存器和三态缓冲器等。  当控制电路发出启动转换命令时,首先使采样/保持器工作在保持模式,并使SAR寄存器复零。一旦转换开始就不能停止或重新启动A/D转换,此时输出缓冲器的数据输出无效,逐次逼近寄存器按时钟顺序从高位到低位进行比较,以产生转换结果,只要转换结束,就返回一个转换结束标志给控制部分,立即禁止时钟输出,并使采样/保持器工作在采样模式。与此同时,延迟STS信号下跳的时间稳定转换数据,以满足12位的精度。  

24 ② 引脚及功能

25 在转换期间:A0=0表示ADC进行12位转换,在读出期间:A0=0表示高8位数据有效;A0=1表示低4位的数据有效
引脚 信号 说 明 1 +5V 逻辑电源+5V 2 12/8 12/8=1,双字节输出;12/8=0,单字节输出 3 CS 片选信号,低电平有效 4 A0 在转换期间:A0=0表示ADC进行12位转换,在读出期间:A0=0表示高8位数据有效;A0=1表示低4位的数据有效 5 R/C R/C=1,允许读数据;R/C=0,允许启动A/D转换 6 CE 启动转换信号,高电平有效 7/11 VCC/VEE 模拟部分正负电源 8 REFOUT 10V内部参考电压输出 10 REFIN 参考电压输入 13/14 VIN/20VIN 模拟量10V及20V量程的输入端口,信号另一端接AGND 15 DGND 数字公共地 9 AGND 模拟公共地 16~27 DB0~DB11 数字量输出 28 STS 转换开始变高,转换过程为高电平;转换完成后变为低电平

26 AD1674可以工作在全控模式或单一模式。 在全控模式中,利用CE,CS,R/C来控制转换和读数。如果CE=1且CS=0,则R/C=1时读数,R/C=0时启动A/D转换。见下表: CS R/C 12/8 CE A0 工 作 状 态 × 禁止 1 启动12位转换 启动8位转换 接1脚(+5V) 12位并行输出有效 接地 高8位并行输出有效 低4位加上尾随4个0有效 在单一模式中,CE=1,CS=0,12/8=1,A0=0,它是通过R/C来完成读数和转换功能的控制的。

27 ③ 技术指标 分辨率: 位 非线性误差: ±1/2 LSB 模拟输入: 双极性 ±5V,或±10V; 单极性 0~10V,或0~20V 供电电源: VLOGIC—逻辑电平 +4.5V~+5.5V VCC—供电电源 V~+16.5V VEE—供电电源 V~-16.5V 内部参考电平: 10.00V±0.1(max)V 转换时间 : 15~35μs 存放温度 : ~15℃

28 ④ A/D转换器的应用 有单极性输入和双极性输入两种工作方式 单极性模拟量输入有两种量程,0~10V和0~20V。若无需进行零位调整,则将补偿调整引脚BIPOFF(12)直接接至引脚9。在不需要进行量程调整时,可与引脚8和引脚10之间加接一个50Ω的电阻,如图(a)所示。若需要进行零位和满量程调整,其电路如图(b)所示。

29 双极性输入: 改变AD1674引脚8、10、12的外接电路,可使AD1674进行单极性和双极性模拟量输入方式的转换,双极性模拟量输入电路图如图所示。

30 ⑤ 时序 AD1674芯片全控模式下的时序图 启动转换时序 读取数据时序

31 ⑵ AD1674与8031单片机的接口 查询方式A/D转换程序见书

32 8.4 D/A转换器与单片机的接口 DAC是一种把二进制数字信号转换为模拟信号(电压或电流)的电路。DAC品种繁多,按转换原理的不同,可分为权电阻DAC、T型电阻DAC、倒T型电阻DAC、变形权电阻DAC、电容DAC和权电流DAC等等。 D/A转换是单片机应用系统中典型的接口技术。现阶段D/A转换接口的设计,主要是根据系统的要求,选用合适的D/A转换芯片,配置外围电路及器件,实现数字量到模拟量的转换。 1). DAC0832与8031单片机的接口 DAC0832是美国数据公司的8位分辨率的D/A转换集成芯片,与微处理器完全兼容。此芯片采用先进的CMOS工艺,功耗低,输出漏电流误差较小,且价格低廉、接口简单、转换控制容易等,在单片机应用系统中得到了广泛的应用。

33 ⑴ DAC0832的结构与原理 DAC0832数/模转换器的内部由8位输入锁存器、8位DAC寄存器、8位D/A转换器电路及转换控制电路构成。 在使用时,可以通过对控制引脚的不同设置,采用双缓冲方式(两级输入锁存),也可以用单缓冲方式(只用一级输入锁存,另一级始终直通),或者连接成完全直通的形式。

34 DAC0832的主要特性如下: ① 分辨率为8位。 ② 转换时间为1μs。 ③ 可单缓冲、双缓冲或直接数字输入。 ④ 只需在满量程下调整其线性度。 ⑤ 逻辑电平输入与TTL兼容。 ⑥ 单一电源供电(+5~+15V)。 ⑦ 低功耗(0.2W)。 ⑵ DAC0832的引脚功能

35 ⑶ DAC0832与8031单片机的接口设计 DAC0832与8031单片机有两种基本的接口方法,即单缓冲器方式和双缓冲器同步方式。 ① 单缓冲方式接口

36 ② 双缓冲同步方式接口

37 2).12位D/A转换器DAC1208与8031单片机的接口 ⑴ DAC1208内部结构及原理 内部有三个寄存器:一个4位输入寄存器,用于存放12位数字量中低4位;1个8位输入寄存器,存放12位数字量中高8位;一个12位DAC寄存器,存放上述两个输入寄存器送来的12位数字量;一个12位D/A转换器,它由12个电子开关和12位T型电阻网络组成,用于完成12位D/A转换。

38 ⑵ DAC1208与8031单片机的接口设计 BYTE1/BYTE2和8031地址线中A0(即Q0)相连,因此,DAC1208内部三个I/O端口实际上占用了四个I/O端口地址。其中,“4位输入寄存器”端口地址为0FEH,“8位输入寄存器”地址为0FFH,12位DAC寄存器地址为0FCH或0FDH。

39 DAC1208是以双缓冲方式工作的。8031遵守先送高8位和后送低4位原则,分两批把12位数字量送到输入寄存器,然后通过0FCH或0FDH端口使12位DAC寄存器同时从输入寄存器接收数字量,进行D/A转换。 程序是将内部RAM的40H和41H单元中存放的一个12位数字量(41H中为高8位,40H高半字节中为低4位),送到DAC进行变换。 ORG 2000H MOV P2,#0FFH MOV R0,#OFFH ;8位输入寄存器口地址送R0 MOV A,41H ;高8位数字量送A MOVX @R0,A ;高8位数字量送8位输入寄存器 MOV A,40H ;低4位数字量送A MOV R0,#0FEH ;4位输入寄存器口地址送R0 MOVX @R0,A ;低4位数字量送4位输入寄存器 MOV R0,#0FDH ;DAC寄存器口地址送R0 MOVX @R0,A ;启动D/A变换 END

40 小 结 键盘是计算机不可缺少的输入设备,是实现人机对话的纽带。了解键盘的工作原理、键盘按键的识别过程及识别方法、键盘与单片机的接口技术和编程技巧等,是设计单片机应用系统的基本要求。 发光二极管显示器(LED)是最常用的输出设备。发光二极管显示分为固定显示和可以拼装的大型字段显示,有共阳极和共阴极之分,接口电路简单,设计较为容易。 模拟量向数字量或数字量向模拟量的转换,是单片机的模/数(A/D)和数/模(D/A)转换的接口问题。双积分式A/D转换器具有抗干扰性能好、转换精度高,外接元件少和价格低廉,但转换速度慢,一般不能挂接在数据总线上。逐次逼近式A/D转换器主要优点是转换速度比较快,接口电路简单,大多数可直接挂在总线上。无论哪种类型A/D转换器,接口设计时均应考虑启动控制和判断转换结束状态功能。D/A转换器根据使用要求的不同,与单片机总线连接分别有直通方式、单缓冲器方式和双缓冲器方式。

41 思考题与习题八 ⑴ 什么是编码键盘?什么是非编码键盘? ⑵  一个完善的键处理程序应完成那些任务? ⑶  行列式按键的识别有哪几种方法?简述他们的工作原理。 ⑷  键盘通常有哪几种工作方式?简述他们的工作原理。 ⑸  简述LED显示器的工作原理。 ⑹  什么叫显示缓冲区?显示缓冲区一般放在哪里?显示缓冲区中通常存放的是什么? ⑺ 点亮LED显示器有静态和动态两种方法,简述它们的工作原理。 ⑻ D/A转换器的作用是什么?A/D转换器的作用是什么?各在什么场合下使用? ⑼  MC14433为什么不能直接连接在8031单片机的数据总线上? ⑽ 简述AD1674的特点。哪些引脚可以决定它的选口和启动? ⑾ DAC0832和MCS-51接口时有哪三种工作方式?各有什么特点?适合在什么场合下使用? ⑿ MCS-51和1208接口时,单片机为什么必须给它先送高8位和后送低4位数字量?这时的DAC1208能否在直通或单缓冲方式下工作?为什么?


Download ppt "第8章 应用系统配置及接口技术 ● 教学目标 ● 学习要求"

Similar presentations


Ads by Google