微机接口定时器 计数器(8255)

合集下载

8255和8253

8255和8253

8255和82531.3.3 8253/8253-5可编程计时器8253是作为Intel公司的微型计算机外围器件⽽设计的⼀种可编程计数器/计时器器件。

它是⽤N沟道MOS⼯艺制成的,只需⼀组⼗5V电源。

该器件包含三个独⽴的16位计数器,每个计数器的计数速率都可达到2MHZ。

所有的⼯作⽅式都是软件可编程的。

主要技术特性·8253-5与MCS-85兼容;·有三个独⽴的⼗六位计数器;·计数频率范围是0~2MHZ;·可编程计数器⽅式;·⼆进制或⼆⼀⼗进制计数;·⼀组⼗5V电源;·24条引脚双列直插式封装。

引脚安排如图1-3-14所⽰。

图1-3-14 8253/8253-5的引脚图图1-3-15 8253/8253-5的内部结构框图内部结构如图1-3-l5所⽰。

功能说明8253的功能是由多个通⽤的定对元件实现的,这些定时元件可被系统软件看作⼀系列I/O⼝。

8253能在软件控制下产⽣⼀系列准确的时间延迟,系统软件⽤不着再建⽴定时循环。

程序员只需适当设置8253,将要求的数值预置⼊8253的⼀个计数器中。

8253将根据命令计算延时,并在完成延时任务时中断CPU。

显然,这样做使软件开销最省,且可通过适当分配优先级的办法很容易地实现多级延迟。

8253还具有计数器/计时器功能。

例如:·可编程频率发⽣器;·事件计数器;·⼆进制倍频器;·实时时钟;·数字单稳;·复杂的电机控制器。

1.数据母线缓冲器这个三态、双向和⼋位的缓冲器⽤于将8253与系统数据总线连接起来。

CPU执⾏输⼊/输出指令时缓冲器就发送或接收数据。

数据总线缓冲器有三个基本功能:·通过编程确定8253的⼯作⽅式;·向计数寄存器装⼊数据;·读出计数值。

2.读/写逻辑读/写逻辑接受来⾃系统总线的输⼊,然后产⽣控制整个器件⼯作的控制信号。

微机原理与接口技术8254 8255 8259倒计时秒表 实验报告

微机原理与接口技术8254 8255 8259倒计时秒表 实验报告

微机原理与接口技术8254 8255 8259倒计时秒表实验报告内蒙古师范大学计算机与信息工程学院《微机原理与接口技术期末实验设计报告》设计题目指导教师姓名学号日期希润高娃倒计时秒表职称讲师一、实验要求设计一个倒计时表,用8255设置灯,用8254记录时间,8259提供中断。

其中MIR7接KK1设置倒计时的总时间,每按一次脉冲,总时间加1,SIR1接KK2确认开始倒计时(DI=0对KK2屏蔽,DI=1对KK2开放),MIR6接8254设置准确的1s倒计间隔时间。

利用8254芯片的计数功能,芯片有5中工作方式,选择方式2和方式3都可以输出连续的波形,故都可以符合实验要求。

8254可以采用二进制计数或是BCD 码计数,如果用二进制计数,最大范围是65535,如果采用BCD码计数,最大范围是99999。

使用2个计数器,可以达到输出周期为1秒的方波。

计数初值=fclki/fouti。

利用8255芯片,设置灯的初始状态。

利用8259芯片的中断功能,当中断来时,启动8254芯片,进入计数状态。

IP=中断向量*4,CS=中断向量*4+2;二、设计2.1 硬件设计2.1.1 按下图的电路图连接电路图1 电路连线2.1.2电路说明该电路是在唐都实验箱上的操作,2片8259芯片是嵌在系统总线下,只有主片的中断序号为6和7 的两个口是对外开放的,从片的中断序号为1的口是对外开放的。

8254芯片计数器0的端口地址为06C0H,计数器1的端口地址为06C2H,计数器2的端口地址为06C4H,计数器3的端口地址为06C6H。

8255芯片PA口的端口地址为0640H,PB口的端口地址为0642H,PC口的端口地址为0644H,控制口的端口地址为0646H。

主8259芯片的偶地址为20H,奇地址为21H。

从8259芯片的偶地址为A0H,奇地址为A1H。

IOY0的编址空间:0600H~063FH IOY1的编址空间:0640H~067FH IOY2的编址空间:0680H~06BFH IOY3的编址空间:06C0H~06FFH2.2 软件设计2.2.1思路利用8254芯片的计数功能,输出周期为1秒的方波。

8255试验报告(方式1查询输出)

8255试验报告(方式1查询输出)

《微型计算机接口技术》实验报告实验名称:可编程并行接口芯片8255应用(8255方式1、查询输出)姓名学号:班级:日期:广东外语外贸大学信息科学技术学院一、实验目的掌握8255方式1查询输入、输出时的使用及编程二、实验内容1、按照图示连接硬件(注意图中大多数线试验箱已经连好,只连接需要用户连接的部分,预习,参考PPT)2、编程:每按一次单脉冲按钮,ACK信号有效,8255内部输出准备好状态有效(INTR),查询输出一次数据,点亮、熄灭相应的发光二极管。

三、实验原理(8255方式1输出:结合结构图、时序图、状态字描述)8255是一片可编程并行I/O接口芯片,每片8255有两个8位的并行口(PA,PB)和两个4位并行口(PC的高、低四位),其中PA口可工作于方式0,1,2。

PB口工作于方式0,1。

PC口仅能工作于方式0。

在方式1中,将8255的三个端口分为了A、B两组,PA、PB两个口仍作为数据输入/输出口,而PC口则作为两部分,分别作为PA、PB口的联络信号。

8255A 方式1 A口输出过程由CPU响应中断开始,在中断中用OUT指令通过8255A 向外设输出数据,发出WR 信号;WR上升沿清除INTRA 中断请求信号,且使OBFA =“L”(有效),通知外设取数;当外设接受数据后,发出ACKA 应答信号,一方面使OBFA=“H”(无效),另一方面在ACKA信号的上升沿使INTRA=“H”(有效),以此向CPU发出新的中断请求,开始下一轮输出。

四、硬件设计及方案论证(完整图的信号线连接及作用:数据、地址、控制及外设线)硬件设计如图,其中:1.8255芯片中的数据总线D0—D7是和CPU的数据线直接相连的,从而CPU可以向8255发送命令、数据和8255芯片也可以向CPU发送状态、数据等等。

2.8255芯片中的A0和A1也是与CPU的地址总线直接相连,并且在控制字在以下几种情况有不同的设置,若A1A0= 00时,8255芯片中的PA口被选中,若A1A0=01时,8255芯片中的PB口被选中,若A1A0=10时,8255芯片中的PC口被选中,若A1A0=11时,则8255芯片的控制口被选中。

微机原理8255的应用

微机原理8255的应用

微机原理8255的应用1. 简介本文档将介绍微机原理中的8255芯片的应用及其相关知识。

8255是一款常用的并行输入输出(PIO)芯片,广泛应用于微机原理的实验和应用中。

本文将从以下几个方面进行介绍:1.8255芯片的功能及特点2.8255芯片的引脚功能3.8255芯片的工作原理4.8255芯片的应用案例2. 8255芯片的功能及特点8255芯片是一种通用的并行输入输出接口芯片,可以提供多种不同的I/O操作模式。

其主要功能如下:•提供三个8位的I/O端口A、B和C,可以通过编程定义其为输入或输出端口。

•支持模式0、模式1和模式2三种工作模式,可以通过编程控制选择不同的模式。

•可以通过编程设置端口的工作模式和数据传输方式。

•可以通过编程控制和操作I/O端口的数据。

8255芯片的主要特点如下:•低功耗设计,适合在嵌入式系统中使用。

•高可靠性和稳定性,能够在不同环境下正常工作。

•兼容性强,可以与多种微处理器和控制器连接使用。

3. 8255芯片的引脚功能8255芯片共有40个引脚,每个引脚的功能如下:•一号引脚(VCC):芯片的供电电源。

•二号引脚(GND):芯片的接地引脚。

•三号引脚(A0)至四号引脚(A1):用于编程选择工作模式。

•五号引脚(CS):芯片的片选引脚,通过将其接地来选择芯片。

•六号引脚(RD):读取端口数据的引脚。

•七号引脚(WR):写入端口数据的引脚。

•八号引脚(RESET):芯片的复位引脚。

•九号引脚至十六号引脚(PA0至PA7):端口A的数据线。

•十七号引脚至二十四引脚(PB0至PB7):端口B的数据线。

•二十五号引脚至三十二号引脚(PC0至PC7):端口C的数据线。

4. 8255芯片的工作原理8255芯片是通过控制寄存器对其进行编程来实现不同功能的。

通过编程控制控制寄存器的值,可以选择端口的工作模式、数据传输方式等。

8255芯片的工作原理如下:1.初始化8255芯片,设置控制寄存器的值。

8253--8255芯片

8253--8255芯片

8253芯片基本概述8253内部有三个计数器,分别成为计数器0、计数器1和计数器2,他们的机构完全相同。

每个计数器的输入和输出都决定于设置在控制寄存器中的控制字,互相之间工作完全独立。

每个计数器通过三个引脚和外部联系,一个为时钟输入端CLK,一个为门控信号输入端GATE,另一个为输出端OUT。

每个计数器内部有一个8位的控制寄存器,还有一个16位的计数初值寄存器CR、一个计数执行部件CE和一个输出锁存器OL。

执行部件实际上是一个16位的减法计数器,它的起始值就是初值寄存器的值,而初始值寄存器的值是通过程序设置的。

输出锁存器的值是通过程序设置的。

输出锁存器OL用来锁存计数执行部件CE的内容,从而使CPU 可以对此进行读操作。

顺便提一下,CR、CE和OL都是16位寄存器,但是也可以作8位寄存器来用。

工作原理8253具有3个独立的计数通道,采用减1计数方式。

在门控信号有效时,每输入1个计数脉冲,通道作1次计数操作。

当计数脉冲是已知周期的时钟信号时,计数就成为定时。

一、8253内部结构8253芯片有24条引脚,封装在双列直插式陶瓷管壳内。

1.数据总线缓冲器数据总线缓冲器与系统总线连接,8位双向,与CPU交换信息的通道。

这是8253与CPU之间的数据接口,它由8位双向三态缓冲存储器构成,是CPU与8253之间交换信息的必经之路。

2.读/写控制读/写控制分别连接系统的IOR#和IOW#,由CPU控制着访问8253的内部通道。

接收CPU送入的读/写控制信号,并完成对芯片内部各功能部件的控制功能,因此,它实际上是8253芯片内部的控制器。

A1A0:端口选择信号,由CPU输入。

8253内部有3个独立的通道和一个控制字寄存器,它们构成8253芯片的4个端口,CPU可对3个通道进行读/写操作3对控制字寄存器进行写操作。

这4个端口地址由最低2位地址码A1A0来选择。

如表9.3.1所示。

3.通道选择(1) CS#——片选信号,由CPU输入,低电平有效,通常由端口地址的高位地址译码形成。

微型计算机及接口技术8255举例

微型计算机及接口技术8255举例
若是,无键按下, 若是,无键按下,转b; 如果不全为1 表明有键按下,执行下步; 如果不全为1,表明有键按下,执行下步;
key _ num = 4i + j
d、 、 e、 、 f、 、 g、 、 h、 、 i、 、
延时10ms,消除抖动。 延时 ,消除抖动。 逐列检测,找出为0的列信号 的列信号j; 逐列检测,找出为 的列信号 ; 设定列为输出,行为输入; 设定列为输出,行为输入; 列输出为0,输入行信号; 列输出为 ,输入行信号; 逐行检测,找出为0的行信号 的行信号i; 逐行检测,找出为 的行信号 ; 计算键号key_num 计算键号
8253应用举例 应用举例
例1:现有一个高精密晶体振荡电路, 现有一个高精密晶体振荡电路, 输出信号是脉冲波,频率为1MHz 1MHz。 输出信号是脉冲波,频率为1MHz。要求 利用8253做一个秒信号发生器, 8253做一个秒信号发生器 利用8253做一个秒信号发生器,其输出 接一发光二极管, 0.5秒点亮 0.5秒 秒点亮, 接一发光二极管,以0.5秒点亮,0.5秒 熄灭的方式闪烁指示。 8253的通道地 熄灭的方式闪烁指示。设8253的通道地 址为80H 86H(偶地址) 80H~ 址为80H~86H(偶地址)
8255
PC0
8253 OUT0 CLK0 GATE0 1KHz +5V
2、时间常数计算 如果8253 CLK输入1KHz信号, 如果8253的CLK输入1KHz信号,延时 8253的 输入1KHz信号 时间为1S 1S, 时间为1S,则时间常数为 N=1/0.001=1000D=03E8H 3、工作方式选择 4、程序
;通道1控制字 通道1 ;通道1初始计数值,03E8H=1000BCD 通道1初始计数值,03E H=1000BCD

8255实验-微机原理与接口技术

8255实验-微机原理与接口技术

实验线路连接
(1) 8255A芯片PC0~ PC7插孔依次接K1~ K8。
(2) 8255A芯片PB0~PB7插孔依次接L1 ~ L8。
(3) 8255A的CS插孔CS-8255接译码输出Y7插
孔。
要求: ① 读懂系统程序中有关 8255A 的部分。
包括:端口地址、初始化编程、 二极管发光情况与开关状态间的对应关系
并使其根据开关 K1~ K8 的状态发光。 · 以 K8 作为总开关,
若 K8打开(0),则 L1~ L8同时熄灭; 若 K8闭和(1),则 L1~ L7由K1~ K7控 制。
IOCONPT EQU 0073H IOCPT EQU 0072H IOBPT EQU 0071H IOAPT EQU 0070H
② 执行程序,并进行观察,记录。 PC 口 8 位接 8 个开关 K1~ K8 , PB 口 8 位接 8 个 LED 发光二极管 L1~ L8 , 并使其根据开关 K1~ K8 的状态发光。
③ 改变电路接法并修改程序,要求实现:
· PA 口 8 位接 8 个开关 K1~ K8 ,
PB 口 8 位接 8 个发光二极管 L1~ L8
IOLED: CALL FORMAT CALL LEDDISP
MOV AL,90H B口输出
;10010000 写方式控制字 方式0 A口输入
MOV DX,IOCONPT
OUT P
IOLED1: MOV DX,IOAPT
IN AL,DX
MOV DX,IOBPT
OUT DX,AL
并行接口 8255 的应用
1、实验目的 掌握8255A和微机接口方法。 掌握8255A的工作方式和编程原理。
2、实验内容

8255电子钟课程设计

8255电子钟课程设计

8255电子钟课程设计一、课程目标知识目标:1. 理解8255可编程定时器/计数器的工作原理,掌握其在电子时钟设计中的应用。

2. 学会使用8255芯片与微控制器(如8051)的接口技术,并能正确编程控制电子钟的时、分、秒显示。

3. 掌握电子时钟的时间计数与显示的基础算法,能够运用所学知识设计简单的电子时钟程序。

技能目标:1. 培养学生动手能力,通过搭建8255电子时钟电路,提高学生的电路连接与调试技巧。

2. 培养学生编程能力,让学生能够独立编写8255控制电子时钟的程序代码,并实现功能。

3. 培养学生问题解决能力,面对电子时钟设计中的问题,能够进行故障排查和程序优化。

情感态度价值观目标:1. 培养学生对电子技术和编程的兴趣,激发学生的学习热情和创新精神。

2. 培养学生团队协作精神,通过小组合作完成课程设计,增强集体荣誉感和责任感。

3. 培养学生科学严谨的态度,在设计过程中注重细节,遵循操作规程,确保安全与可靠性。

本课程针对高年级电子信息技术或计算机科学与技术相关专业学生,结合教材内容,注重理论联系实际,旨在提高学生电子电路设计、编程及实际应用能力。

课程目标明确、具体,可衡量,为后续教学设计和评估提供依据。

二、教学内容本课程教学内容紧密围绕课程目标,结合教材以下章节:1. 8255可编程定时器/计数器原理与功能- 8255芯片内部结构- 工作模式及时序分析- 接口技术及其在微控制器中的应用2. 电子时钟基础知识- 电子时钟原理概述- 时、分、秒计数与显示方法- 电子时钟程序设计基础3. 8255电子时钟设计与实现- 电路设计与搭建- 程序编写与调试- 故障排查与优化教学内容安排与进度:第一周:8255可编程定时器/计数器原理学习,接口技术了解。

第二周:电子时钟基础知识学习,程序设计基础掌握。

第三周:分组讨论,确定电子时钟设计方案,开始电路搭建与程序编写。

第四周:电路调试,程序优化,完成8255电子时钟设计。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告
课程名称 : 微机接口与原理
实验项目 : 可编程计数器\定时器8253 实验仪器 : 计算机
系别:光电学院
专业:电子信息工程
班级/学号:
学生姓名:
实验日期:2012年月
成绩: ________________ _
指导教师:__________________
●实验目的
掌握定时器/计数器8253的基本原理和编程方法,用示波器观察不同方式下的波形。

实验仪器
计算机,实验工作箱,电源,导线。

实验环境
北京信息科技大学健翔桥校区教三307实验室
●实验内容
1、按下图虚线连接电路,将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

2、按下图连接电路,将计数器0、计数器1分别设置为方式3,计数初值设为1000,用逻辑笔观察OUT1输出电平的变化(频率1HZ)。

●编程提示
8253控制寄存器地址283H
计数器0地址280H
计数器1地址281H
程序代码
code segment
assume cs:code
start: mov al,16h ;设置8253通道0为工作方式2,二进制计数mov dx,io8253a
out dx,al
mov dx,io8253b ;送计数初值为0FH
mov al,04h
out dx,al
lll: in al,dx ;读计数初值
call disp ;调显示子程序
push dx
mov ah,06h
mov dl,0ffh
int 21h
pop dx
jz lll
mov ah,4ch ;退出
int 21h
disp proc near ;显示子程序
push dx
and al,0fh ;首先取低四位
mov dl,al
cmp dl,9 ;判断是否<=9
jle num ;若是则为'0'-'9',ASCII码加30H
add dl,7 ;否则为'A'-'F',ASCII码加37H
num: add dl,30h
mov ah,02h ;显示
int 21h
mov dl,0dh ;加回车符
int 21h
mov dl,0ah ;加换行符
int 21h
pop dx
ret ;子程序返回
disp endp
code ends
end start
实验心得体会:
请自行孑孓!。

相关文档
最新文档