MCS51与计算机打印机等接口设计培训教材
计算机接口技术课件 第三章 MCS-51单片机汇编语言与程序设计基础
例2:编制一段程序,要求在端口线 :编制一段程序,要求在端口线P1.0,P1.1上分别产生周期为 , 上分别产生周期为 200us和400us的方波.设单片机的外接频率为 的方波. 和 的方波 设单片机的外接频率为12MHz. . 分析:利用定时器产生方波,将定时器设置成为工作方式 , 分析:利用定时器产生方波,将定时器设置成为工作方式3,将寄 存器T0定时 定时100us,T1定时 定时200us,达到定时时间后引起中断,在中 存器 定时 , 定时 ,达到定时时间后引起中断, 断服务程序中各自将P1.0和P1.1引脚取反. 引脚取反. 断服务程序中各自将 和 引脚取反 定时器预设值的设置: 定时器预设值的设置: 单片机的晶体振荡频率为12MHz,计时器的计时频率为1MHz,机 单片机的晶体振荡频率为 ,计时器的计时频率为 , 器周期为1us. 定时 定时100us,因此寄存器 需要计数 需要计数100次 器周期为 . T0定时 ,因此寄存器T0需要计数 次 ,其预 置值为64H+1=9CH. T1定时 定时200us,因此寄存器 需要计数 需要计数200次 置值为 . 定时 ,因此寄存器T1需要计数 次 其预置值为C8H+1=38H. ,其预置值为 . 定时器T0,T1的工作方式设置: 的工作方式设置: 定时器 的工作方式设置 T0采用工作方式 ,因此 采用工作方式3,因此TMOD寄存器的值设置为 寄存器的值设置为#22H. 采用工作方式 寄存器的值设置为 . 定时器T0,T1的控制设置: 的控制设置: 定时器 的控制设置 打开T0, ;要求TCON寄存器的值设置为 寄存器的值设置为#50H. 打开 ,T1;要求 寄存器的值设置为 .
定义存储区域的大小. 6. DS —定义存储区域的大小. 定义存储区域的大小 例: ORG 0350H DS 3
MCS-51第10章MCS-51与键盘和显示器的接口设计-PPT课件
静态显示示例:
15
ORG 0000H
AJMP START ORG 0100H START: MOV SP, #60H MOV DPTR,#SEG01 MOV R2,#0 LOOP: CLR A MOVC A,@A+DPTR MOV P1,A MOV P3,A INC DPTR INC R2 ACALL DELAY CJNE R2,#10,LOOP MOV DPTR,#SEG01 MOV R2,#0 AJMP LOOP
12
虽然这些字符是在不同时刻出现,而在同一时刻,只有 一位显示,其他各位熄灭,由于余辉和人眼的“视觉暂留” 作用,只要每位显示间隔足够短,则可以造成“多位同时亮” 的假象,达到同时显示的效果。
LED不同位显示的时间间隔(扫描间隔)应根据实际情 况而定。显示位数多,将占大量的单片机时间,因此动态显 示的实质是以牺牲单片机时间来换取I/O端口的减少。
无论在任何时刻只有一个LED数码管处于显示状态,即 单片机采用“扫描”方式控制各个数码管轮流显示。
9
图10-4 4位LED静态显示电路
10
在多位LED显示时,为简化硬件电路,通常将所有显示 位的段码线的相应段并联在一起,由一个8位I/O口控制,而 各位的共阳极或共阴极分别由相应的I/O线控制,形成各位的 分时选通。
R5,D2
RET
TABLE: DB
3FH,06H,5BH,4FH,66H,6DH,7DH,07H
;段码表
DB
01H
图10-6所示为8位LED动态显示2009.10.10的过程。图 10-6(a)所示为显示过程,某一时刻,只有一位LED被选 通显示,其余位则是熄灭的;图10-6(b)所示为实际的显 示结果,人眼看到的是8位稳定的同时显示的字符。
第5章 MCS–51单片机的接口与应用 99页 5.8M
(1) 用键盘连接的I/O线的二进制组合表示键码。例如用4行、
4列线构成的16个键的键盘,可使用一个8位I/O口线的高、低4 位口线的二进制数的组合表示16个键的编码,如图5.4(a)所示。 各键相应的键值为88H、84H、82H、81H、48H、44H、42H、 41H、28H、24H、22H、21H、18H、14H、12H、11H。这种键 值编码软件较为简单直观,但离散性大,不便安排散转程序的 入口地址。
第5章 MCS–51单片机的接口与应用 JNB ACC.2,K2 JNB ACC.3,K3 JNB ACC.4,K4 JNB ACC.5,K5 JNB ACC.6,K6 ;检测2号键是否按下,按下转 ;检测3号键是否按下,按下转 ;检测4号键是否按下,按下转 ;检测5号键是否按下,按下转 ;检测6号键是否按下,按下转
;0号键功能程序
;0号键功能程序执行完返回 ;0号键功能程序
JMP START
……………………… PROM7: ……………………… JMP START …
;1号键功能程序执行完返回
;7号键功能程序 ;7号键功能程序执行完返回
第5章 MCS–51单片机的接口与应用
5.1.4 行列式键盘
行列式键盘又叫矩阵式键盘。用I/O口线组成行、列结构, 按键设置在行列的交点上。例如4×4的行列结构可组成16个键 的键盘。因此,在按键数量较多时,可以节省I/O口线。 1.行列式键盘的接口 行列式键盘的接口方法有许多,例如直接接口于单片机的 I/O口上;利用扩展的并行I/O接口;用串行口扩展并行I/O口接 口;利用一种可编程的键盘、显示接口芯片8279进行接口等。 其中,利用扩展的并行I/O接口方法方便灵活,在单片机应用系
MOVX @DPTR,A
第10章 MCS-51与键盘、显示器、拨盘、打印机的接口设计75987培训资料
;屏蔽高三位 ;保存键盘状态值 ;延时10ms去键盘抖动
MOVX A,@DPTR ;再读键盘状态
ANL A,#1FH
;屏蔽高三位
CJNE A,R3,RETURN ;两次不同,抖动引起转RETURN
CJNE A,#1EH,KEY2 ;相等,有键按下,不等转KEY2
2020/8/15
LJMP PKEY1
2020/8/15
图10-4:4位8段LED动态显示电路。其中段码线占用一 个8位I/O口,而位选线占用一个4位I/O口。
2020/8/15
图10-5为8位LED动态显示2003.10.10的过程。 图(a)是显示过程,某一时刻,只有一位LED被选通
显示,其余位则是熄灭的; 图(b)是实际显示结果,人眼看到的是8位稳定的
LJMP PKEY4
;S4按下,转PKH,PASS ;S5未按下,转RETURN
LJMP PKEY5
;S5按下,转PKEY5处理
RETURN:RET
;重键或无键按下,从子程序返回
2020/8识/15别和编程简单,用在按键数较少的场合。
2. 行列式(矩阵式)键盘接口 用于按键数目较多的场合,由行线和列线组成,
段对应段码的最低位。
2020/8/15
10.1.2 LED显示器工作原理 图10-2是4位 LED显示器的结构原理图。
N个LED显示块有N位位选线和8×N根段码线。 2020/8/15
段码线控制显示的字型,
位选线控制该显示位的亮或暗。
静态显示和动态显示两种显示方式。
1. 静态显示方式
各位的公共端连接在一起(接地或+5V)。 每位的段码线(a~dp)分别与一个8位的锁存器
按上述格式,8段LED的段码如表10-1所示。
计算机接口技术课件第三章MCS51单片机汇编语言与程序设计基础
;重置时间常数
;P1.1取反
;中断返回
3-4分支程序
由条件转移指令构成程序判断框部分,形成程序分支结构。
例题:设变量x以补码数的形式存放在片内RAM30H单元,函数y
与x有如下关系式(此题关键在于识别X的模态)
X,x>0
y #20H,x=0
X+5,x<0
80H=1000 0000
片内 RAM MAX
… 5 2 4 1 TAB→ 3
外循环初始化 内循环初始化
循环工作 内循环控制 ? 外循环控制 ?
循环结束
SORT: MOV A,#N-1 MOV R4,A
LOOP1: MOV A,R4 MOV R3,A MOV R0,#TAB
LOOP2: MOV A,@R0 MOV B,A INC R0 MOV A,@R0 CJNE A,B,L1
RAM
RET
R0+1→ 0 AH
2)调用子程序UFOR1之前,将待
R0→ 0 AL
分解的内容送A,存放地址送R0。
3)输出结果放在DISMEM0~5
例 子程序:比较两个数据串是否完全相等,若完全相等,A=0; 否则A=FFH。
元。1班的人数在40H里
3-5-3 多重循环
循环体中套循环结构。以双重循环使用较多。
例:将内存一串单字节无符号数升序排序。
步骤:每次取相邻单元的两个数比较,决定是否需要交换数 据位置。
第一次循环,比较N-1次,取到数据表中最大值。
第二次循环,比较N-2次,取到次大值。
开始
…
第N-1次循环:比较一次,排序结束。
3-1 汇编程序的约定
汇编语言程序: 用汇编语言编写的、完成特定功能的指令序列。
第7章 MCS51单片机常用接口PPT课件
18.08.2020 6
第7章 MCS51单片机常用接口
② 译码法 部分译码法是先将扩展芯片的地址线与单片机的地址总线
●译码器法 译码器法就是利用译码器电路对存储器地址分配的片外
扩展位进行译码,将译码输出与存储芯片的片选端相连。 常用译码器有: 2~4译码器74LS139; 3~8译码器74LS138 4~16译码器74LS154
用74LS138译码器 连接的电路如图
18.08.2020 9
第7章 MCS51单片机常用接口
2.存储器扩展的一般方法
程序存储器 掩膜ROM、可编程PROM、光可擦除EPROM
存 储
电可擦除EEPROM
器
数据存储器 静态SRAM和动态DRAM
扩展方法:译码法和线选法。
18.08.2020 5
第7章 MCS51单片机常用接口
① 线选法 先将扩展芯片的地址线与单片机的地址线从低位开始
顺序相连后,剩余的高位地址线的一根或几根直接连接到 各扩展芯片的片选线上。
18.08.2020 11
第7章 S51单片机常用接口
7.2.2 程序存储器扩展 1.EPROM2764(8K*8) EPROM2764是28脚双列直插式封装,其管脚配置如下图:
A0-A12:是13根地址线。 D0-D7: 是8根数据线。 /CE :是片选信号。 /OE :是输出允许信号。 VPP :是编程电源。 /PGM:是编程脉冲输入
●74LS138译码器功能管脚
① 共有16个引脚。 ② C B A 为三个输入引脚接单片 机地址线不同组合选择不同芯片 ③ Y0~Y7为8个输出引脚接扩展 芯片的片选信号 ④ G1G2BG2A为三个控制引脚接线电 平1 0 0 ⑤ 电源正负极
MCS-51系列单片机与微型打印机的接口设计
引言1 微型打印机在单片机应用系统中应用相当广泛,在智能仪器仪表、医疗仪器、消防报警、电力系统、电子衡器、电子收款机、税控机、计价器等系统中几乎成为标准配置。
微型打印机的种类很多,有针式和热敏、台式和面板式、非汉字和汉字之分。
如按接口类型划分,则有并口和串口两大类,其中串口类又可分为、、RS232C RS485及无线接口、红外线接口等。
笔者多年来一直从事微型USB 计算机方面的教学和应用研究工作,合作开发了多种电测领域的智能仪器仪表产品。
本文拟专门介绍系列单MCS-51片机与微型打印机的几种接口设计方面的实例和经验。
并行接口设计2 在某些应用系统中,单片机的串口已被其它设备(如上位机)占用,此时可选用并行接口微打,其接口与标准兼容,时序见图。
如果单片机已扩展CENTRONICS 1了外部程序存储器和(或)数据存储器,则建议直接将微打与数据总线相连而无须外加锁存器,接口电路见MCS-51图所示。
如果应用系统无外部扩展和,且2(a)ROM RAM P0~口有足够空余的话,则建议使用图所示的接口。
如P32(b)果~空余不足时,建议采用串行接口类微打。
并行接P0P3口采用查询方式时,软件流程图见图。
3串行接口设计3 大多数单片机应用系统不是高速大数据量吞吐的,因此单片结构,即不外扩展和ROM 已成为单片机RAM 系统发展的方向之一。
与之相适应,以各种串行总线来配置应用系统已成为设计者的常用手段。
打印机是低速设备,应用微型打印机打印时,数据量一般不大,因此在单片机应用系统中,应当优先考虑选用串行接口类的微型打印机。
选用台式串口微型打印机3.1 系列单片机与微型打印机的接口设计MCS-51刘西玲甘肃省机械电子职工大学专业科,甘肃天水( 741001)摘要: 介绍系列单片机与微型打印机各种接口的典型电路设计和驱动程序流程,提出在单片机应用MCS-51系统中选择打印机接口的主要原则。
关键词:单片机;微型打印机;接口设计中图分类号:文献标识码:文章编号:TP33 B 1371-1351(2004)05-0056-02图 1 并行接口定时图注:>><<≈T120ns T230ns T340ns T45us T54us图3 流程图对于掌上型仪器仪表,由于体积限制,一般均配置分体台式串口微型打印机作为可选外设,由于连线较长,其串口信号采用标准电平,即:EIA 逻辑“”(~低电平)Mark=1EIA -3V -27V 逻辑“”(~高电平)Space=0EIA +3V +27V 因此,在与单片机接口时,存在电平和TTL EIA 电平的转换问题,接口电路见图。
计算机接口技术课件 第四章 MCS-51单片机的接口技术
例题2:试编制一段单片机汇编程序,将累加器A中的数据输出 到地址为1FFFH端口上。
方法1:MOV P2 , #1FH
MOV R1 , #FFH
MOVX @R1, A 方法2: MOV DPTR , #1FFFH MOVX @DPTR, A
5.1.2 输入/输出的数据交换方式
MCS-51系列单片机与外围电路及芯片连接好接口后在什么状 态下做数据交换?通常的方式有四种:
P0
为其分配合适的地址P2.7=0
CPU自带
DAC0832的3种单缓冲连接方式 (a)DAC寄存器直通方式;(b)输入寄存器直通方式;
(c)两个寄存器同时选通及锁存方式
执行下面一段程序.将在运算放大器输出端Vout端 口得到一个三角波电压。 ORG 8100H MOV DPTR, #7FFFH;0832的接口地址 Lop: MOV R2,#0FFH MOV A,#00H LOOP1: MOVX @DPTR, A; P2=01111111 INC A 产生WRI DJNZ R2,LOOPl CS/XFER MOV R2, #0FEH LOOP2: DEC A MOVX @DPTR, A DJNZ R2,LOOP2 AJMP LOOP1
D/A转换器的主要特性: 不同的DAC芯片有着不同的特点和指标、从接口的角度考虑DAC 有以下特点: (1)输入数据位数:经常用的DAC芯片有8位、10位、12位、14 位,在与单片机接口时,将分为8位和大于8位的DAC两种情况考 虑(为什么?) ( 2 ) 接口电平:由于单片机的接口电平与74系列逻辑电路的电 平均为TTL电平。因此应用DAC芯片时,应选用TTL接口电平的 芯片。 ( 3)输出电压范围: DAC的输出有电流输出和电压输出之分。 对于电流输出的DAC则需外加电流—电压转换器电路(运算放大 器),这时电压的输出范围不仅与DAC的Vref有关,也与电流—电 压转换器有关。输出电压范围为0~5V,0~10V,士5V,士10V 等。 ( 4)输出电压极性:输出电压极性有单极性和双极性之分。如0 ~5V、0~10V为单极性输出,士5v、士10V为双极性输出。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
此种接口适于键数较少或操作速度较高的场合。 图10-7(a)为中断方式的独立式键盘工作电路
图10-7(b)为查询方式的独立式键盘工作电路。
2020/7/27
2020/7/27
图10-8为8255A扩展I/O口的独立式按键接口电路。
按上述格式,8段LED的段码如表10-1所示。
2020/7/27
表10-1只列出了部分段码,可根据实际情况选用。 另外,段码是相对的,它由各字段在字节中所处的
位决定。例如表10-1中8段LED段码是按格式:
而形成的, “0”的段码为3FH(共阴)。反之,如 将格式改为下列格式:
则 “0”的段码为7EH(共阴)。 字型及段码由设计者自行设定,习惯上还是以“a”
;是K1键按下,转K1键处理 ;子程序PKEY1
KEY2: CJNE A,#1DH,KEY3 ;S2键未按下,转KEY3
LJMP PKEY2
;S2键按下,转PKEY2处理
KEY3: CJNE A,#1BH,KEY4 ;S3未按下,转KEY4
LJMP PKEY3
;S3按下,转PKEY3处理
KEY4: CJNE A,#17H,KEY5 ;S4键未按下,转KEY5
同时显示的字符。
2020/7/27
10.2 键盘接口原理 1. 键盘输入的特点
键盘:一组按键开关的集合。 行线电压信号通过键盘开关机械触点的断开、闭合, 输出波形如图10-6。
2020/7/27
2. 按键的确认
检测行线电平 高电平:断开;低电平:闭合,
3.如何消除按键的抖动 常用软件来消除按键抖动。
LJMP PKEY4
;S4按下,转PKEY4处理
KEY5: CJNE A,#0FH,PASS ;S5未按下,转RETURN
LJMP PKEY5
;S5按下,转PKEY5处理
RETURN:RET
;重键或无键按下,从子程序返回
2020/7识/27别和编程简单,用在按键数较少的场合。
2. 行列式(矩阵式)键盘接口 用于按键数目较多的场合,由行线和列线组成,
基本思想:检测到有键按下,键对应的行线为低,软 件延时10ms后,行线如仍为低,则确认该行有键按下。
当键松开时,行线变高,软件延时10ms后,行线仍为 高,说明按键已松开。
采取以上措施,躲开了两个抖动期t1和t3的影响。
2020/7/27
10.2.2 键盘接口的工作原理
独立式按键接口和行列式键盘接口。 1.独立式键盘接口
常用的LED显示器为8段(或7段,8段比7段多了一 个小数点“dp”段)。
有共阳极和共阴极两种。如图10-1所示。
2020/7/27
2020/7/27
为使LED显示不同的符号或数字,要为LED提供段码 (或称字型码)。
提供给LED显示器的段码(字型码)正好是一个字 节(8段)。各段与字节中各位对应关系如下:
段对应段码的最低位。
2020/7/27
10.1.2 LED显示器工作原理 图10-2是4位 LED显示器的结构原理图。
N个LED显示块有N位位选线和8×N根段码线。 2020/7/27
段码线控制显示的字型,
位选线控制该显示位的亮或暗。
静态显示和动态显示两种显示方式。
1. 静态显示方式
各位的公共端连接在一起(接地或+5V)。 每位的段码线(a~dp)分别与一个8位的锁存器
a. 扫描法
图10-10(b)中3号键被按下为例,来说明此键 时如何被识别出来的。
2020/7/27
识别键盘有无键被按下的方法,分两步进行:
第1步:识别键盘有无键按下; 第2步:如有键被按下,识别出具体的按键。
把所有列线置0,检查各行线电平是否有变化,如 有变化,说明有键按下,如无变化,则无键按下。
按键位于行、列的交叉点上。如图10-10所示。
按键数目较多的场合,行列式键盘与独立式键盘 相比,要节省很多的I/O口线。
2020/7/27
(1)行列式键盘工作原理
无键按下,该行线为高电平,当有键按下时, 行线电平由列线的电平来决定。
由于行、列线为多键共用,各按键彼此将相互发 生影响,必须将行、列线信号配合起来并作适当的处 理,才能确定闭合键的位置。 (2)按键的识别方法
2020/7/27
图10-9用三态缓冲器扩展的I/O口的按键接口电
路。
2020/7/27
对图10-9独立式键盘编程,软件消抖,查询方式检
测键的状态。仅有一键按下时才有效才处理。
KEYIN:MOV DPTR,#0BFFFH;键盘端口地址BFFFH
MOVX A,@DPTR ;读键盘状态
ANL A,#1FH MOV R3,A LCALL DELAY10
;屏蔽高三位 ;保存键盘状态值 ;延时10ms去键盘抖动
MOVX A;屏蔽高三位
CJNE A,R3,RETURN ;两次不同,抖动引起转RETURN
CJNE A,#1EH,KEY2 ;相等,有键按下,不等转KEY2
2020/7/27
LJMP PKEY1
2020/7/27
图10-4:4位8段LED动态显示电路。其中段码线占用一 个8位I/O口,而位选线占用一个4位I/O口。
2020/7/27
图10-5为8位LED动态显示2003.10.10的过程。 图(a)是显示过程,某一时刻,只有一位LED被选通
显示,其余位则是熄灭的; 图(b)是实际显示结果,人眼看到的是8位稳定的
输出相连。 显示字符一确定,相应锁存器的段码输出将维持
不变,直到送入另一个段码为止。显示的亮度高。 图10-3: 4位静态LED显示器电路。该电路各位
可独立显示。
2020/7/27
2. 动态显示方式
所有位的段码线相应段并在一起,由一个8位I/O 口控制,形成段码线的多路复用,各位的公共端分别由 相应的I/O线控制,形成各位的分时选通。
第10章 MCS-51与键盘、显示器、拨盘、打印机的接 口设计
输入外设:键盘、BCD码拨盘等; 输出外设:LED显示器、LCD显示器、打印机等。
10.1 LED显示器接口原理 LED(Light Emitting Diode):发光二极管的缩写。
显示器前面冠以“LED”。
10.1.1 LED显示器的结构