实验6(2) 计数器及应用
- 格式:doc
- 大小:132.00 KB
- 文档页数:9
综合实验六:8259中断控制器+LED实验一、实验目的掌握8259中断控制器的接口方法与程序设计。
二、实验内容编制程序,利用8259芯片的IR7作为中断源,产生单一中断,系统显示中断号“7”。
三、程序流程四、实验电路五、编程提示8259中断控制器是专为控制优先级中断设计的芯片。
它将中断源优先级排队,辩别中断源以及提供中断矢量的电路集于一片中。
因此无需附加任何电路,只需对8259进行编程,就可以管理8级中断,并选择优行模式和中断请求方式,即中断结构可以由用户编程来设定。
同时,在不需要增加其它电路的情况下,通过多片8259的级联,能构成多达64级的矢量中断系统。
中断序号0 1 2 3 4 5 6 7变量地址20~23h 24~27h 28~2Bh 2C~2Fh 30~33h 34~37h 38~3Bh 3C~3Fh 本实验中使用7号中断源IR7,中断方式为边沿触发方式,按动开关按钮产生一次中断,编写程序,使系统每次响应外部中断IR7时,显示1个字符“7”,显示满以后清空显示“P.”继续等待中断。
六、实验步骤(1)按实验电路图连接线路:①“SP”插孔和8259 7号中断IR7插孔相连,“SP”端初始为低电平。
②按照实验一中3.3的实验步骤②要求连接138译码电路,8259的CS端连138译码器的Y0孔。
③将8259的单元总线接口D0~D7,用8芯排线或8芯扁平线与数据总线单元D0~D7任一接口相连。
(2)运行实验程序在系统处于命令提示符“P.”状态下(数码显示管显示“P.”),输入3400,按EXEC键显示“P.”。
(3)按动开关按钮,LED数码管从最高位开始依次显示“7”,显示满六位后,最高位显示“P.”继续等待中断。
七、实验程序ZXK EQU 0FFDCHZWK EQU 0FFDDHPort0 EQU 0FFE0HPort1 EQU 0FFE1HCODE SEGMENTASSUME CS:CODE,DS:CODE,ES:CODEORG 3400HH8: JMP P8259LED DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HDB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0F3HBUF DB ?,?,?,?,?,?P8259: CLICALL WP ;初始化显示“P.”MOV AX,OFFSET INT8259MOV BX,003CHMOV [BX],AXMOV BX,003EHMOV AX,0000HMOV [BX],AXCALL FOR8259mov si,0000hSTICON8: CALL DISJMP CON8;------------------------------------INT8259:cliMOV BX,OFFSET BUFMOV BYTE PTR [BX+SI],07HINC SICMP SI,0007HJZ X59XX59: MOV AL,20HMOV DX,Port0OUT DX,ALmov cx,0050hxxx59: push cxcall dispop cxloop xxx59mov cx,3438hpush cxSTIIRETX59: MOV SI,0000HCALL WPJMP XX59;============================== FOR8259:MOV AL,13HMOV DX,Port0OUT DX,ALMOV AL,08HMOV DX,Port1OUT DX,ALMOV AL,09HOUT DX,ALMOV AL,7FH ;IRQ7OUT DX,ALRET;---------------------------WP: MOV BUF,11H ;初始化显示“P.” MOV BUF+1,10HMOV BUF+2,10HMOV BUF+3,10HMOV BUF+4,10HMOV BUF+5,10HRET;-------------------------------- DIS: MOV CL,20HMOV BX,OFFSET BUFDIS1: MOV AL,[BX]PUSH BXMOV BX,OFFSET LEDXLATPOP BXMOV DX,ZXKOUT DX,ALMOV AL,CLMOV DX,ZWKOUT DX,ALPUSH CXMOV CX,0100HDELAY: LOOP $POP CXCMP CL,01HINC BXSHR CL,1JMP DIS1EXIT: MOV AL,00HMOV DX,ZWKOUT DX,ALRET;--------------------------CODE ENDSEND H8八、扩展练习编制程序,利用8259芯片的IR i作为中断源,产生单一中断,系统显示中断号“i”。
实验三计数器及其应用
计数器是一种能够在一定条件下,按照一定规律对数字进行计数的设备。
计数器能够进行简单的数学计算,也可以进行复杂的计数任务。
计数器的种类很多,最常见的是二进制计数器、BCD(二进制编码十进制)计数器、同步计数器和异步计数器等。
应用领域非常广泛,例如在电子钟、计时器、计步器、计量仪表、频率计等电子设备中都有广泛的使用。
同时,在数字系统中,计数器也是一个非常重要的组成部分。
在数字处理器芯片、数字信号处理器、编码器/解码器以及FPGA等数字系统中,都需要用到计数器。
此外,在编写程序时,计数器也是一个非常有用的工具。
我们可以使用计数器来计算循环次数、分析代码执行时间等。
总之,计数器是一个非常重要的工具,具有广泛的应用领域。
对于电子工程师和编程人员来说,熟练掌握计数器的原理、种类和应用是非常重要的。
数电集成电路多种计数器综合应用实验的结论及思考一、引言数电集成电路是现代电子技术的重要组成部分,而计数器则是其中的重要组件之一。
本文将介绍数电集成电路中多种计数器的综合应用实验,并探讨其结论及思考。
二、实验内容1. 实验目的本次实验旨在了解多种计数器的基本工作原理,掌握计数器的设计方法及应用技巧,提高对数字电路设计的理解和应用能力。
2. 实验器材本次实验所需器材如下:- 74LS160 BCD decade counter- 74LS161 synchronous 4-bit binary counter- 74LS163 synchronous 4-bit binary counter- 74LS191 synchronous up/down counter- 数字示波器- 函数发生器- 杜邦线等3. 实验步骤及结果(1)BCD decade counter计数器实验将BCD decade counter连接至数字示波器和函数发生器,并设置函数发生器输出一个方波信号。
观察数字示波器上产生的波形,并记录数据。
结果:当函数发生器输出一个频率为1kHz,占空比为50%的方波信号时,数字示波器上显示出一个周期为10ms,频率为100Hz的正弦波信号。
(2)Synchronous 4-bit binary counter计数器实验将Synchronous 4-bit binary counter连接至数字示波器和函数发生器,并设置函数发生器输出一个方波信号。
观察数字示波器上产生的波形,并记录数据。
结果:当函数发生器输出一个频率为1kHz,占空比为50%的方波信号时,数字示波器上显示出一个周期为16ms,频率为62.5Hz的正弦波信号。
(3)Synchronous 4-bit binary counter计数器实验将Synchronous 4-bit binary counter连接至数字示波器和函数发生器,并设置函数发生器输出一个方波信号。
实验六计数器及其应用一、实验目的1.学习用集成触发器构成计数器的方法2.掌握同步计数的逻辑功能、测试方法及功能扩展方法3.掌握构成任意进制计数器的方法二、实验设备和器件1.+5V直流电源2.双踪示波器3.连续脉冲源4.单次脉冲源5.逻辑电平开关6.逻辑电平显示器7.译码显示器8.CC4013×2(74LS74)CC40192×3(74LS192)CC4011(74LS00)CC4012(74LS20)三、实验原理计数器是一个用以实现计数功能的时序部件,它不仅可用来计脉冲数,还常用作数字系统的定时、分频和执行数字运算以及其它特定的逻辑功能。
计数器种类很多。
计数器计数时所经历的独立状态总数为计数器的模(M)。
计数器按模可分为二进计数器(M=2n)、十进计数器(M=10n)和任意进制计数器(M≠2n、M≠10n)。
按计数脉冲输入方式不同,可分为同步计数和异步计数。
按计数值增减趋势分为:加法计数器、减法计数器和可逆(加/减)计数器。
1.用D触发器构成异步二进制加/减计数器图6-1是用四只D触发器构成的四位二进制异步加法计数器,它的连接特点是将每只D触发器接成T 触发器,再由低位触发器的Q端和高一位的CP端相连接。
若将图6-1稍加改动,即将低位触发器的Q端与高一位的CP端相连接,即构成了一个4位二进制减法计数器。
2.中规模十进制计数器、十六进制计数器(1)CC40192是同步十进制可逆计数器,具有双时钟输入,并具有清除和置数等功能。
当清除端CR为高电平“1”时,计数器直接清零;CR置低电平则执行其它功能。
当CR为低电平,置数端LD也为低电平时,数据直接从置数端D0、D1、D2、D3置入计数器。
当CR为低电平,LD为高电平时,执行计数功能。
执行加计数时,减计数端CP D接高电平,计数脉冲由CP U输入;在计数脉冲上升沿进行8421码十进制加法计数。
执行减计数时,加计数端CP U接高电平,计数脉冲由减计数端CP D 输入,表6-2为8421码十进制加、减计数器的状态转换表。
实验六定时器计数器应用实验报告一、实验目的本实验的目的是通过对定时器计数器的应用实验,加深对定时器和计数器工作原理的理解,掌握定时器的使用方法,并能灵活应用到实际工程中。
二、实验原理定时器是一种常用的计时设备,它可以在微处理器或微控制器系统中用于各种计数、计时和频率测量应用。
我们所面对的实验中使用的定时器是软件定时器,其工作原理是通过编程方式配置定时器的时钟源和计数器的计数范围,然后在主程序中通过中断或轮询的方式来读取计数器的值,从而实现不同的定时器功能。
计数器是一种用于计数的设备,它可以对外部信号的频率进行计数。
在本实验中,我们使用计数器来计算外部信号的脉冲数,并将计数结果显示出来。
三、实验材料1. STC89C52 单片机开发板2. 4位数码管3. 杜邦线若干4. 外部信号发生器四、实验步骤1. 连接电路图如下所示:(此处省略电路图)2. 打开 Keil μVision 软件并新建一个工程,选择合适的单片机型号。
3. 在主程序中初始化定时器和计数器,设置适当的时钟源和计数范围。
4. 设置外部中断,用于触发计数器开始计数。
5. 在中断服务程序中编写计数器处理逻辑,获取计数值并进行相应的操作。
6. 在主循环中,根据需求配置定时器,比如实现不同的定时功能,或者将计数结果显示在数码管上。
7. 编译、烧录程序到单片机开发板上,并进行实验验证。
五、实验结果经过实验,我们成功地实现了定时器计数器的应用功能。
通过设置不同的计数范围和外部触发条件,我们能够准确地计算出外部信号的脉冲数,并将计数结果显示出来。
同时,我们还实现了不同的定时功能,比如周期性触发中断、定时器中断延时等。
六、实验总结通过本次实验,我们深入理解了定时器和计数器的工作原理,并掌握了定时器的使用方法。
定时器计数器在实际工程中具有广泛的应用,比如用于频率测量、脉冲计数、定时触发等。
掌握了定时器计数器的使用,对于我们的工程开发和项目实施都具有重要的意义。
计数器的原理计数器是数字电路中广泛使用的逻辑部件,是时序逻辑电路中最重要的逻辑部件之一。
计数器除用于对输入脉冲的个数进行计数外,还可以用于分频、定时、产生节拍脉冲等。
计数器按计数脉冲的作用方式分类,有同步计数器和异步计数器;按功能分类,有加法计数器、减法计数器和既具有加法又有减法的可逆计数器;按计数进制的不同,又可分为二进制计数器、十进制计数器和任意进制计数器。
一、计数器的工作原理1、二进制计数器(1)异步二进制加法计数器图1所示为用JK触发器组成的4位异步二进制加法计数器逻辑图。
图中4个触发器F0~F3均处于计数工作状态。
计数脉冲从最低位触发器F0的CP端输入,每输入一个计数脉冲,F0的状态改变一次。
低位触发器的Q端与高位触发器的CP端相连。
每当低位触发器的状态由1变0时,即输出一负跳变脉冲时,高位触发器翻转。
各触发器置0端R D并联,作为清0端,清0后,使触发器初态为0000。
当第一个计数脉冲输入后,脉冲后沿使F0的Q0由0变1,F1、F2、F3均保持0态,计数器的状态为0001;当图1 4位异步二进制加法计数器第二个计数脉冲输入后,Q0由1变为0,但Q0的这个负跳变加至F1的CP端,使Q1由0变为1,而此时F3、F2仍保持0状态,计数器的状态为0010。
依此类推,对于F0来说,每来一个计数脉冲后沿,Q0的状态就改变,而对于F1、F2、F3来说,则要看前一位输出端Q是否从1跳到0,即后沿到来时,其输出端的状态才改变,否则Q1、Q2、Q3端的状态同前一个状态一样。
这样在第15个计数脉冲输入后,计数器的状态为1111,第16个计数脉冲输入,计数器恢复为0000。
由上述分析可知,一个4位二进制加法计数器有24=16种状态,每经过十六个计数脉冲,计数器的状态就循环一次。
通常把计数器的状态数称之为计数器的进制数(或称计数器的模),因此,4位二进制计数器也可称之为1位十六进制(模16)计数器。
表1所示为4位二进制加法计数器的状态表。
定时器计数器的定时实验简介本文将介绍定时器计数器的定时实验,主要涉及定时器计数器的原理、使用方法以及实验步骤。
定时器计数器是一种常用的计时设备,广泛应用于各种计时场景。
定时器计数器的原理定时器计数器是一种能够精确计时的设备,它通常由一个可编程的时钟和一个计数器组成。
计数器根据时钟的脉冲信号进行计数,从而实现计时的功能。
定时器计数器的工作原理如下:1.初始化计数器:将计数器的初始值设置为0。
2.启动计数器:通过控制信号将时钟输入到计数器中,开始计数。
3.计数过程:计数器根据时钟的脉冲信号进行计数,每接收到一个时钟脉冲,计数器的值加1。
4.判断定时完成:当计数器的值等于设定的定时值时,表示定时完成。
5.停止计数器:定时完成后,停止时钟信号的输入,计数器停止计数。
定时器计数器的使用方法定时器计数器通常由软件通过编程的方式进行使用,具体方法如下:1.初始化定时器计数器:首先,需要将计数器的初始值设置为0,并且设定定时的时间。
2.启动计数器:通过控制信号将时钟输入到计数器中,开始计数。
3.监测计数器的值:在计数的过程中,可以通过查询计数器的值来获取当前的计时结果。
4.判断定时完成:当计数器的值等于设定的定时值时,表示定时完成。
5.停止计数器:定时完成后,停止时钟信号的输入,计数器停止计数。
实验步骤以下是一个简单的实验步骤,用于演示定时器计数器的定时功能:1.准备硬件:–打开开发板,并确保定时器计数器的引脚与外部设备连接正常。
–连接调试器,以便在实验过程中监测计数器的值。
2.编写代码:–在开发环境中,编写一段代码,完成实验的需求,包括初始化计数器、设定定时值等。
3.烧录程序:–将编写好的程序烧录到开发板中。
4.启动实验:–启动开发板,开始实验。
5.监测计数器的值:–在实验过程中,通过调试器监测计数器的值,以便实时了解计时结果。
6.判断定时完成:–当计数器的值等于设定的定时值时,表示定时完成,可以进行相关操作,如触发其他事件、输出提示信息等。
8253定时器/计数器应用一、实验目的1.掌握8253定时/计数器的工作原理、工作方式及应用编程。
2.掌握8253的典型应用电路的接法。
二、实验设备PC 机一台,TD-PITE 实验教学系统一台。
三、实验原理实验系统中安装的为8254(8253的改进型)共有三个独立的定时/计数器,其中0号和1号定时/计数器开放供实验使用,2号定时/计数器为串行通信单元提供收发时钟信号。
定时/计数器0的GATE 信号连接好了上拉电阻,若不对GA TE 信号进行控制,可以在实验中不连接此信号。
四、实验内容计数应用实验:使用单次脉冲模拟计数,使每当按动“KK1+”5次后,产生一次计数中断,并在显示器上显示一个字符“M”。
初始化设置:8254的计数器0、计数器1、计数器2、控制口地址分别为06C0H 、06C2H 、06C4H 、06C6H ;选择计数器0,仅用低8位计数,方式0,二进制计数;8259的地址为20H 、21H ,边沿触发,IR7对应的中断类型码为0FH ,一般全嵌套方式,非缓冲方式,非自动结束。
五、实验步骤(实验报告中要详细写出你自己的实验步骤)计数应用实验步骤:(1)按图1连接实验线路。
(2)编写实验程序,对实验程序进行编译、链接无误后,加载到实验系统。
(3)执行程序。
并按动单次脉冲输入KK1+,观察程序执行结果。
(4)改变程序中的定时/计数值,验证8253的定时/计数功能。
思考题1.执行实验步骤(3)时,程序的执行结果和按动KK1+的速度有关吗?2.如果将图1中OUT0连接到系统总线的MIR6引脚,如何修改程序,使其仍能正常 4.7K图1 8253计数应用实验VCC · · XA1 XA2 系统 XD0· 总 ·XD7 线IOW# IOR# IOY3 MIR7 A0 A1 GATE0 D0 8254 · 单元 · D7 CLK0 WR RD CS OUT0 KK1+单次 脉冲单元计数?3.如果将图1中OUT0连接到系统总线的SIR1引脚,如何修改程序,使其仍能正常计数?提示:主片8259的地址为20H、21H,从片8259的地址为A0H、A1H,从片的INT 连接到主片的IR2引脚上,构成两片8259的级联。
实验六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-按动5次后产生中断请求,在屏幕上显示字符“ M ”。
8254计数应用参考连接线图如图6-1。
;;----PCI卡分配的第3个I/O空间MY8254_COUNT0 MY8254_COUNT1 MY8254_COUNT2 MY8254_MODE ;;--PCI卡分配的第1个I/O空间INTCSR_BYTE0 INTCSR_BYTE1 DATA SEGMENTCSBAK DW ?IPBAK DW ?MKBAK DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TA;;计数应用实验;;filename : 8254-1.asm INTCSR_BYTE2INTCSR_BYTE3EQU 0DC3AHEQU 0DC3BH IMB4_BYTE3 EQU 0DC1FHEQU 0E440H EQU 0E441H EQU 0E442H EQU 0E443HEQU 0DC38H EQU 0DC39H +5V KK1--IR Q图6-1 8254计数应用实验参考接线图START: CLIMOV AX,DA TAMOV DS,AXMOV DX,INTCSR_BYTEO;;设置pci卡MOV AL,00HOUT DX,ALMOV DX,INTCSR_BYTE1MOV AL,1FHOUT DX,ALMOV DX,INTCSR_BYTE2MOV AL,3FHOUT DX,ALMOV DX,INTCSR_BYTE3MOV AL,00HOUT DX,ALMOV AX,0000HMOV ES,AXMOV DI, 01C4H;irq 9 , INT 71h, 01c4= 71h*4MOV AX,ES:[DI]MOV IPBAK,AX ;IPMOV AX,OFFSET MYINTCLDSTOSWMOV AX,ES:[DI] ;CSMOV CSBAK,AXMOV AX,SEG MYINTSTOSWIN AL,0A1HMOV MKBAK,ALAND AL,0fdh ; irq9OUT 0A1H,ALSTIMOV DX,MY8254_MODE ;CLK=KK1- //实际接线kk1-MOV AL,17H ;00 01,011 1b :计数器0,读/写低8位;方式3, 十进制数OUT DX,ALMOV DX,MY8254_COUNT0MOV AL,5;;写入计数初值3个高电平,2个低电平OUT DX,ALA1: NOPCALL BREAKJMP A1MYINT: PUSH DSPUSH AXPUSH DXMOV DX,IMB4_BYTE3;清PCI卡中断标志IN AL,DXMOV DX,INTCSR_BYTE2MOV AL,3FHOUT DX,ALMOV AL,61H;irq9从片D1,主片D2OUT 0A0H,ALMOV AL,62HOUT 20H,ALMOV AX,0E4DH;显示字母M加一空格INT 10HMOV AX,0E20HINT 10HPOP DXPOP AXPOP DSIRETBREAK PROC NEARPUSH DS MOV AH,06H MOV DL,0FFH INT 21H JE RETURN POP DS CLIMOV AL,MKBAK OUT 0A1H,AL MOV AX,0000H MOV ES,AX CLD STOSWMOV AX,CSBAK STOSWMOV DX,INTCSR_BYTE1 ;pci 卡设置 MOV AL,00H OUT DX,ALSTIMOV AX,4C00H INT 21HRETURN:POP DSRETBREAK ENDP CODE ENDSEND STARTMOV AX,IPBAK2. 定时应用实验编写程序,将8254的计数器0设置为方式2,用信号源10kHz 作为CLK0时钟,计数值为 十进制0(即最大计数值10000),OUT0连接IRQ ,这样每计时1s 后产生中断请求,制作一个秒 表显示,每计时 60秒自动归零。
计数器实验原理
计数器实验的原理是基于电子数字技术实现的。
它通过将输入的电信号进行计数,并根据给定的规则输出相应的计数结果。
计数器的工作原理通常利用触发器和逻辑门电路来实现。
触发器是一种能够存储和传递信息的电子器件。
计数器中使用的触发器被称为“触发型计数器”,它能够周期性地切换输出状态,从而实现计数功能。
计数器通常有一个输入端,称为时钟输入。
时钟输入接收外部的时钟信号,根据时钟信号的变化来切换触发器的状态。
当时钟信号的边沿(上升沿或下降沿)到来时,触发器的状态会发生变化。
计数器一般有几个输出端,每个输出端对应一个计数值。
当时钟信号到来时,计数器根据规定的计数规则改变输出的计数值。
不同类型的计数器有不同的计数规则,常见的有二进制计数器、十进制计数器和BCD码计数器等。
计数器可以实现多种功能,如正向计数、负向计数、加法计数、减法计数、循环计数等。
通过不同的触发器和逻辑门的组合,可以实现各种复杂的计数功能。
计数器广泛应用于各个领域,如计算机、通信、测量等。
它们能够对事件、信号、数据等进行计数和统计,提供了有效的计数和计量手段。