微机原理——并行接口8255学习1

目录

并行接口特点

可编程并行接口芯片8255

8255端口地址

8255的三种工作方式

8255的两种命令(方式命令和C端口命令)

由用户扩展的并行接口8255的应用

声光报警器接口设计

步进电机控制接口设计

[PA端口实现跑马灯 PB端口实现按键输入](#PA端口实现跑马灯 PB端口实现按键输入)

并行接口特点

1 数据线:单字节双字节 四字节 八字节的宽度,传输很快。

2 除数据线外,可设置握手联络信号,易于实现异步互锁协议,提高传输可靠性。

3 数据格式,数据宽度和工作时序由外设来决定,因此很自由。

4 一般不做差错检验和传输速率控制。

5 用于近距离传输。

6 并行接口使用很广泛。

可编程并行接口芯片8255

功能强,可靠性高,通用性好,使用灵活。

8255端口地址

|------|------|------|------|---------|
| | PA端口 | PB端口 | PC端口 | 命令与状态端口 |
| 系统分配 | 60H | 61H | 62H | 63H |
| 用户扩展 | 300H | 301H | 302H | 303H |

8255的三种工作方式

8255的两种命令(方式命令和C端口命令)

方式命令:初始化命令。

cs 复制代码
MOV DX, 303H;  8255命令口地址
MOV AL, 0B1H;  初始化命令  1011 0001
OUT DX, AL  ;  送到命令口

C端口按位置位/复位命令 :按位控制命令,初始化后才能使用,指定8255的C端口8个引脚中任意一个引脚,输出高电平或低电平。

cs 复制代码
例:把C端口的PC2设成高电平输出
0000 0101    05H

MOV DX, 303H; 8255的命令口地址
MOV AL, 05H ; 使PC2=1的命令字
OUT DX, AL  ; 送到命令口

使PC2引脚输出低电平:
0000 0100    04H

MOV DX, 303H; 8255的命令口地址
MOV AL, 04H ; 使PC2=0的命令字
OUT DX, AL  ; 送到命令口

利用C端口的按位控制特性还可以产生正负脉冲或方波输出,对IO设备进行控制。

cs 复制代码
例如,用8255的PC7产生负脉冲,作打印机接口电路的数据选通信号:

MOV DX, 303H;
MOV AL, 00001110B; 置PC7=0
OUT DX, AL
NOP
NOP
MOV AL, 00001111B; 置PC7=1
OUT DX, AL

利用8255的PC6产生方波,送到喇叭,使其产生不同频率的声音。

cs 复制代码
OUT_SPK PROC
   MOV DX, 303H;
   MOV AL, 00001101B; 置PC6=1
   OUT DX, AL
   CALL DELAY1;
   MOV AL, 00001100B; 置PC6=0
   OUT DX, AL
   CALL DELAY1;
   RET
OUT_SPK ENDP

由用户扩展的并行接口8255的应用

声光报警器接口设计

步进电机控制接口设计

=================================================================

PA端口实现跑马灯 PB端口实现按键输入

相关推荐
月初,21 分钟前
MongoDB学习和应用(高效的非关系型数据库)
学习·mongodb·nosql
量子-Alex26 分钟前
【反无人机检测】C2FDrone:基于视觉Transformer网络的无人机间由粗到细检测
网络·transformer·无人机
casual_clover1 小时前
Android 之 kotlin 语言学习笔记四(Android KTX)
android·学习·kotlin
Love__Tay1 小时前
【学习笔记】Python金融基础
开发语言·笔记·python·学习·金融
Jeremy_Lee1232 小时前
grafana 批量视图备份及恢复(含数据源)
前端·网络·grafana
洛神灬殇2 小时前
【LLM大模型技术专题】「入门到精通系列教程」基于ai-openai-spring-boot-starter集成开发实战指南
网络·数据库·微服务·云原生·架构
我的golang之路果然有问题2 小时前
云服务器部署Gin+gorm 项目 demo
运维·服务器·后端·学习·golang·gin
上海云盾第一敬业销售2 小时前
高防IP可以防护什么攻击类型?企业网络安全的第一道防线
网络·tcp/ip·web安全
christine-rr3 小时前
征文投稿:如何写一份实用的技术文档?——以软件配置为例
运维·前端·网络·数据库·软件构建
Lester_11013 小时前
嵌入式学习笔记 - freeRTOS xTaskResumeAll( )函数解析
笔记·stm32·单片机·学习·freertos