班级  软件工程16-1  学号  3162052051116  姓名  张识虔  同组实验者              

实验名称             定时/计数器应用实验                     日期 2018 11 11

一、实验目的:

1. 掌握8254的工作方式及应用编程。

 2. 掌握8254典型应用电路的接法。

二、实验环境:

PC机一台,TD-PITD实验装置一套,示波器一台。

三、实验内容:

  1. 计数应用实验。编写程序,应用8254的计数功能,使用单次脉冲模拟计数, 使每当按动‘KK1+5次后,产生一次计数中断,并在屏幕上显示一个字符‘5’。

 2. 定时应用实验。编程程序,应用8254的定时功能,产生一个1Hz的方波。

3.3.4 实验原理

8254Intel公司生产的可编程间隔定时器。是8253的改进型,比8253具有更 有优良性能。8254具有以下基本功能。

1 3个独立的16位计数器。

 2 每个计数器可按二进制或十进制(BCD)计数。

3 每个计数器可编程工作于6种不同的工作方式。

4 8254每个计数器允许的最高计数频率为10MHz82532MHz)。

 5 8254有读回命令(8253没有),除了可以读出当前计数单元的内容外, 还可以读出寄存器的内容。

6 计数脉冲可以是有规律的时钟信号,也可以是随机信号。计数初值公 :n=fCLKi/fOUTi、其中fCLKi是输入时钟脉冲的频率,fOUTi是输出波形的频率。

 8254 实验单元电路图如图 3-3-1 所示,8254 的内部结构框图和引脚图如图 3-3-2 所示,它是由与 CPU 的接口、内部控制电路和三个计数器组成。8254 工作方式如下述:

1 方式0:计数到0结束输出正跃变信号方式。

 2 方式1:硬件可重触发单稳方式。

 3 方式2:频率发生器方式。

4 方式3:方波发生器。

5 方式4:软件触发选通方式。

6 方式5:硬件触发选通方式。

 

3-3-1  8254 实验电路原理图

3-3-2  8254 的内部接口和引脚

8254 的控制字有两个:一个用来设置计数器的工作方式,称为方式控制字; 另一个用来设置读回命令,称为读回控制字。这两个控制字共用一个地址,由标 识位来区分。控制字格式如表 3-3-13-3-23-3-3 所示。

3-3-1  8254 的方式控制字格式

3-3-2  8254 读出控制字格式

3-3-3  8254 状态字格式

3.3.5 实验步骤

1. 计数应用实验

编写程序,将 8254 的计数器 0 设置为方式 3,计数值为十进制数 4,用单次 脉冲 KK1+作为 CLK0 时钟,OUT0 连接 INTR,每当 KK1+按动 5 次后产生中 断请求,在屏幕上显示字符“5”。实验步骤如下:

1 实验接线图如图 3-3-3 所示,按图连接实验线路图。

2 根据实验内容,编写实验程序,编译、链接。

3 运行程序,按动 KK1+产生单次脉冲,观察实验现象。

4 改变计数值,验证 8254 的计数功能。

 

3-3-3  8254 计数应用实验接线图

;T8254-1.asm;查看端口资源分配情况,记录实验系统I/O端口始地址INTR_IVADD     EQU   003CH        ;INTR对应的中断矢量地址IOY0           EQU   0C000H        ;片选IOY0对应的端口始地址MY8254_COUNT0  EQU   IOY0+00H*2   ;8254计数器0端口地址MY8254_COUNT1  EQU   IOY0+01H*2   ;8254计数器1端口地址MY8254_COUNT2  EQU   IOY0+02H*2   ;8254计数器2端口地址MY8254_MODE    EQU   IOY0+03H*2   ;8254控制寄存器端口地址STACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSDATA SEGMENTCS_BAK   DW  ?                    ;保存INTR原中断处理程序入口段地址的变量IP_BAK   DW  ?                    ;保存INTR原中断处理程序入口偏移地址的变量IM_BAK   DB  ?                    ;保存INTR原中断屏蔽字的变量STR1     DB  'COUNT: $'           ;显示的字符串DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXCLIMOV AX,0000H               ;替换INTR的中断矢量MOV ES,AXMOV DI,INTR_IVADD         MOV AX,ES:[DI]MOV IP_BAK,AX              ;保存INTR原中断处理程序入口偏移地址MOV AX,OFFSET MYISRMOV ES:[DI],AX             ;设置当前中断处理程序入口偏移地址ADD DI,2MOV AX,ES:[DI]MOV CS_BAK,AX              ;保存INTR原中断处理程序入口段地址MOV AX,SEG MYISRMOV ES:[DI],AX             ;设置当前中断处理程序入口段地址IN  AL,21HMOV IM_BAK,AL              ;保存INTR原中断屏蔽字AND AL,7FHOUT 21H,ALSTIMOV DX,OFFSET STR1         ;显示字符串MOV AH,9INT 21HMOV DX,MY8254_MODE         ;初始化8254工作方式MOV AL,10H                 ;计数器0,方式0 OUT DX,AL            MOV DX,MY8254_COUNT0       ;装入计数初值MOV AL,4OUT DX,ALWAIT1: MOV AH,1                   ;判断是否有按键按下INT 16HJZ  WAIT1                  ;无按键则跳回继续等待,有则退出QUIT:  CLIMOV AX,0000H               ;恢复INTR原中断矢量MOV ES,AXMOV DI,INTR_IVADD MOV AX,IP_BAK              ;恢复INTR原中断处理程序入口偏移地址MOV ES:[DI],AXADD DI,2MOV AX,CS_BAK              ;恢复INTR原中断处理程序入口段地址MOV ES:[DI],AXMOV AL,IM_BAK              ;恢复INTR原中断屏蔽寄存器的屏蔽字OUT 21H,ALSTIMOV AX,4C00H               ;返回到DOSINT 21HMYISR PROC NEAR                   ;中断处理程序MYISRPUSH AXMOV AL,35HMOV AH,0EHINT 10HMOV AL,20HINT 10HMOV DX,MY8254_COUNT0       ;重装计数初值MOV AL,4OUT DX,ALOVER:  MOV AL,20H                 ;向PC机内部8259发送中断结束命令OUT 20H,ALPOP AXIRETMYISR ENDPCODE ENDSEND START

2. 定时应用实验 编写程序,将8254的计数器2设置为方式3,用信号源1.8432MHz作为CLK1 时钟,计数初值为 100,相对于 CLK1 进行 100 分频。在 OUT1 输出频率为 18.432MHz 的时钟。将 OUT1 连接到计数器 0 CLK0,设置计数器 0 工作在方 3,计数初值为 18432,相当是进行 18432 分频。则在 OUT0 得到 1Hz 的输出。

 1 实验接线图如图 3-3-4 所示,按图连接实验线路图。

2 根据实验内容,编写实验程序,编译、链接。

3 运行实验程序,8254 OUT1 会输出 1s 的方波,用示波器观察 OUT0 输出的波形。

 

3-3-4  8254 定时应用实验接线图

;T8254-2.asm

;8254定时应用实验  输出1Hz;查看端口资源分配情况,记录实验系统I/O端口始地址;****************根据查看端口资源修改下列符号值*******************IOY0           EQU   0C000H         ;片选IOY0对应的端口始地址;*****************************************************************MY8254_COUNT0  EQU   IOY0+00H*2   ;8254计数器0端口地址MY8254_COUNT1  EQU   IOY0+01H*2   ;8254计数器1端口地址MY8254_COUNT2  EQU   IOY0+02H*2   ;8254计数器2端口地址MY8254_MODE    EQU   IOY0+03H*2   ;8254控制寄存器端口地址STACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSCODE SEGMENTASSUME CS:CODESTART: MOV DX,MY8254_MODE         ;初始化8254工作方式MOV AL,76H                 ;计数器1,方式3OUT DX,ALMOV DX,MY8254_COUNT1       ;装入计数初值MOV AL,64H                 ;100分频OUT DX,ALMOV AL,00HOUT DX,ALMOV DX,MY8254_MODE         ;初始化8254工作方式MOV AL,36H                 ;计数器0,方式3OUT DX,ALMOV DX,MY8254_COUNT0       ;装入计数初值MOV AL,00H                 ;18432分频OUT DX,ALMOV AL,48HOUT DX,ALQUIT:  MOV AX,4C00H               ;结束程序退出INT 21HCODE ENDSEND START

四、心得体会:

 计数应用实验  很多TD-PITD实验装置都存在问题  代码都是完全正确的  但是就是无法实现  当按动‘KK1+5次后,产生一次计数中断,并在屏幕上显示一个字符‘5    只有开关电源的时候 屏幕上才会出现很多个5   而且个数不一定 都说随机的   后来来了个女老师 解释了一下 8254 芯片的缘故 老化了  当按了5 屏幕上还不能及时出现5 这个数字 会有延迟 延迟时间也说不定 只有开关机后才可能看到

定时应用实验 因为实验室没有示波器  我们只能连接 开关及LED显示单元 如果D0灯能够正常闪烁  就说明实验成功  一闪一灭表示 高低电平

微机实验报告7 定时/计数器应用实验相关推荐

  1. 实验七:定时/计数器8253、8254

    目录 例 实验目的 实验内容 报告要求 例 已知8253的两个计数器CLK0=1MHZ,CLK1=1KHZ,现系统要求8253的OUT1产生0.1s的定时方波信号. (1):应如何实现? (2):说明 ...

  2. 8255交通灯实验的微型计算机,微机原理实验四实验报告8255控制交通灯实验

    <微机原理实验四实验报告8255控制交通灯实验>由会员分享,可在线阅读,更多相关<微机原理实验四实验报告8255控制交通灯实验(4页珍藏版)>请在人人文库网上搜索. 1.实验四 ...

  3. 计算机组装与维护预实验报告,计算机组装与维护实验报告.doc

    计算机组装与维护实验报告计算机组装与维护实验报告 江西公安专科学校 实 验 报 告 课程名称 年级专业 学 号 姓 名 \ 实 验 报 告 说 明 1.实验项目名称:要用最简练的语言反映实验的内容.要 ...

  4. 【实验报告】四恶意代码实验

    学   号201421420040   中国人民公安大学 Chinese people' public security university 网络对抗技术 实验报告   实验四 恶意代码技术     ...

  5. 南昌大学计算机控制,南昌大学计算机控制实验报告数/模转换实验..doc

    南昌大学计算机控制实验报告数/模转换实验. 南昌大学实验报告 学生姓名: 学号: 专业班级: 实验类型:■验证 □ 综合 □ 设计 □ 创新 实验日期: 实验成绩: 实验一 数/模转换实验 一.实验要 ...

  6. 液位单闭环实验计算机控制,过程控制实验报告3(液位单闭环实验)

    <过程控制实验报告3(液位单闭环实验)>由会员分享,可在线阅读,更多相关<过程控制实验报告3(液位单闭环实验)(2页珍藏版)>请在人人文库网上搜索. 1.班级:082班 座号: ...

  7. C语言实验报告册-20163a,c语言实验报告册-20163a.doc

    c语言实验报告册-20163a.doc 学生实验报告册(理工类)课程名称:C语言程序设计实验专业班级:15自动化2班学生学号:1517011063学生姓名:王启涛所属院部:智能科学与控制工程学院指导教 ...

  8. c语言三元组稀疏矩阵的转置实验报告,稀疏矩阵快速转置 数据结构实验报告

    南昌航空大学实验报告 课程名称: 数据结构 实验名称: 实验五 稀疏矩阵的存储和快速转置 班 级: 学生姓名: 学号: 指导教师评定: 签 名: 题目:假设稀疏矩阵A采用三元组表表示,编写程序实现该矩 ...

  9. 类c语言实验报告,内蒙古工业大学 C语言实验报告

    <内蒙古工业大学 C语言实验报告>由会员分享,可在线阅读,更多相关<内蒙古工业大学 C语言实验报告(10页珍藏版)>请在人人文库网上搜索. 1.内蒙古工业大学信息工程学院内蒙古 ...

  10. 华中农业大学C语言实验5答案,物理实验报告册(上册)-华中农业大学实验.pdf

    物理实验报告册(上册)-华中农业大学实验 物理实验报告册 (上册) 专业班级__________________________ 学 号__________________________ 姓 名__ ...

最新文章

  1. python中的object是什么意思_Python object类中的特殊方法代码讲解
  2. SAP SD微观研究之销售订单类型配置里有关PO的几个字段
  3. 解决:XCODE 4.2 无法连接SVN,提示:Unable to load revisions
  4. 我是如何拿到蚂蚁金服 offer ?
  5. 解密PreAngel区块链布局:平台协议类项目占4成,多个项目蓄势待发
  6. gilab无法解析php文件,gitlab重新设置域名后就无法访问了。
  7. mysql8.0.12url_使用最新版本MySQL8.0.12报错记录
  8. sublime Text 3实用功能和常用快捷键收集
  9. c语言程序基本设计,C语言程序的设计基本6.ppt
  10. mrc20温控f1什么意思_精确率、召回率、F1 值、ROC、AUC 各自的优缺点是什么?
  11. (5)数据分析-T检验
  12. python 大智慧365 数据格式_大智慧365导入exp 大智慧自定义数据。
  13. linux下ab压力测试工具
  14. 神经元模型图手工制作,神经元模型图手工模型
  15. 访问SQLServer(3)-springboot自定义DBUtil(从druid连接池获取连接)操作SQLServer数据库
  16. Vimium插件使用方法(其实就是盗了一张图)
  17. 服务器存在缓慢的HTTP拒绝服务攻击
  18. 该怎么图片转文字?怎么高效提取图片文字呢?
  19. Apache Spark 3.0 结构化Streaming流编程指南
  20. 华为od统一考试B卷【用连续自然数之和来表达整数】C++ 实现

热门文章

  1. 操作系统实验报告一 进程调度
  2. VS2017+OpenCV4.1.0(VC15)、VS2015+OpenCV3.4.1(VC14) 配置
  3. Google搜索从入门到精通 v4.0
  4. 斐讯k1潘多拉专版固件_斐讯路由器刷潘多拉固件+宽带并发多拨号视频教程+工具下载(K1K2)...
  5. 三电系统集成技术杂谈
  6. java实例化的4种方式
  7. 清华linux网络编程视频,清华大学视频课件:基于Linux的C++(自主模式)
  8. 产品配件类目税目分类_2018商品和服务税收分类编码表
  9. NZ源码交易平台虚拟交易系统(商家版) 高仿淘码网模板
  10. java使用IO打印流输出到文件