版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验六8253/4定时器/计数器应用实验 6.1实验目的 (1) 掌握8254的工作方式及应用编程(参考教材) (2) 掌握8254的典型应用电路的接法 (3) 学习8254在PC系统中的典型应用方法 6.2 实验设备 PC机一台,TD-PIT-B实验装置一套。 6.3实验内容及说明 1 )计数应用实验。2)定时应用实验。3)电子发声实验 注意:在断电情况,连接好实验线路,检查无误后,通电进行实验。实验完毕,先断电,再 拆线,并将导线整理好。 1. 计数应用实验: 编写程序,将8254的计数器0设置为方式3,计数值为十进制5,用微动开关KK1-作为 CLK0时钟,OUT0连接IRQ,每当KK1
2、-按动5次后产生中断请求,在屏幕上显示字符“ M。 8254计数应用参考连接线图如图 6-1 o 精品 总 线 接 口 XD7 XD6 XD5 XD4 . XD3 XD2 XD1 XD0 XA1 - XA0 - D7 D6 D5 GATEO D4 D3CLKO XIOW XIOR IOY2 ;计数应用实验 ;filename : 8254-1.asm D2 D1 DO A1 AO /WR /RD /CS 8254 outo UNIT 图6-1 8254计数应用实验参考接线图 ;-PCI卡分配的第3个I/O空间 MY8254_COUNT0 EQU 0E440H MY8254_COUNT1 EQU
3、 0E441H MY8254_COUNT2 EQU 0E442H MY8254_MODE EQU 0E443H +5V KK1- IRQ INTCSR_BYTE3 EQU 0DC3BH IMB4_BYTE3 EQU 0DC1FH DATA SEGMENT CSBAK DW ? IPBAK DW ? MKBAK DB ? DATA ENDS ;-PCI 卡分配的第1个I/O空间 INTCSR_BYTEO EQU 0DC38H INTCSR_BYTE1 EQU 0DC39H INTCSR BYTE2 EQU 0DC3AH CODE SEGMENT ASSUME CS:CODE,DS:DATA MO
4、V DI, 01C4H ;irq 9 , INT 71h, 01c4= 71h*4 STI MOV DX,MY8254_MODE ;CLK=KK1- / 实际接线 kk1- MOV AL,17H ;00 01,011 1b :计数器0,读/写低8位;方 式3,十进制数 OUT DX,AL MOV DX,MY8254_COUNT0 MOV AL,5 ;写入计数初值3个高电平,2个低电平 OUT DX,AL A1: NOP CALL BREAK JMP A1 START: CLI MOV AX,DATA MOV DS,AX MOV DX,INTCSR_BYTEO ; 设置pci卡 MOV AL,0
5、0H OUT DX,AL MOV DX,INTCSR_BYTE1 MOV AL,1FH OUT DX,AL MOV DX,INTCSR_BYTE2 MOV AL,3FH OUT DX,AL MOV DX,INTCSR_BYTE3 MOV AL,00H OUT DX,AL MOV AX,0000H MOV ES,AX MOV AX,ES:DI MOV IPBAK,AX ;IP MOV AX,OFFSET MYINT CLD STOSW MOV AX,ES:DI ;CS MOV CSBAK,AX MOV AX,SEG MYINT STOSW IN AL,0A1H MOV MKBAK,AL AND
6、AL,0fdh; irq9 OUT 0A1H,AL MYINT: PUSH DS PUSH AX PUSH DX MOV DX,IMB4_BYTE3 ;清PCI卡中断标志 IN AL,DX MOV DX,INTCSR_BYTE2 MOV AL,3FH OUT DX,AL MOV AL,61H ;irq9 从片D1,主片D2 OUT 0A0H,AL MOV AL,62H OUT 20H,AL MOV AX,0E4DH ;显示字母M加一空格 INT 10H MOV AX,0E20H INT 10H POP DX POP AX POP DS IRET BREAK PROC NEAR PUSH DS
7、MOV AH,06H MOV DL,0FFH INT 21H JE RETURN POP DS CLI MOV AL,MKBAK OUT 0A1H,AL MOV AX,0000H MOV ES,AX ;irq 9 INT 71H,01C4H=71H*4 MOV AX,IPBAK CLD STOSW MOV AX,CSBAK STOSW MOV DX,INTCSR_BYTE1 ;pci 卡设置 MOV AL,00H OUT DX,AL STI MOV AX,4C00H INT 21H RETURN:POP DS RET BREAK ENDP CODE ENDS END START MOV DI,
8、01C4H 2. 定时应用实验 编写程序,将8254的计数器0设置为方式2,用信号源10kHz作为CLK0时钟,计数值为十 进制0(即最大计数值10000),OUT0连接IRQ,这样每计时1s后产生中断请求,制作一个秒表 显示,每计时60秒自动归零。8254定时应用实验参考连线图: XD 总线接口 XD D7 D6 D5 GATEO D4 D3CLKO D2 D1 DO 8254 outo UNIT +5V 10KHZ (接信号源) IRQ XA1 - XAO 一 - XIOW XIOR IOY2 A1 AO /WR /RD /CS 图6-2 8254定时应用实验参考接线图 ;8254定时应用
9、实验 ;file name : 8254-2.asm ;PCI卡分配的第3个I/O空间 MY8254_COUNT0 EQU 0E440H MY8254_COUNT1 EQU 0E441H MY8254_COUNT2 EQU 0E442H MY8254_MODE EQU 0E443H ;PCI卡分配的第1个I/O空间 INTCSR_BYTE0 INTCSR_BYTE1 INTCSR_BYTE2 INTCSR_BYTE3 EQU 0DC38H EQU 0DC39H EQU 0DC3AH EQU 0DC3BH IMB4 BYTE3 EQU 0DC1FH DATA SEGMENT CSBAK DW ?
10、 IPBAK DW ? MKBAK DB ? SEC1 DB 30H SECO DB 31H ; DATA ENDS 显示秒的个位 显示秒的十位 CODE SEGMENT ASSUME CS:CODE,DS:DATA START: CLI MOV AX,DATA MOV DS,AX MOV DX,INTCSR_BYTEO MOV AL,00H OUT DX,AL MOV DX,INTCSR_BYTE1 MOV AL,1FH OUT DX,AL MOV DX,INTCSR_BYTE2 MOV AL,3FH OUT DX,AL MOV DX,INTCSR_BYTE3 MOV AL,00H OUT
11、DX,AL MOV AX,0000H MOV ES,AX MOV DI, 01C4H ;irq 9 , INT 71h, 01c4= 71h*4 MOV AX,ES:DI MOV IPBAK,AX ;IP MOV AX,OFFSET MYINT CLD STOSW MOV AX,ES:DI ;CS MOV CSBAK,AX MOV AX,SEG MYINT STOSW IN AL,0A1H MOV MKBAK,AL PUSH DX MOV AX,DATA MOV DS,AX MOV DX,IMB4_BYTE3 ; 清PCI卡中断标志 IN AL,DX MOV DX,INTCSR_BYTE2 M
12、OV AL,3FH OUT DX,AL AND AL,Ofdh; irq9 MOV AL,61H ;irq9 从片D1,主片D2 OUT 0A1H,AL MOV AX,0E30H 显示00回车,注意没有换行,同在一行显示 INT 10H MOV AX,0E30H INT 10H MOV AX,0E0DH INT 10H MOV DX,MY8254_MODE ;CLK=10K MOV AL, 35H ;0011, 0101B计数器0,读写低/高位 方式2 ;十进制计数方式 OUT DX, AL MOV DX,MY8254_COUNT0 ;写入计数值10000 MOV AL,0 OUT DX,AL
13、 OUT DX,AL STI A1: NOP CALL BREAK JMP A1 MYINT: PUSH DS PUSH AX OUT 0A0H,AL MOV AL,62H OUT 20H,AL MOV AH,0EH MOV AL,SEC1 INT 10H MOV AH,0EH MOV AL,SEC0 INT 10H MOV AX,0E0DH ;只回车,不换行,还在原处 INT 10H INC SEC0 ;秒的个位+1 CMP SEC0,3AH ;个位计数到10 JZ B3 JMP B1 B3: INC SEC1 MOV SEC0,30H CMP SEC1,36H ;十位计数到 6 JZ B4
14、 JMP B1 B4: MOV SEC1,30H ; 计到60,重新到零 B1: POP DX POP AX POP DS IRET BREAK PROC NEAR PUSH DS MOV AH,06H MOV DL,0FFH INT 21H JE RETURN POP DS CLI MOV AL,MKBAK OUT 0A1H,AL MOV AX,0000H MOV ES,AX MOV DI,01C4H ; irq 9 INT 71H,01C4H=71H*4 MOV AX,IPBAK CLD STOSW MOV AX,CSBAK STOSW MOV DX,INTCSR_BYTE1 MOV AL
15、,00H OUT DX,AL STI MOV AX,4C00H INT 21H RETURN:POP DS RET BREAK ENDP CODE ENDS END START 3. 电子发声实验: 1)用实验系统扬声器做发声实验 用信号源1MHz作为扬声器发声基准时钟,计数器0设置为工作方式3,由表格查出每个音符对 应的时间常数送给计数器0,以确定音调,驱动扬声器产生音乐。8254电子发声实验参考图如 图6-3所示。(发声频率已设定,但发声时间是通过软件延时控制的,因此发声时间随不同档次 PC机而变化,可以通过调节延时子程序参数来调节发声时间) XD e o 6 D X 总线接口 e Q 4
16、 D X XD e o o D X Q o A X XIOW - I0Y2 D7 D6 D5 D4 D3 D2 D1 DO A1 A0 /WR /RD /CS GATE0 CLK0 8254 OUT0 UNIT +5V V1MHZ 一-: SPK 图6-3 8254定时应用实验参考接线图 ;用实验系统扬声器做发声实验 MY8254_COUNT0 EQU 0E440H MY8254_COUNT1 EQU 0E441H MY8254_COUNT2 EQU 0E442H MY8254_MODE EQU 0E443H DATA SEGMENT DTABLE DB 33H, 33H, 3DH, 33H,
17、 26H, 26H, 26H, 26H, 2DH, 2DH, 26H, 2DH, 33H DB 33H, 33H, 33H, 33H, 33H, 4DH, 45H, 3DH, 3DH, 3DH, 45H, 4DH, 45H DB 45H, 45H, 45H, 45H, 45H, 45H, 45H, 33H, 33H, 3DH, 33H, 26H, 26H DB 26H, 28H, 2DH, 2DH, 26H, 26H, 33H, 33H, 33H, 33H, 45H, 3DH, 39H DB 39H, 39H, 52H, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 4
18、DH, 2DH, 2DH DB 26H, 26H, 26H, 26H, 26H, 26H, 28H, 28H, 2DH, 28H, 26H, 26H, 26H DB 26H, 2DH, 28H, 26H, 2DH, 2DH, 33H, 3DH, 4DH, 45H, 45H, 45H, 45H DB 45H, 45H, 45H, 45H, 33H, 33H, 3DH, 33H, 26H, 26H, 26H, 28H, 2DH DB 2DH, 26H, 2DH, 33H, 33H, 33H, 33H, 33H, 33H, 45H, 3DH, 39H, 39H DB 39H, 52H, 4DH, 4
19、DH, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 00H DATA ENDS CODE SEGMENT ASSUME CS:CODE START: MOV AX,DATA MOV DS,AX MOV BX,OFFSET DTABLE MOV AL,BX MOV AH,00H A1:MOV DL,0AH ;CLK=1MHz MUL DL PUSH AX MOV DX,MY8254_MODE MOV AL,36H ;0011,0110B 计数器0,读写低高字节 ;方式3,二进制 OUT DX,AL POP AX MOV DX,MY8254_COUNTO OUT DX,AL MOV
20、 AL,AH OUT DX,AL INC BX MOV AH,00H MOV AL,BX TEST AL,0FFH JZ A2 PUSH AX CALL DALLY CALL BREAK POP AX JMP A1 A2:MOV BX,OFFSET DTABLE MOV AL,BX MOV AH,00H JMP A1 DALLY: MOV CX,0F7FFH ; 根据不同机器配 置修改此值 D1: MOV AX,0D00H D2: DEC AX JNZ D2 LOOP D1 BREAK PROC NEAR ;检测是否有键按下 MOV AH,06H MOV DL,0FFH INT 21H JE
21、RETURN MOV AX,4C00H INT 21H RETURN:RET BREAK ENDP CODE ENDS END START 2)用PC机扬声器做发声实验 有三个计数器在 PC机中集成,它们的功能、操作完全与8254兼容。三个计数器的端口地 址分别是40H, 41H, 42H。控制寄存器地址为 43H。PC扬声器发声需要计数器 2输出OUT2和端 口 61H(8255PB 口)的D1、D0的控制,只有都为“ 1 ”时扬声器才可以发声。我们可以将61H的 D1、D0两位置1,然后改变计数器 2的初值,使OUT2输出不同的频率,从而改变扬声器发声的 音调。PC机中定时器结构框图如图6
22、-X所示。 具体实验步骤如下: (1) 编写程序,通过设置 PC机内计数/定时器2,实现PC机内扬声器的发声 (2) 注意退出时要恢复端口 61H原来的值 (3) 运行程序,观察发声是否正常 (4) 若音乐节拍发声时间较长或较短,可以修改延时子程序中的计数值,调整发声时间到最佳。 图6-4 PC机中定时器结构框图 ;file name: 8254-3.asm ;用pc扬声器作发声实验 PC8254_COUNTO EQU 40H PC8254_COUNT1 EQU 41H PC8254_COUNT2 EQU 42H PC8254_MODE EQU 43H DATA SEGMENT BAK DB
23、? DTABLE DB 33H, 33H, 3DH, 33H, 26H, 26H, 26H, 26H, 2DH, 2DH, 26H, 2DH, 33H DB 33H, 33H, 33H, 33H, 33H, 4DH, 45H, 3DH, 3DH, 3DH, 45H, 4DH, 45H DB 45H, 45H, 45H, 45H, 45H, 45H, 45H, 33H, 33H, 3DH, 33H, 26H, 26H DB 26H, 28H, 2DH, 2DH, 26H, 26H, 33H, 33H, 33H, 33H, 45H, 3DH, 39H DB 39H, 39H, 52H, 4DH,
24、4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 2DH, 2DH DB 26H, 26H, 26H, 26H, 26H, 26H, 28H, 28H, 2DH, 28H, 26H, 26H, 26H DB 26H, 2DH, 28H, 26H, 2DH, 2DH, 33H, 3DH, 4DH, 45H, 45H, 45H, 45H DB 45H, 45H, 45H, 45H, 33H, 33H, 3DH, 33H, 26H, 26H, 26H, 28H, 2DH DB 2DH, 26H, 2DH, 33H, 33H, 33H, 33H, 33H, 33H, 45H, 3DH, 39H, 39H DB 39H, 52H, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 00H DATA ENDS CODE SEGMENTMOV AX,DATA ASSUME CS:CODE,DS:DATAMOV DS,A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江苏南京工程学院人才招聘备考题库附答案详解【培优a卷】
- 2026广东广州市天河区东风实验小学招聘小学高年段语文教师备考题库及完整答案详解【夺冠】
- 2026山东青岛市澳柯玛股份有限公司招聘4人备考题库附参考答案详解(b卷)
- 2026浙江宁波能源集团股份有限公司第一批招聘20人备考题库附答案详解(夺分金卷)
- 2026辽宁铁岭市昌图县14家单位补充招聘公益性岗位人员23人备考题库含答案详解【模拟题】
- 2026江苏南京工程学院人才招聘备考题库附完整答案详解【有一套】
- 2026重庆青年镇招聘公益性岗位人员4人备考题库(有一套)附答案详解
- 2026河南洛阳商业职业学院招聘7人备考题库及答案详解参考
- 2026湖南怀化市芷江侗族自治县安置政策城镇退役士兵竞聘招录5人备考题库附答案详解(预热题)
- 未来五年文件夹、袋市场需求变化趋势与商业创新机遇分析研究报告
- 2025人武专干军事考试题库及答案
- GB/T 24353-2009风险管理原则与实施指南
- 2023年AIGC发展趋势报告:迎接人工智能的下一个时代-腾讯研究院
- FZ/T 73038-2010涂胶尼龙手套
- 温敏型羟丁基壳聚糖护创敷料技术审评报告
- 分红险销售流程课件
- 轨道工程监理实施细则-
- 塔里木河流域的综合治理课件
- 肝豆状核变性指南 (1)课件
- 威廉斯科特Scott财务会计理论(第七版)全套课件
- 渗透检测工艺卡(空)
评论
0/150
提交评论