用通道0的输出作计数脉冲.ppt
文本预览下载声明
第10章作业 * 3、对8253初始化编程包括两步: 一、写入控制字。二、写入计数初值。 4、 A4 A3 A0 A5 M/IO A7 A6 A9 A8 G1 G2B G2A C BA Y0 A2 A1 RD WR D7—D0 GATE0 GATE1 GATE2 CLK0 CLK1 OUT1 CLK2 OUT2 A1 A0 RD WR D7—D0 CS 2MHz 5V 1.5KHz方波 IR0(50Hz) 8086 CPU 74LS138 OUT0 300Hz 地址: 300H 302H 304H 306H 第9章作业 已知:CLK0=2MHz 要求:通道0——1.5KHz方波(方式3) 通道1——300Hz序列负脉冲(用通道0的输出作计数脉冲) 通道2——以50Hz速率发中断请求 设计: 通道0:方式3,控制字 —— 0011 0111B 计数初值 N0=2?106/1.5 ?103=1333 通道1:方式2,控制字 —— 0101 0100B 计数初值 N1=1.5 ?103/300=5(用通道0的输出作计数脉冲) 通道2:方式3,控制字 —— 1001 0110B 计数初值 N2=300/50=6 (用通道1的输出作计数脉冲) or:计数初值 N2=1500/50=30 (用通道0的输出作计数脉冲) 初始化编程: MOV DX, 306H;通道0初始化 MOV AL, 37H OUT DX, AL MOV DX, 300H MOV AL, 33H OUT DX, AL MOV AL, 13H OUT DX, AL MOV DX, 306H;通道1初始化 MOV AL, 54H OUT DX, AL MOV DX, 302H MOV AL, 5 OUT DX, AL MOV DX, 306H ;通道2初始化 MOV AL, 96H OUT DX, AL MOV DX, 304H MOV AL, 6 OUT DX, AL : : 5、 MOV AL, OUT 86H, AL 6、 MOV AL, 100? 0 ? ? ? B ;方式字 OUT 86H, AL MOV AL, ;PC4置1 OUT 86H, AL MOV AL, ;PC5清0 OUT 86H, AL MOV AL, ;PC6输出正脉冲 OUT 86H, AL ;(设初态为低电平) MOV AL, OUT 86H, AL 10、8个病床,当任一病人按下开关,相应LED点亮。 硬件电路参见教材P352 图10-13 控制程序: MOV DX, 0F6H MOV AL, OUT DX, AL TEST: MOV DX, 0F0H IN AL, DX MOV DX, 0F2H NOT AL OUT DX, AL JMP TEST *
显示全部