8253多路定时计数器.

合集下载

定时计数器(8253)实验报告

定时计数器(8253)实验报告

实验6 8253定时计数器电路接口实验2220083443 赵洪宇一、实验目的掌握8253定时器的编程原理,用示波器观察不同模式下的输出波形。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块、示波器(实验台无)。

三、实验内容8253计数器0,1,2工作于方波方式,观察其输出波形四、实验原理介绍本实验用到两部分电路:脉冲产生电路、8253定时器/计数器电路(1)电路原理该电路由1片8253组成,8253的片选输入端插孔CS8253,数据口,地址,读写线均已接好,T0、T1、T2时钟输入分别为8253CLK0、8253CLK1、8253CLK2。

定时器输出,GATE控制孔对应如下:OUT0、GATE0、OUT1、GATE1、OUT2、GATE2、CLK2。

本实验用到两部分电路:脉冲产生电路、8253定时器/计数器电路脉冲产生电路8253的方式控制字8253的状态字(2)电路测试检查复位信号,通过8253定时器/计数器接口实验,程序全速运行,观察片选、读、写、总线信号是否正常。

五、实验步骤1、实验连线:CS0CS8253 OUT08253CLK2 OUT2LED1示波器(实验中无)OUT1 CLK38253CLK0 CLK38253CLK1实验接线原理图如下:注:GATE信号无输入时为高电平2、编程调试程序assume cs:codecode segment publicorg 100hstart:mov dx,04a6h ;控制寄存器mov ax,36h ;计数器0,方式3out dx,axmov dx,04a0hmov ax,7Chout dx,axmov ax,92hout dx,ax ;计数值927Chmov dx,04a6hmov ax,76h ;计数器1,方式3out dx,axmov dx,04a2hmov ax,32hout dx,axmov ax,0 ;计数值32hout dx,axmov dx,04a6hmov ax,0b6h ;计数器2,方式3out dx,axmov dx,04a4hmov ax,04hout dx,axmov ax,0 ;计数值04hout dx,axnext:nopjmp nextcode endsend start3、全速运行,观察实验结果六、实验结果程序全速运行后,LED1闪烁(周期为0.25s),本实验由于实验台没有提供示波器,所以对于实验所要求的观察方式3的波形无法实现。

可编程定时计数器8253在扬声器中的应用

可编程定时计数器8253在扬声器中的应用

定时/计数器都有定时或对外部事件计数的功能。

通常,定时/计数器归纳起来一般有3种类型:硬件计数器可在简单软件控制下计数,特点是成本低,使用方便,但是专用性强,使用不广泛。

软件定时/计数器特点是几乎没有硬件费用,但他占用CPU的运行时间,降低了CPU的工作效率。

可编程定时/计数器特点是工作灵活,而且不占用CPU的运行时问,缺点是成本较高。

其中可编程定时/计数器8253是一种使用较为普遍的可编程定时/计数器。

可编程定时/计数器8253通过软件设定,可以产生各种时间延迟信号,他的使用非常广泛,通常被用于定时控制、延时、计数等场合,如定时刷新RAM、系统时钟的计时、扬声器的发音长短的控制。

在使用的时候,需要进行严密的计算和精确的测试,以满足不同的要求。

l 可编程定时/计数器8253的工作原理可编程定时/计数器8253是N MOS工艺制成的大规模集成电路,通过简单编程可实现不同的功能,图1为可编程定时/计数器8253的基本原理图。

从图1可以看出,芯片内有3个独立的计数器,分别为计数器0,计数器1,计数器2,每一个计数器都是16位的,可以分别对他们设定工作方式(通过控制字设定)。

图2为封装后的8253引脚图。

可编程定时/计数器8253可以应用在两种情况下:定时、计数。

当用作定时器时,可以循环计数,信号来源一般为系统本身;当用作计数器时,信号来源一般为系统文件。

在扬声器驱动系统中,可编程定时/计数器8253是作定时器来使用的。

图2中对应引脚的含义如下:CLK0,CLK1,CLK2:对应计数器的时钟输入。

GATE0,GATE1,GATE2:对应计数器输出信号。

OUT0,OUT1,OUT2:对应计数器输出信号。

RD:读信号。

低电平有效,读出计数器的计数值送入缓冲器。

WR:写信号。

低电平有效,接收由缓冲器送来的数据。

CS:片选信号。

低电平有效。

只有在CS信号低电平时8253才能产生读写操作,否则不会读写。

A1~A0:对3个计数器和1个控制寄存器端口进行寻址。

8253定时计数器

8253定时计数器
8253可编程定时/计数器
一、实验目的
1、掌握8253的基本工作原理和编程方法;
2、使用Байду номын сангаас辑笔来观察8253的工作状态。
二、实验内容
编写实验程序,利用实验台上8253定时/计数器对 1MHz时钟脉冲进行分频,产生频率为1Hz的方波信号, 并用逻辑笔观察OUT1引脚输出电平的变化。
三、8253工作方式
硬件接线提示
+5V电压
方式0-----计数结束中断 方式1-----硬件触发单拍脉冲 方式2-----频率发生器 方式 0 方式 1
方式 2 方式 3 方式 4
方式 5
方式3-----方波发生器
方式4-----软件触发选通 方式5-----硬件触发选通
四、实验提示
1、8253初始化 对8253定时/计数器进行初始化操作,必须遵守两个 原则:
模式选择 000:模式0 001:模式1 010:模式2 011:模式3 100:模式4 101:模式5
0:二进制 1:BCD
3、8253的地址
片选地址:280~287H
8253控制寄存器地址:0C403H 计数器0的地址:0C400H 计数器1的地址:0C401H
4
五、实验重点或难点
1、8253控制字的定义。 2、8253各工作方式的特点。 3、8253级连时接线方法。
(1)首先要写入工作方式控制字,再写入计数初值;
(2)初始值的设置应与控制字中规定的格式相一致。
2、8253控制字表
SC1 SC0 RW2 RW1 M2 M1 M0
数制选择
计数器选择 00:计数器0 01:计数器1 10:计数器2 11:非法
读/写指示 00:锁存 01:只读/写低8位 10:只读/写高8位 11:先读/写低8位 再读/写高8位

可编程定时器计数器(8253)(微机实验报告)

可编程定时器计数器(8253)(微机实验报告)

可编程定时器/计数器(8253)一、实验目的 1)学会8253芯片和微机接口原理和方法。

芯片和微机接口原理和方法。

2)掌握8253定时器定时器//计数器的基本工作原理、工作方式和编程原理。

二、实验内容按图6虚线连接电路,将计数器0设置为方式0,计数器初值为N (N ≤0FH 0FH)),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

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

图 7三、编程提示1 1、、8253控制寄存器地址控制寄存器地址283H计数器0地址地址 280H 计数器1地址地址 281HCLK0连接时钟连接时钟 1MHZ2 2、参考流程图(见图、参考流程图(见图8、9): 开 始读计数器值显示计数值有键按下吗?开 始送计数器初值N Y结 束结 束设计数器0为工作方式0向计数器0送初值1000先送低字节后送高字节向计数器1送初值1000先送低字节后送高字节设计数器0为工作方式3设计数器1为工作方式3图 8 图图 9四、实验代码1、图6电路的实验代码电路的实验代码CODE SEGMENT ;CODE SEGMENT ;段定义开始(段定义开始(段定义开始(CODE CODE 段)段)ASSUME CS:CODE ; ASSUME CS:CODE ;规定规定CODE 为代码段为代码段START:MOV START:MOV AL,10H ;AL,10H ;AL,10H ;设置控制字设置控制字0001000000010000(计数器(计数器0,方式0,写两个字节,二进制计数)二进制计数)MOV DX,283H ; MOV DX,283H ;把控制寄存器地址放在把控制寄存器地址放在DX 寄存器中寄存器中OUT DX,AL ; OUT DX,AL ;将将AL 的值送入DX 端口端口MOV DX,280H ; MOV DX,280H ;把计数器把计数器0地址放在DX 寄存器中寄存器中MOV AL,0FH ; MOV AL,0FH ;将将0FH 存入AL 寄存器寄存器OUT DX,AL ; OUT DX,AL ;将此时将此时AL 的值送入DX 端口端口LP1: IN AL,DX ;LP1: IN AL,DX ;从从DX 端口读入8位,放在AL 寄存器中寄存器中CALL DISP ; CALL DISP ;调用调用DISP PUSH DX ; PUSH DX ;将将DX 内容保存到堆栈段内容保存到堆栈段MOV AH,06H ; MOV AH,06H ;将将06H 存入AH AH,为了下句调用,为了下句调用21中断中断MOV DL,0FFH ; MOV DL,0FFH ;将将0FFH 存入DLINT 21H ; INT 21H ;调用调用21中断中断POP DX ; POP DX ;将将DX 的内容推出栈段的内容推出栈段JZ LP1 ; JZ LP1 ;如果如果DX 的内容是0,就跳转到LP1MOV AH,4CH ; MOV AH,4CH ;将将4CH 存入AH AH,为了下句调用,为了下句调用21中断中断INT 21H ; INT 21H ;调用调用21中断中断DISP PROC NEAR ;DISP PROC NEAR ;定义一个名为定义一个名为DISP 的子程序的子程序PUSH DX ; PUSH DX ;把把DX 的内容保存到堆栈段中的内容保存到堆栈段中AND AL,0FH ;AL,0FH ;将将AL 寄存器的内容与0FH 进行“与”运算,再把结果存入AL 中MOV DL,AL ; MOV DL,AL ;将将AL 的值送入DL 寄存器寄存器CMP DL,9 ; CMP DL,9 ;比较比较DL 中的值与9的大小的大小JLE NUM ; JLE NUM ;如果如果DL 的值小于或等于9时,则跳转到NUM ADD DL,7 ; ADD DL,7 ;将将DL 的值与7进行相加后,再送入DL 中NUM: ADD DL,30H ;NUM: ADD DL,30H ;将将DL 的值与30H 进行相加后,再送入DL 中 MOV AH,02H ; MOV AH,02H ;将将02H 存入AHINT 21H ; INT 21H ;调用调用DOS21中断中断MOV DL,0DH ; MOV DL,0DH ;结合“结合“结合“MOV AH,02H MOV AH,02H MOV AH,02H”就是说输出”就是说输出0DHINT 21H ; INT 21H ;调用中断指令调用中断指令调用中断指令MOV DL,0AH ; MOV DL,0AH ;结合“结合“结合“MOV AH,02H MOV AH,02H MOV AH,02H”就是说输出”就是说输出0AHINT 21H ; INT 21H ;调用调用DOS21中断中断POP DX ; POP DX ;将将DX 的内容推出栈段的内容推出栈段RET ; RET ;子程序在功能完成后返回调用程序继续执行子程序在功能完成后返回调用程序继续执行 DISP ENDP ; DISP ENDP ;子程序结束子程序结束子程序结束CODE ENDS ; CODE ENDS ;代码段结束代码段结束代码段结束END START ; END START ;程序结束程序结束程序结束2、图7电路的实验代码电路的实验代码CODE SEGMENT ;CODE SEGMENT ;段定义开始(段定义开始(段定义开始(CODE CODE 段)段)ASSUME CS:CODE ; ASSUME CS:CODE ;规定规定CODE 为代码段为代码段START:MOV DX,283H ;START:MOV DX,283H ;把控制寄存器地址放在把控制寄存器地址放在DX 寄存器中寄存器中MOV AL,36H ; MOV AL,36H ;设置控制字设置控制字0011011000110110(计数器(计数器0,方式3,写两个字节,二进制计数)二进制计数)OUT DX,AL ; OUT DX,AL ;将将AL 的值送入DX 端口端口MOV AX,1000H ; MOV AX,1000H ;该语句是立即寻址方式,就是把该语句是立即寻址方式,就是把1000H 这个数赋给AX MOV DX,280H ; MOV DX,280H ;把计数器把计数器0地址放在DX 寄存器中寄存器中OUT DX,AL ; OUT DX,AL ;将将AL 的值送入DX 端口端口MOV AL,AH ; MOV AL,AH ;将将AX 的高8位存入AL 寄存器中寄存器中OUT DX,AL ; OUT DX,AL ;将此时将此时AL 的值送入DX 端口端口MOV DX,283H ; MOV DX,283H ;把端口地址放在把端口地址放在DX 寄存器中寄存器中MOV AL,76H ; MOV AL,76H ;设置控制字设置控制字0111011001110110(计数器(计数器1,方式3,写两个字节,二进制计数)二进制计数) OUT DX,AL ; OUT DX,AL ;将将AL 的值送入DX 端口端口MOV AX,1000H ; MOV AX,1000H ;把把1000H 赋给AXMOV DX,281H ; MOV DX,281H ;把端口地址放在把端口地址放在DX 寄存器中寄存器中OUT DX,AL ; OUT DX,AL ;将将AX 的低8位送入DX 端口端口MOV AL,AH ; MOV AL,AH ;将将AX 的高8位存入AL 寄存器中寄存器中OUT DX,AL ; OUT DX,AL ;将将AL 的值送入DX 端口端口MOV AH,4CH ; MOV AH,4CH ;将将4CH 存入AHINT 21H ; INT 21H ;调用调用DOS21中断中断CODE ENDS ;CODE ENDS ;代码段结束代码段结束代码段结束END START ; END START ;程序结束程序结束程序结束五、实验总结通过实验,学会通过实验,学会8253芯片和微机接口原理和方法,掌握8253定时器定时器//计数。

实验三 8253定时 计数器实验

实验三  8253定时 计数器实验

实验三8253定时/计数器实验一.实验目的了解8253的硬件连接方法,掌握8253的各种方式的编程及其原理。

二.实验要求编写程序,将8253的计数器0设置为方式3(方波),计数器1设置为方式2(分频),计数器2设置为方式2(分频);计数器0的输出作为计数器1的输入,计数器1的输出作为计数器2的输入;计数器2的输出接在一个LED上,运行后可观察到该LED在不停地闪烁。

1. 编程时用程序框图中的三个计数初值,计算OUT2的输出频率,用手表观察LED,进行核对。

2. 修改程序中的三个计数初值,使OUT2的输出频率为1Hz,用手表观察LED,进行核对。

3. 上面计数方式选用的是16进制,现若改用BCD码,试修改程序中的三个计数初值,使LED的闪亮频率仍为1Hz。

三.实验电路及连线GATE0~GATE2连至电源+5V,从波特率开关边的f插孔用线连至CLK0,OUT0用线连至CLK1,OUT1用线连至CLK2,OUT2用线连至一个发光管(DL1),8253片选孔CS 用线连至译码处228~22FH插孔。

四.实验说明8253工作频率为0~2MHZ,所以输入的时钟频率必须在2MHZ之下。

实验板上的晶振为4.9152MHZ,需经74LS393(16分频),由Q3输出307200HZ到CLK0(将波特率开关拨至9600)。

五.实验内容(一)程序:DA TA SEGMENTDA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: PUSH DSMOV AX,0HPUSH AXMOV AX,DATAMOV DS,AXCLI ;关中断MOV DX,22BH ;定时器0工作在方式3MOV AL,00110111BOUT DX,ALMOV DX,228HMOV AL,00HOUT DX,ALMOV AL,02HOUT DX,ALMOV DX,22BH ;定时器1工作在方式2MOV AL,01110101BOUT DX,ALMOV DX,229HMOV AL,18HOUT DX,ALMOV AL,00HOUT DX,ALMOV DX,22BH ;定时器2工作在方式2MOV AL,10110101BOUT DX,ALMOV DX,22AHMOV AL,0AHOUT DX,ALMOV AL,00HOUT DX,ALSTIJMP $CODE ENDSEND START输出频率:f=307200HZ/(200H*18H*0AH)=2HZ修改后程序:DA TA SEGMENTDA TA ENDSCODE SEGMENTSTART: PUSH DSMOV AX,0HPUSH AXMOV AX,DATAMOV DS,AXCLI ;关中断MOV DX,22BH ;定时器0工作在方式3 MOV AL,00110111BOUT DX,ALMOV DX,228HMOV AL,00HOUT DX,ALMOV AL,02HOUT DX,ALMOV DX,22BH ;定时器1工作在方式2 MOV AL,01110101BOUT DX,ALMOV DX,229HMOV AL,30H ;初值30HOUT DX,ALMOV AL,00HOUT DX,ALMOV DX,22BH ;定时器2工作在方式2 MOV AL,10110101BOUT DX,ALMOV DX,22AHMOV AL,0AHOUT DX,ALMOV AL,00HOUT DX,ALSTIJMP $CODE ENDSEND START输出频率1HZ(二)OUT1----LED1:点亮0.5s,熄灭0.5sOUT2----LED2:点亮1s,熄灭3s程序:DA TA SEGMENTDA TA ENDSCODE SEGMENTSTART: PUSH DSMOV AX,0HPUSH AXMOV AX,DATAMOV DS,AXCLI ;关中断MOV DX,22BH ;定时器0工作在方式3 MOV AL,00110111B ;OUT DX,ALMOV DX,228HMOV AL,00HOUT DX,ALMOV AL,02HOUT DX,ALMOV DX,22BH ;定时器1工作在方式2 MOV AL,01110111BOUT DX,ALMOV DX,229HMOV AL,35H ;35H 58hOUT DX,ALMOV AL,15H ;15H 02hOUT DX,ALMOV DX,22BH ;定时器2工作在方式2 MOV AL,10110100BOUT DX,ALMOV DX,22AHMOV AL,04H ;04hOUT DX,ALMOV AL,00HOUT DX,ALSTIJMP $CODE ENDSEND START。

8253定时计数器实验

8253定时计数器实验

8253定时器/计数器实验一、实验目的:1、进一步了解可编程定时/计数器8253的特点与功能;2、掌握8253定时/计数器的应用、编程方法。

二、实验设备:MUT—Ⅲ型实验箱、8086CPU模块、示波器。

三、实验内容:用定时/计数器8253的计数器0、计数器1级联实现1秒的定时。

使OUT1端所接发光二极管每隔1S闪烁一次,模拟电子秒表或信号报警器。

两个计数器皆工作于方式3(输出方波),CLK0端接频率为750KHz的时钟。

四、实验电路:本实验用到两部分电路:时钟脉冲发生器(脉冲产生电路)(见附录)、8253定时器/计数器(1片)。

电路原理图如图1所示。

图1:8253定时/计数器实验电路五、实验步骤:(1)实验连线:CS0连CS8253,8253CLK0连时钟脉冲发生电路的CLK3,OUT0连8253CLK1,OUT1连LED1。

如图2所示。

注意:GATE信号线、数据线、地址线、读写控制信号线均已接好。

图2:线路连接示意图(2)输入以下程序,编译、链接后,全速运行,观察实验结果。

;8253初始化参考程序CODE SEGMENTASSUME CS:CODEORG 0100HSTART:MOV DX,04A6H ;控制寄存器地址MOV AL,00110110B ;计数器0控制字:方式3,二进制计数OUT DX,ALMOV DX,04A0H ;计数器0的口地址MOV AL,0EEH ;写计数初值低8位OUT DX,ALMOV AL,02H ;写计数初值高8位OUT DX,ALMOV DX,04A6H ;控制寄存器地址MOV AL,01110110B ;计数器1控制字:方式3,二进制计数OUT DX,ALMOV DX,04A2H ;计数器1的口地址MOV AL,0E8H ;计数初值低8位OUT DX,ALMOV AL,03H ;计数值高8位OUT DX,ALNEXT: NOPJMP NEXT ;CPU在此循环执行空操作,说明8253独立工作。

8253多路定时计数器

8253多路定时计数器

前言单片机,全称单片微型计算机(Single-Chip Microcomputer),又称微控制器(Microcontroller),是把中央处理器、存储器、定时/计数器(Timer/Counter)、各种输入输出接口等都集成在一块集成电路芯片上的微型计算机。

它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。

其次外加一些扩展电路及必要的通道接口就可以构成各种计算机应用系统,并具有集成度高、可靠性强、性能价格比高、适应温度范围宽、抗干扰能力强、小巧灵活、易于实现机电一体化等优点,已广泛应用于智能化仪器仪表的检测、控制以及生产设备自动化、家用电器等领域。

目前MCS-51是一个独立的高性价比的8位单片机系列,具有一定的片内存储器容量及外部寻址方式,含有双工串行I/O口和16位定时器/计数器,并具备乘、除法运算功能,具有较高的运算速度,因而适合于复杂的应用场合。

单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。

飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等,这些都离不开单片机。

还有自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械。

目录前言 (1)目录 (2)1.课程设计的目的和要求 (3)1.1课程设计的目的 (3)1.2课程设计的基本要求 (3)2.总体设计 (4)2.1、基本工作原理 (4)2.2、硬件总体设计 (5)2.2.1系统组成方案 (5)2.2.2片选信号线接线编址 (5)2.2.3 8253应用原理图 (5)2.3 软件总体设计 (6)2.3.1 8253系统中地址分配 (6)2.3.2 8253的工作方式控制字如下 (6)2.3.3 8253控制字格式 (6)2.3.4 8253有六种工作方式分别为 (7)3.硬件设计 (8)3.1 8253外部特性 (8)3.2 8253内部特性 (9)3.3.8253读/写逻辑信号组合功能及地址分配 (10)4.软件设计 (11)4.1 主程序框图 (11)4.2 主程序 (12)5.结束语 (13)6.参考文献 (14)1.课程设计的目的和要求1.1课程设计的目的1.了解8253定时/计数器的的工作原理,掌握其编程方法。

定时计数器8253课件

定时计数器8253课件
3个计数通道 通道控制寄存器 数据总线缓冲器 读/写控制电路
20010.12
定时计数器8253
3
计数通道
• 通道0、通道1和通道2
• CLK:计数器的脉冲输入端,GATE: 计数器的门控信 号,OUT: 计数器的输出信号,一般与计数溢出有关。
• 工作原理:
• 8253计数器工作在减1状态,每输入一个计数脉冲,计数 器值减1,当计数器
• 分为4部分,通道选择、计数器读/写方式、工作方式和计
数码的选择。
计数器选择(SC1、SC0)
计数器读/写方式(RLl、RL0)
20010.12
定时计数器8253
9
• 计数器的锁存操作
• 8253一旦初始化后,就不需要CPU参与而自动计数。为了 读出计数值时不干扰实际计数过程,同时读出的值又是稳 定的,就要求对通道计数器中的计数值进行锁存。
读/写控制电路
❖ 片选信号 CS ❖ A1A0的组合 :选择三个通道、一个控制寄
存器,共4个端口 ❖ 读信号 R D 和写信号W R 由CPU提供,低电平
有效。
20010.12
定时计数器8253
7
8253的管脚分配
• 通道管脚
• CLKn:通道n的脉冲输入管脚.外部事件
或定时脉冲由这三个管脚输入;
OUT 8253控制口,AL
MOV AL,40H
;置8253通道0时间常数,
OUT 通道0端口,AL ; 第一次写初始计数值的低8位,
MOV AL,38H
; 第二次写高8位。3840H=14400秒=4小时
OUT 通道0端口,AL
……
中断程序中有关程序段如下:
……
MOV AL,00000001B ;8255置位/复位控制字,使PC0=1

8253可编程计数器定时器

8253可编程计数器定时器

8253的工作原理简介8253可编程计数器/定时器的工作频率为0~2MHz,它有3个独立编程的计数器,每个计数器有三个引脚,分别为时钟CLK、门控GATE、计数器和计时结束输出OUT;每个计数器分别有6种工作方式。

下面针对使用到的两种工作方式——方式1和方式2的工作原理[1]进行简述。

方式1:可编程单稳,即由外部硬件产生的门控信号GATE触发8253而输出单稳脉冲。

计数器装入计数初值后,在门控信号GATE由低电平变高电平并保持时,计数器开始计数,此时输出端变成低电平并开始单稳过程。

当计数结束时,输出端OUT转变成高电平,单稳过程结束,在OUT端输出一个单稳脉冲。

硬件再次触发,OUT 端可再次输出一个同样的单稳脉冲。

单稳脉冲的宽度由装入计数器的计数初值决定。

在WR 信号的上升沿(CPU写控制字之后),输出端OUT保持高电平(若OUT原为低电平则变为高电平)。

CPU写入计数值后,计数器并不马上开始计数,而要等到门控信号GATE启动之后的下一个CLK的下降沿才开始。

在整个计数过程中,输出端OUT保持低电平,直至计数值至0,OUT变为高电平为止。

方式2:速率发生器,其功能如同一个N分频计数器。

其输出是将输入时钟按照N计数值分频后得到的一个连续脉冲。

在该方式下,当计数器装入初始值开始工作后,输出端OUT将不断地输出负脉冲,其宽度为一个时钟周期的时间,而两个负脉冲间的时间脉冲个数等于计数器装入的计数初值。

若计数初值为N,则每N个输入脉冲输出一个脉冲。

当CPU写完控制字后,输出端OUT转变成高电平,计数器将立即自动开始对输入CLK时钟计数。

在计数过程中,OUT端始终保持高电平,直至计数器的计数值减到1时,OUT 端才变为低电平,其保持的宽度为一个输入CLK时钟周期的时间,然后输出端OUT恢复高电平,计数器重新开始计数。

8253控制字格式为:其中:SC1 SC0为计数器选择位;RL1 RL0为计数器读写操作选择位,以确定计数器进行装入或读出是单字节还是双字节;M2 M1 M0为计数器工作方式选择位;BCD表示计数器计数方式选择位。

实验四 8253定时计数器应用

实验四 8253定时计数器应用

实验四8253定时/计数器应用1.实验目的掌握8253命令字的设置及初始化和8253的工作方式及应用编程2.实验内容8253是INTEL公司生产的通用外围接口芯片之一,它有3个独立的16位计数器,计数频率范围为0-2MHZ。

它所有的计数方式和操作方式都可通过编程控制。

其功能是延时终端、可编程频率发生器、事件计数器、倍频器、实时时钟、数字单稳和复杂的电机控制器。

3.实训步骤实现方式0的电路图。

设8253端口地址为:40H-43H要求:设定8253的计数器2工作方式为0 ,用于事件计数,当计数值为5时,发出中断请求信号,8088响应中断在监视设备上显示M。

本实训利用KK1作为CLK输入,故初值设为5时,需按动KK1键6次,可显示一个M.实验七 8253定时/计数器应用实验一.实验目的1.熟悉8253在系统中的典型接法。

2.掌握8253的工作方式及应用编程。

二.实验设备TDN86/88教学实验系统一台三.实验内容(一)系统中的8253芯片图7-1 8253的内部结构及引脚1. 8253可编程定时/计数器介绍8253可编程定时/计数器是Intel公司生产的通用外围芯片之一。

它有3个独立的十六位计数器,计数频率范围为0-2MHz。

它所有的计数方式和操作方式都通过编程的控制。

8253的功能是:(1)延时中断(2)可编程频率发生器(3)事件计数器(4)倍频器(5)实时时钟(6)数字单稳(7)复杂的电机控制器8253的工作方式:(1)方式0:计数结束中断(2)方式1:可编程频率发生器(3)方式2:频率发生器(4)方式3:方波频率发生器(5)方式4:软件触发的选通信号(6)方式5:硬件触发的选通信号8253的内部结构及引脚如图7-1所示,8253的控制字格式如图7-2所示。

图7-2 8253的控制字8253的初始化编程如下图:2. 系统中的8253芯片系统中装有一片8253芯片,其线路如图7-3所示。

DW 64 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODESTART: IN AL,21HAND AL,7FHOUT 21H,ALMOV AL,____HOUT 43H,AL ;8253控制口地址A1: MOV AL,____HOUT 42H,ALHLTSTIJMP A1HLTSTIJMP A1MOV AX,014DHINT 10H ;显示’M’MOV AX,0120HINT 10H ;显示空格MOV AL,20HOUT 20H,ALIRETCODE ENDSEND START实验步骤(1)按图接线。

8253的工作方式.doc

8253的工作方式.doc

8253的工作方式.doc8253是一种可编程定时计数器,也称为PIT(可编程间隔计数器),主要用于定时、计数、脉冲宽度测量、触发信号生成等应用。

8253集成了三个内部计数器,并且具有多种工作模式,因此在实际应用中非常灵活。

这篇文章将介绍8253的工作方式。

一、8253的基本特点1. 集成了三个计数器:8253集成了三个16位的计数器,可以同时实现多种定时任务。

2. 可编程:8253可以通过编程输入控制字来设置工作模式、计数器初始值和计数方式等,大大提高了系统的灵活性。

3. 多种工作模式:8253具有多种工作模式,可以应用于定时、计数、脉冲宽度测量等各种应用场景。

4. 高可靠性:8253工作稳定可靠,在各种工作条件下都能保持准确的计数。

8253的工作模式通常分为三类:1. 方波发生器:8253可以通过设定适当的计数器初值和控制字来生成指定频率和占空比的方波信号。

这种工作模式一般应用于调制、解调和数字时钟等领域。

2. 计数器:8253可以将外部的脉冲信号作为计数器输入,并根据设定的计数器初值和控制字来实现计数。

这种工作模式主要应用于计数器、计时器和数据采集等领域。

3. 脉冲宽度调制:8253可以通过改变计数器初始值和脉冲输出方式来实现脉冲宽度调制。

这种工作模式广泛应用于伺服控制、PWM调光等领域。

三、8253的编程方法编程8253的主要步骤如下:1. 定义计数器模式:根据实际需求,定义相应的计数器模式。

8253的计数器模式主要包括16位计数器、8位计数器、比率发生器、方波发生器和脉冲宽度调制等。

2. 计数器初值设定:根据计数器模式和实际需求,设置相应的计数器初值。

计数器初值是计数器的初始计数值,也可以理解为计数器开始计数的起点。

3. 控制字设定:通过编写控制字,控制8253的各种功能和工作模式。

控制字通常由两个字节组成,其中第一个字节设定8253的工作模式和计数器选择,第二个字节设定计数器初值和扩展功能等。

8253的内部结构与工作方式

8253的内部结构与工作方式

8253的内部结构与工作方式8253是一种通用计数器/定时器芯片,由Intel公司于1975年研发。

它在计算机系统中主要用于计时、定时和频率发生的应用。

8253的内部结构和工作方式如下:1.内部结构:8253由一个16位计数器和三个16位计数器/分频器组成。

其中,计数器0和计数器2可以用作定时器,计数器1可以用作计数器或分频器。

-计数器0(工作于16位模式):它可以生成一个周期性的方波信号。

它的输入时钟源可以是外部引脚CLK0或者是计数器2的输出CLK2、计数器0还可以分为两个8位计数器,其下方8位由计数器1的输出加法器控制。

-计数器1(工作于16位模式):它可以将计数器0的输出值与一个可编程的初始计数值进行相加或相减。

它的输出可以用作计数器或分频器。

-计数器2(工作于8位模式):它通常用于分频器功能。

它可以接收来自外部引脚CLK2的时钟输入,并将其分频为不同的输出频率。

2.工作方式:- 定时器模式:8253可以工作在三种不同的定时器模式:比率发生器模式(Mode 0)、硬件单触发模式(Mode 1)和软件可编程单脉冲模式(Mode 2)。

在这些模式下,计数器的工作频率和输出信号的脉冲宽度都可以通过编程来设定。

-计数器模式:计数器1可以通过读取或写入操作来读取或设置计数器的值。

当计数器溢出时,可以触发中断。

-分频器模式:计数器2可以工作为一个分频器,将输入时钟分频为指定的输出频率。

在应用方面,8253的工作方式与内部结构密切相关。

通过编程设置不同的计数器模式和计数器值,可以实现各种计时和频率发生的功能。

例如,可以使用8253来测量时间间隔、生成周期性信号、控制器件的定时操作等。

总结起来,8253的内部结构由三个计数器模块组成,分别用于不同的定时和计数功能。

通过设置不同的模式和计数值,可以实现各种计时和频率发生的应用。

河北专接本微机原理8253工作方式

河北专接本微机原理8253工作方式

河北专接本微机原理8253工作方式8253是一种三个定时/计数器的可编程计时器/计数器,主要用于计时、计数、频率测量等应用。

它的工作方式如下:
1.设置8253的计数模式:该模式确定计数器如何工作,如定时器模式、计数器模式、PWM模式等。

2.设置计数器初值:当计数器启动时,它会从预设的初值开始计数,计数值将减少或增大移位寄存器的值。

3.计数器工作:当8253启动计数器时,计数器会开始计数,直到计数器的值达到初始值。

在定时器模式下,计数器的值减少到0时会产生一个中断请求信号。

4.处理计数器的中断请求信号:当计数器的值减少到0时,它会发出一个中断请求信号,CPU会在下一次中断请求事件时响应,并执行中断服务程序。

5.重新设置计数器初值并继续工作:当计数器计数完毕后,可以重新设置计数器的初始值,并将其重新启动,以进行下一轮计数。

总之,8253的工作方式可以通过选择计数模式、设置计数器初值、处理中断请求、重新设置计数器来实现。

实验八定时器计数器8253实验

实验八定时器计数器8253实验

8253是Intel公司生产的一款可 编程定时器计数器。
它具有3个独立的16位计数器, 每个计数器都可以独立编程和控
制。
8253的计数器可以用于产生时 间间隔、脉冲信号、PWM(脉
宽调制)等。
8253的工作原理
825ቤተ መጻሕፍቲ ባይዱ的每个计数器都有一个预置 值,当计数达到预置值时,计数 器会自动回置并触发一个中断或
实验八:定时器计数器8253实验
contents
目录
• 实验简介 • 8253定时器计数器概述 • 实验步骤与操作 • 实验结果与分析 • 实验总结与思考
01 实验简介
实验目的
掌握8253定时器计 数器的工作原理。
了解定时器在计算机 系统中的应用。
学习如何编程控制 8253定时器计数器。
实验设备
01
微机实验箱
02
8253定时器计数器芯片
03
示波器
04
信号发生器
02 8253定时器计数器概述
定时器计数器的基本概念
定时器计数器是一种用于产生 时间间隔或计数的电子设备。
它通常由石英晶体振荡器驱动, 以提供稳定的计时基准。
定时器计数器广泛应用于计算 机、通信、自动化等领域。
8253的特性和功能
配置8253定时器计数器
设置工作模式
根据实验要求,选择适当的定时/计数 模式,如计数模式、定时模式或门控 模式等。
设置定时/计数初值
启动定时/计数
通过微处理器发送控制信号,启动 8253定时器计数器的定时/计数操作。
根据实验要求,设置适当的定时/计数 初值,以满足实验条件。
启动和观察实验结果
启动实验
加强实践环节
为了更好地理解和掌握相关知识,建议增加更多的实践环节,例 如组织小组讨论、分享经验等。

可编程定时计数器8253

可编程定时计数器8253
节 OUT DX,AL;写入计数值高字节 MOV AL,10110100B;二进制,方式2,写入16位数,计数器2 MOV DX,04C6H;控制口地址
OUT DX,AL MOV AL,04H;计数值低字节 MOV DX,04C4H;设置计数器2地址 OUT DX,AL;写入计数值低字节 MOV AL,03H;计数值高字节 OUT DX,AL;写入计数值高字节
8位的控制寄存器 16位的初值寄存器 16位计数执行单元CE 16位输出锁存器OL
CLK:计数时钟,输入。用于输入定时脉冲或计数脉 冲信号。计数器用其下降沿作减1计数。
GATE:门控信号,输入,由外部信号通过GATE端控 制计数器的启动计数和停止计数的操作。
OUT:输出信号。在不同的模式下,可输出不同波形。
8253的工作方式-方式4(软件触发选通)
软件启动,不自动重复
8253的工作方式-方式4(软件触发选通)
GATE为低
8253的工作方式-方式4(软件触发选通)
计数过程中重新写入计数初值
8253的工作方式-方式5(硬件触发选通)
硬件触发选通方式,完全由GATE端引入 的触发信号控制定时和计数
MOV AL,00011010B;二进制,方式5,写低字节,计数器0 MOV DX,04C6H;设置8253控制口地址 OUT DX,AL;写入工作方式控制字 MOVAL,46H;计数值的低字节 MOVDX,04C0H;设置8253计数器0地址 OUT DX,AL;写入计数值的低字节 MOV AL,01110011B;BCD数,方式1,写16位数,计数器1 MOV DX,04C6H;设置8253控制器地址 OUT DX,AL;写入工作方式控制字 MOV AL,00H;计数值低字节 MOV DX,04C2H;设置8253计数器1地址 OUT DX,AL;写入计数值低字节

8253的工作原理及应用

8253的工作原理及应用

8253的工作原理及应用一、工作原理8253是一种常见的计时/计数芯片,它能够完成各种定时和计数功能。

它采用了三个计数器,分别为计数器0、计数器1和计数器2。

每个计数器可以独立工作,同时也可以与其他计数器进行协同工作。

具体的工作原理如下:1.计数器的基本工作原理是将外部时钟信号分频后输出,根据计数器的工作模式,可以输出不同的周期信号。

2.8253有三个计数器,计数器0可以设置工作模式,计数器1和计数器2可以由计数器0通过控制字来选择工作模式。

3.通过控制字可以设置计数器的工作模式,比如设置为定时器工作模式、内部触发工作模式、软件触发工作模式等等。

4.计数器工作的时候,是通过输入控制字来设置计数器的初始值,然后按照设定的模式进行计数,当计数到达设定的值时,会触发相应的事件,例如输出一个脉冲信号或者产生一个中断。

二、应用领域8253芯片在计算机系统中有广泛的应用,主要包括以下几个方面:1.定时器功能:8253芯片可以实现定时器的功能,通过改变控制字设置的工作模式和初始值,可以产生定时脉冲信号,精确地控制计时间隔。

这在操作系统中非常常见,可以用于定时器中断、延时等。

此外,它还可以用于工业自动化领域中的精确控制和同步任务。

2.计数器功能:8253芯片也可以作为计数器使用。

例如,在测量系统中,可以通过外部输入信号的脉冲数量来进行计数,并配合计时功能实现测量和统计。

3.PWM信号生成:8253芯片可以实现PWM(脉宽调制)信号的生成。

通过改变初始值和周期,可以控制PWM信号的占空比,实现对电机速度、光强等参数的控制。

4.音频处理:8253芯片中的计数器可以用于实现音频处理。

通过设定计数器的频率,可以控制音频信号的采样率,从而实现音频的录制和播放。

5.高速脉冲生成:8253芯片可以产生高速脉冲,用于直流电机控制、步进电机控制等应用场景中。

三、优势与不足8253芯片具有以下几个优点:•多功能性:8253芯片具有丰富的工作模式,可以根据不同的需求灵活地配置和应用。

8253定时器实验报告

8253定时器实验报告

8253定时器实验报告8253定时器实验报告引言:8253定时器是一种广泛应用于计时和计数领域的集成电路。

本实验旨在通过实际操作,深入了解8253定时器的工作原理和应用。

一、实验目的本实验的主要目的是:1. 理解8253定时器的基本原理和工作方式;2. 掌握8253定时器的使用方法;3. 学会通过8253定时器实现各种定时和计数功能。

二、实验器材和原理本实验所需的主要器材有:1. 一台计算机;2. 一块开发板;3. 一根连接线。

8253定时器是一种具有三个独立计数通道的定时/计数芯片。

它可以通过编程控制来实现各种定时和计数功能。

8253定时器的输入时钟信号可以来自计算机的外部时钟源或者计算机内部时钟源。

三、实验步骤1. 将开发板连接到计算机上,并确保连接正确稳定。

2. 打开计算机,并进入开发板的编程环境。

3. 编写程序,初始化8253定时器,并设置计时/计数模式。

4. 定义所需的计时/计数时间间隔。

5. 启动8253定时器,并开始计时/计数。

6. 根据需要,定时器到达预定时间后,触发相应的中断或输出信号。

7. 结束实验,关闭计算机和开发板。

四、实验结果通过本次实验,我们成功地实现了以下功能:1. 利用8253定时器实现了精确的定时功能,可以精确到毫秒级别;2. 利用8253定时器实现了计数功能,可以用于计算某个事件的发生次数;3. 利用8253定时器的中断功能,可以及时响应某个事件的发生。

五、实验总结本次实验通过实际操作,使我们更深入地了解了8253定时器的工作原理和应用。

通过编程控制8253定时器,我们可以实现各种定时和计数功能,为实际应用提供了很大的便利。

然而,在实验过程中也遇到了一些困难和问题。

比如,在设置计时/计数模式时,需要仔细阅读8253定时器的手册,理解各个寄存器的作用和设置方法。

此外,还需要注意编程时的精度和误差,以确保实验结果的准确性和可靠性。

通过本次实验,我们不仅加深了对8253定时器的理论认识,还提高了自己的实际操作能力。

可编程定时-计数器8253

可编程定时-计数器8253

接口技术
•8086/8088中断响应周期时,CPU的INTA引脚的 正确功能是—————— A.输出一个负脉冲,CPU从D7~D0读入中断类型码 B.输出两个负脉冲,在第二个负脉冲期间,CPU 从A7~A0读入中断类型码 C.输出两个负脉冲,在第二个负脉冲期间,CPU 从D7~D0读入中断类型码
D.输出一个负脉冲,CPU从A7~A0读入中断类型 码
接口技术
7.1.4 中断嵌套 当CPU执行优先级较低的中断服务程序时,允许响 应比它优先级高的中断源请求中断,而挂起正在处 理的中断。 (1)屏蔽同级和较低级中断请求。 (2)在保护现场、屏蔽同级和较低级中断完成后, 用STI指令来开中断。 (3)中断服务程序结束后,恢复现场前,用CLI指 令来关中断,然后才能恢复现场。 (4)恢复现场后,CPU应该重新开放中断,以便允 许任何其它等待着的中断请求有可能被CPU响应。
CNT2:标准定时,定时时间为1S。
8253
D7~D0

A1
统 总
A0 IOR
IOW
线
A2~A15
地址 译码器
D7~D0
CLK OUT
2 2
A1 A0
CLK 1 OUT 1
RD WR
CLK 0
OUT 0 CS GATE 1
GATE 2 GATE 3
送8259的IR 2端 2.5MHz 1kHz方波 外部事件
接口技术
计数结束时,输出一个时钟周期的负脉冲;
计数中写入新初值,待GATE信号重新启动之后 才置入计数器使用。
WR
CLK
GATE OUT
CW N=4
4 32 1 0 图7.19 方式5 的波形
接口技术
例7.5 IBM PC/XT主机板上有一片8253用作计 数/定时电路,各计数器及控制寄存器所占地 址及工作情况如下:

微机接口技术实验定时计数器8253

微机接口技术实验定时计数器8253

微机接口技术实验定时/计数器(8253)1. 实验原理TPC-USB平台上有一块8253定时/计数器芯片,除了片选引脚,其他信号都已接好。

有关结构和编程,请参考本章前几节内容。

2. 实验内容(1)计数器方式0实验将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动开关逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

步骤如下:1)按图2.1虚线连接电路。

图2.1 TPC-USB平台计数器方式0实验连线图2)根据流程图2.2,编程并运行,观察实验结果。

图2.2 TPC-USB平台计数器方式0实验流程图3)实验代码:CODE SEGMENTASSUME CS:CODESTART:MOV AL,10HMOV DX,283HOUT DX,ALMOV AL,0FHMOV DX,280HOUT DX,ALLL: MOV AL,00HMOV DX,283HOUT DX,ALMOV DX,280HIN AL,DXCMP AL,9JBE L1ADD AL,7L1:ADD AL,30HMOV DL,ALMOV AH,2INT 21HMOV DL,0DHMOV AH,02HINT 21HMOV DL,0AH MOV AH,02H INT 21HMOV AH,6MOV DL,0FFH INT 21H JZ LLMOV AH, 4CH INT 21H CODE ENDS END START(2)计数器方式3实验将计数器0、计数器1分别设置为方式3,计数初值设为1000,用逻辑笔观察OUT1输出电平的变化(频率1Hz)。

步骤如下:1)按图2.3连接电路。

U5 8253+5V+5V图2.3 TPC-USB 平台计数器方式3实验连线2)根据流程图2.4,编程并运行,观察实验结果。

图2.4 TPC-USB平台计数器方式3实验流程图3)实验代码:CODE SEGMENTASSUME CS:CODESTART:MOV AL,37HMOV DX,283HOUT DX,ALMOV AL,00HMOV DX,280HOUT DX,ALMOV AL,10HOUT DX,ALMOV AL,77HMOV DX,283HOUT DX,ALMOV AL,00HMOV DX,281HOUT DX,ALMOV AL,10HOUT DX,ALMOV AH,4CHINT 21HCODE ENDSEND START(3)计数器级联实验将计数器0设置为方式3(方波),计数器1设置为方式2(分频)。

实验二 定时计数器8253工作方式

实验二 定时计数器8253工作方式

实验二定时/计数器8253工作方式一、实验目的1.熟悉8253在系统中的典型接法2.掌握8253的工作方式及应用编程二、实验设备Dais-8086H 教学实验系统1台仿真示波器1台三、实验内容及步骤8253是一种可编程定时/计数器,有3个16位计数器,其计数频率范围为0~2MHz,用+5V单电源供电。

●8253的功能用途:⑴延时中断⑵可编程频率发生器⑶事件计数器⑷二进制倍频器⑸实时时钟⑹数字单稳⑺复杂的电机控制器●8253的6种工作方式:⑴方式0:计数结束中断⑵方式1:可编程频率发生⑶方式2:频率发生器⑷方式3:方波频率发生器⑸方式4:软件触发的选通信号⑹方式5:硬件触发的选通信号本实验设8253的0通道工作在方式3,产生方波。

四、程序流程四、实验电路五、实验步骤(1)按实验电路图连接线路:①8253的GATE0接+5V。

②8253的CLK0插孔接分频器74LS393的T2插孔,分频器的频率源为:4.9152MHZ。

③按照实验一中3.3的实验步骤②要求连接138译码电路,8253的CS孔与138译码器的Y0孔相连。

④用8芯排线或8芯扁平线把D0~D7总线接口(部分机型位于8251右侧)与数据总线单元D0~D7任一接口相连。

(2)运行实验程序在系统处于命令提示符“P.”状态下,输入3490,按EXEC键。

或从PC机发运行命令。

(3)用示波器测量8253的OUT0输出插孔有方波产生,仿真示波器查看CH1波形。

(4)按复位键RESET 返回“P.”六、实验程序CODE SEGMENTASSUME CS:CODE,DS:CODE,ES:CODE ORG 3490HH9: 。

JMP $ CODE ENDS END H9七、实验思考1. 为什么8253的方式3可以产生方波?2. 8253的CS 孔与138译码器的Y0孔相连,其作用是什么?扩展实验: 定时/计数器:8253方波(二)一、实验目的⑴ 掌握8253定时器/计数器的工作方式和编程原理。

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

前言单片机,全称单片微型计算机(Single-Chip Microcomputer),又称微控制器(Microcontroller),是把中央处理器、存储器、定时/计数器(Timer/Counter)、各种输入输出接口等都集成在一块集成电路芯片上的微型计算机。

它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。

其次外加一些扩展电路及必要的通道接口就可以构成各种计算机应用系统,并具有集成度高、可靠性强、性能价格比高、适应温度范围宽、抗干扰能力强、小巧灵活、易于实现机电一体化等优点,已广泛应用于智能化仪器仪表的检测、控制以及生产设备自动化、家用电器等领域。

目前MCS-51是一个独立的高性价比的8位单片机系列,具有一定的片内存储器容量及外部寻址方式,含有双工串行I/O口和16位定时器/计数器,并具备乘、除法运算功能,具有较高的运算速度,因而适合于复杂的应用场合。

单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。

飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等,这些都离不开单片机。

还有自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械。

目录前言 (1)目录 (2)1.课程设计的目的和要求 (3)1.1课程设计的目的 (3)1.2课程设计的基本要求 (3)2.总体设计 (4)2.1、基本工作原理 (4)2.2、硬件总体设计 (5)2.2.1系统组成方案 (5)2.2.2片选信号线接线编址 (5)2.2.3 8253应用原理图 (5)2.3 软件总体设计 (6)2.3.1 8253系统中地址分配 (6)2.3.2 8253的工作方式控制字如下 (6)2.3.3 8253控制字格式 (6)2.3.4 8253有六种工作方式分别为 (7)3.硬件设计 (8)3.1 8253外部特性 (8)3.2 8253内部特性 (9)3.3.8253读/写逻辑信号组合功能及地址分配 (10)4.软件设计 (11)4.1 主程序框图 (11)4.2 主程序 (12)5.结束语 (13)6.参考文献 (14)1.课程设计的目的和要求1.1课程设计的目的1.了解8253定时/计数器的的工作原理,掌握其编程方法。

2.掌握读取键盘信息的方法。

1.2课程设计的基本要求将三个定时/计数器分别设为不同的工作方式,对同一输入信号计数,在三个输出端分别对输入信号进行2分频、4分频、8分频,用示波器观察其波形。

设定+、-键确定分频大小(初值自定)2.总体设计2.1 基本工作原理8253内部有三个独立的计数器,每个计数器有三根I/O线:CLK为时钟输入线,为计数脉冲输入端;OUT为计数器输出端,当计数器减为零时,OUT输出响应信号:GATE为门控信号,用于启动或禁止计数器操作。

通过编程控制CPU、PL0端口产生方波信号,将方波信号输入定时器T0的CLK0输入端口,通过给定时器T0赋初值,使得方波信号从OUT0口输出时发生2分频;同样将2分频后的方波信号输入定时器T1的CLK1输入端口,通过给定时器T1赋初值,使得2分频后的方波信号从OUT1口输出时继续2分频,即将原方波信号4分频;将4分频后的方波信号输入定时器T2的CLK2输入端口,给定时器T2赋初值,使得4分频后的方波信号从OUT2口输出继续2分频,即完成对原方波信号的8分频2.2 硬件总体设计2.2.1系统组成方案需设所备:CPU挂箱、接口挂箱、CPU模块(80C31)、定时器及并行I/O扩展模块2.2.2片选信号线接线编址CS8253接CS2,8253CLK0~8253CLK2接CPU挂箱的CLK2,GATE0~GATE2接K1(高电平)。

2.2.3 8253应用原理图2.3 软件总体设计2.3.1 8253系统中地址分配A口地址:CFB0HB口地址:CFB1HC口地址:CFB2H控制口地址:CFB3H2.3.2 8253的工作方式控制字如下2.3.3 8253控制字格式定时器T0工作方式3下的控制字:00110110B (36H)定时器T1工作方式2下的控制字:01110100B (74H)定时器T2工作方式1下的控制字:10110010B (0B2H)2.3.4 8253有六种工作方式分别为方式0方式1方式2方式3方式4方式53.硬件设计3.1 8253外部特性各计数器的外部输入/输出信号如下:计数器0:CLK0:计数器0的时钟输入GATE0:计数器0的门脉冲控制输入 OUT0:计数器0的输出计数器1:CLK1:计数器1的时钟输入GATE1:计数器1的门脉冲控制输入 OUT1:计数器1的输出计数器2:CLK2:计数器2的时钟输入GATE2:计数器2的门脉冲控制输入 OUT2:计数器2的输出3.2 8253内部特性数据总线缓冲器: 8位双向三态缓冲器。

通过编写程序向8253写入确定8253工作方式的命令;向计数寄存器装入计数初值;读出当前计数值。

读/写控制逻辑: 8253内部操作的控制部分。

按照CPU发来的读写信号及地址信号产生相应的控制信号,来选择读/写操作的端口、控制数据的传送方向,以及对控制寄存器的写入。

控制字寄存器: 控制字寄存器是8位的,只能写不能读。

在初始化编程时,CPU写入方式控制字到控制字寄存器中,用以选择计数通道及其相应的工作方式。

计数器0、计数器1、计数器2内部结构相同、功能相同;有各自独立的端口地址;有6种不同的工作方式。

每个计数通道都由计数初值寄存器、减1计数器和计数值锁存器这三个组成。

3.3 8253读/写逻辑信号组合功能及地址分配CS RD WR10A A功 能0 1 0 0 0 写计数器0 0 1 0 0 1 写计数器1 0 1 0 1 0 写计数器2 0 1 0 1 1 写入控制字寄存器 0 0 1 0 0 读计数器0 0 0 1 0 1 读计数器1 0 0 1 1 0 读计数器2 0 0 1 1 1 无操作 1 × × ×× 禁止使用 011××无操作占用四个连续的端口地址,分别对应于三个计数初值寄存器端口和一个控制寄存器端口。

A1A0 =00 计数器0 A1A0 =01 计数器1 A1A0 =10 计数器2A1A0 =11控制寄存器4.软件设计4.1 主程序框图开始 写T0方式控制字 定时器T0赋分频值T0控制字送入控制字寄存器 指向8253控制字寄存器 指向8253控制字寄存器写T1方式控制字写T2方式控制字T2控制字送入控制字寄存器定时器T2赋分频值定时器T1赋分频值指向8253控制字寄存器结束T1控制字送入控制字寄存器4.2 主程序ORG 0000HMOV DPTR,#0CFB3H ;指向控制字寄存器MOV A,#36H ;计数器0方式3控制字MOVX @DPTR,A ;控制字送入控制字寄存器MOV DPTR,#0CFB0H ;指向计数器0MOV A,#02H ;2分频计数值为02H MOVX @DPTR,A ;写入低8位值MOV A,#00H ;高8位值为00HMOVX @DPTR,A ;写入高8位值MOV DPTR,#0CFB3H ;指向控制字寄存器MOV A,#76H ;计数器1方式2控制字MOVX @DPTR,A ;控制字送入控制字寄存器MOV DPTR,#0CFB1H ;指向计数器1MOV A,#04H ;4分频计数值为04H MOVX @DPTR,A ;写入低8位值MOV A,#00H ;高8位值为00HMOVX @DPTR,A ;写入高8位值MOV DPTR,#0CFB3H ;指向控制字寄存器MOV A,#0B6H ;计数器2方式1控制字MOVX @DPTR,A ;控制字送入控制字寄存器MOV DPTR,#0CFB2H ;指向计数器2MOV A,#08H ;8分频计数值为08H MOVX @DPTR,A ;写入低8位值MOV A,#00H ;高8位值为00HMOVX @DPTR,A ;写入高8位值SJMP $END ;结束5.结束语就此课程设计就要告一段落,纵观整个设计过程,可以说在这一过程中我的收获很大,通过此次课程设计,学会8253芯片和微机接口原理和方法,掌握8253定时器/计数器的基本工作原理、工作方式和编程原理,熟悉汇编代码的编写。

课程设计程序调试中,连接电路,利用代码控制实验电路,深对课本理论的理解。

同时也充分认识到自己的薄弱环节,通过理论分析与实践的反复进行和论证,许多问题都有了较好的解决方案。

通过此次设计,首先,这次微机原理与接口技术课程设计充分锻炼我们的动手能力和思考问题的能力,通过此次实验我加深了对8253定时/计数器的了解;其次,这次课程设计让我积累了相关方面的专业知识,对以后的工作学习有着借鉴作用;最后,虽然本次课程设计的任务已经基本完成,但是我相信这些知识还会在以后再次用到,我会继续努力学习这方面的知识,巩固旧知识和学习新的专业知识。

为了搞好这次课程设计,通过查阅资料以及在老师和同学的帮助下,最终基本达到了设计目的。

通过实践,巩固了理论知识的学习,提高了实际应用所学知识的能力,还积累了许多宝贵的经验。

在这次的设计实践过程中,我认识到不管做什么事,尤其是科学实践,都需要大胆假设,小心求证。

任何一个方案都要经过详细周全的论证后才能着手去做,否则即使很快做出来,但经不起推敲和考验。

对于那些要求能够扩展功能的课题更是如此。

6.参考文献[1] 胡汉才《单片机原理及其接口技术》第3版.清华大学出版社,2011.[2] 蒋辉平.周国雄.《单片机原理与应用设计》.第1版.北京航空航天大学出版社,2007.[3] 邹道胜.《单片机原理及接口技术实验指导》.第1版.华中科技大学出版社,2009.[4] 南建辉.雄鸣.王军茹.《MCS--51单片机原理及应用实例》.第1版.清华大学出版社,2004.[5] 张毅刚.彭喜元.董继承.《单片机原理及应用》.第1版.高等教育出版社,2003.。

相关文档
最新文档