第十周 可编程数字接口电路 | 您所在的位置:网站首页 › 电平灯电路 › 第十周 可编程数字接口电路 |
大家好,又是我,沉迷学习无法自拔的小笨蛋康sir。 这个文集(点我)将会同步更新我观看吴宁老师的《微机原理与接口技术》教学视频写的笔记,学习笔记,大概每周一章。 有问题大家可以在评论下面留言讨论,欢迎纠错! 欢迎收藏阅读,动动小手给个硬币点个赞。 ——@正能量的康sir 也可移步我的博客(https://blog.csdn.net/qq_33956508)会更新一些其它技术类文章。 第十周 可编程数字接口电路 内容提要: 两种可编程并行接口芯片的应用 可编程芯片:可以通过软件命令,控制芯片的工作方式 数据传输方向 输入/输出方式 可编程定时计数器8253 可编程并行接口8255 第51讲 可编程定时计数器8253计数与定时 定时/计算器的工作基准是时钟脉冲
计数脉冲周期恒定——定时 定时的时间长度取决于时钟脉冲的周期及脉冲数 要求定时100秒——计数脉冲数:100 计数初值 由需求和条件决定 8253芯片特点 可编程的逻辑器件; 非通道型的接口,具有特定功能; 可实现计数和定时; 工作方式: 减法计数 计数值减为0时输出相应控制信号 输出控制信号的形式可通过软件设置 ① 外部主要引脚信号功能及内部结构 ② 计数启动方式 ③ 工作方式 ④ 控制命令字格式 ⑤ 应用 1. 外部引线及内部结构 连接系统端的主要引线: D0----D7 #CS #RD #WR A0,A1 连接外设端的主要引线 CLK ----------- 时钟脉冲输入 GATE ---------- 门控信号输入 OUT ------------ 定时输出
内部结构特点 具有三个完全相同的、独立的计数/定时器
控制寄存器存放控制命令字 每个计数器占用1个端口地址 (3个计数器、一个控制寄存器所以占四个端口 A1A0是片内地址) 结构特点 内部3个计数器均为减法计数器 根据计数脉冲的频率及需要定时的时间长度确定计数初值 每个计数器含16位初值寄存器、16位计数寄存器。(相同端口地址。存放计数初值) 控制寄存器 存放控制命令字 外部引线及内部结构 三个可独立工作的16位定时/计数器,一个控制寄存器。共占用4个端口地址。 4个端口的地址编码: A1 A0 0 0 CNT0 0 1 CNT1 1 0 CNT2 1 1 控制寄存器 2. 计数启动方式 启动方式由GATE端信号的形式决定 软件启动——GATE端为高电平 硬件启动——GATE端有一个上升沿 3. 工作方式 方式0 软件启动,不自动重复计数; 计数结束输出高电平。
方式1 硬件启动,不自动重复计数; 计数开始输出低电平,结束后又变高。
① 计数一旦启动,GATE端既使变低也不会影响计数。 ② 可重复触发。当计数到0后,不用再次写入计数初值,只要再次出现GATE上升沿,即可产生一个同样宽度的负脉冲 方式2 软、硬件启动,自动重复计数。 计数到最后一个脉冲时输出低电平
① 可输出频率为(1/N)CLK脉冲频率的连续方波信号。 ② 每1个OUT端脉冲包含(N-1)*CLK的正脉冲,1CLK的负脉冲。 方式3 软、硬件启动,自动重复计数。 输出对称方波
① 若N为偶数,输出频率为(1/N)CLK频率的连续对称方波信号。 ② 若N为奇数,输出波形为 (N+l)/2CLK 周 期 正脉 冲 , (N-1)/2CLK 负脉冲。 方式4 软件启动,不自动重复计数。 计数结束输出一个CLK宽度的低电平
方式5 硬件启动,不自动重复计数 波形与方式4相同
工作方式小结 需要两个写脉冲——两次写操作 第1个写脉冲写入控制字 第2个写脉冲写入计数初值 不同的工作方式,有不同的计数启动方法。 可根据对输出波形的要求,选择不同的工作方式。 能输出连续波形的只有方式2和方式3。 4. 控制字 用于设定各计数器的工作方式
最大16位BCD数:9999 最大16位二进制数:FFFF 8253为减法计数器 最大计数初值:0(1000000000000000) 5. 8253的应用 硬件设计:与系统的连接 软件设计 初始化程序设计 写入控制字 置计数初值 与系统的连接示意
应用中的注意点 每一次启动计数,需有两次写操作: 写控制字 写计数器初值:如果初值为8位字长,则一次写入;若初值为16位字长,则需两次写入 每个计数器的控制命令字均送入控制寄存器 各计数器的计数初值送到该计数器的计数寄存器及初值寄存器 初始化程序流程
当有两个以上计数器被应用时的初始化程序设计流程:
原则:先写入控制字,后写入计数初值 8253应用例: 采用8253作定时/计数器,其接口地址为0120H~0123H。 输入8253的时钟频率为2MH。要求: CNT0每10ms输出一个CLK周期宽的负脉冲 CNT1输出10KHz的连续方波信号 CNT2在定时5ms后产生输出高电平 画线路连接图,并编写初始化程序. 工作的计数器 工作方式 计数初值 启动方式 计数脉冲频率 计算计数初值: CNT0:10ms/0.5us=20000 (可有2MH推出周期0.5us) CNT1:2 MHz/10KHz=200 CNT2: 5ms/0.5us=10000 确定控制字: CNT0:方式2,16位计数值 控制字00110100 CNT1:方式3,低8位计数值 控制字01010110 CNT2:方式0,16位计数值 控制字10110000
初始化程序 CNT0: MOV DX,0123H;控制器的地址 MOV AL,34H;计数器0的控制字 OUT DX,AL MOV DX,0120H;计数器0的位置 MOV AX,20000 OUT DX,AL;写低8位 MOV AL,AH OUT DX,AL;写高8位(OUT的操作数不能直接是AH) CNT1: …… CNT2: …… 8253接口 可编程8bit并行接口(但是内部计数器是16位的)。通过软件初始化控制其工作方式和计数/ 定时时长 实现对外部设备的定时/计数控制。 减法计数器。 第52讲 可编程并行接口8255补充知识:并行通信和串行通信 在通信过程中,如果能够同时传送数据的所有位(位数山机器的字长决定)就称为并行通信;如果数据是逐位顺序传送,则称为串行通信 1. 并行接口8255的特点: 通道型接口 主要用于数据的输入或输出 含3个独立的8位并行输入/输出端口 2个为8位端口(PA,PB); 1个可拆分为两个4位端口(PC口) 各端口均具有数据的控制和锁存能力 既可作为输入端口,也可以作输出端口。 可通过编程,设置各端口工作在某一确定状态下。
2. 结构 A组控制:A端口,C口高4位 B组控制: B端口,C口低4位 针对A、B组的控制字存放在控制寄存器中
3. 引线 连接系统端的主要引线: D0----D7 #CS #RD #WR A0,A1 REAST
连接外设端的引脚: PA0 —— PA7 PB0 —— PB7 PC0 —— PC7 分别对应ABC三个端口 8255与系统的连接示意图
4. 工作方式 基本输入/输出方式(方式0) 选通工作方式(方式1) 双向传送方式(方式2) 方式0: 相当于三个独立的8位简单接口 各端口既可设置为输入口,也可设置为输出口,但不能同时实现输入及输出 C端口可以是一个8位的简单接口,也可以分为两个独立的4位端口 常用于连接简单外设,适于无条件或查询方式 方式0的应用: 习惯上: A端口和B端口作为8位数据的输入或输出口 C口的某些位作为状态输入 注: 若使C端口低4位中某一位作为输入口,则低4位中其他位都应作为输入口。同时可设高4位作为输出。
方式1: 利用一组选通控制信号控制A端口和B端口的数据输入输出 A口、B口作输入或输出口,C口的部分位用作选通控制信号 A口、B口在作为输入和输出时的选通信号不同 方式1下A、B端口作为输出的选通控制信号和输出波形
方式1下A、B端口作为输入的选通控制信号和输出波形
方式1的应用: 方式1主要用于中断控制方式下的输入输出 C口的8位除用作选通信号外,其余位可工作于方式0下,作为输入或输出口。 方式2: 双向输入输出方式。可以既作为输入口,又作为输出口。 只有A端口可工作在方式2下 方式2下A端口的选通控制信号和输出波形
方式2的应用: 可使A端口作为双向端口所有 用于中断控制方式 当A口工作于方式2时: B口可工作于方式1,此时C口的所有位都用作选通控制信号的输入输出 B口也可工作于方式0,此时C口的剩余位也可工作于方式0 4. 方式控制字及位控制字 方式控制字: 用于确定3个端口的工作方式及数据传送方向; 位控制字 仅用于C端口 可设置C口某位的初始状态(为高电平或低电平) 当其工作于方式0下且作为输出口时,一般需要对作为输出的位设置初始状态(即初始化) 8255控制字
5. 8255芯片的应用 芯片与系统的连接 芯片的初始化 相应的控制程序 8255应用例: 8086CPU通过8255实施监控。8255端口地址为1020H-1023H,启动操作由端口B的PB7控制(高电平有效),端口A输入8个监控点的状态(每个引脚接一个监控点),只要其中任一路出现异常情况(高电平),系统就通过与PC0相连的信号灯报警(高电平灯亮),要求信号灯亮灭3次。要求: 设计系统线路图,要求用138译码器设计译码电路; 编写8255初始化程序及启动、测试和报警控制程序 地址范围0001 0000 0010 00XX
控制流程
控制程序 MOV DX,1023H;控制寄存器地址 MOV AL,10010000B;方式控制字 OUT DX,AL MOV AL,0;位控制字 OUT DX,AL MOV DX,1021H MOV AL,80H;PB7输出高电平,启动布防 OUT DX,AL A:MOV DX,1020H;这里的四句是监控程序 IN AL,DX CMP AL,0 JZ A MOV CX,3 MOV DX,1022H;C端口 MOV AL,1;PC0位输出1(高电平) B: OUT DX,AL CALL DELAY NOT AL;按位取反 C0位变换亮灭(高低电平) CALL DELAY LOOP B JMP A 8255应用要求 主要引线功能及结构 3种工作方式及其特点 应用: 芯片与系统的连接 芯片的初始化编程 数据输入/输出控制程序设计 可编程数字接口小结学习要求 了解什么是可编程 可编程定时/计数器8253 启动方式 不同工作方式下的输出波形 初始化编程 与系统的连接 还要注意根据需要选择相应的工作方式 可编程并行数字接口8255 不同工作方式适应场合 与系统的连接 初始化编程 相关控制程序
利用8255和8253构造报警系统 (略) |
CopyRight 2018-2019 实验室设备网 版权所有 |