GCS微机原理Ch10键盘显示器接口_第1页
GCS微机原理Ch10键盘显示器接口_第2页
GCS微机原理Ch10键盘显示器接口_第3页
GCS微机原理Ch10键盘显示器接口_第4页
GCS微机原理Ch10键盘显示器接口_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MicrocomputerPrinciplesGCS微机原理Ch10键盘显示器接口—人机交互外设接口设计原理与实现Contents本章目录GCS微机原理Ch10键盘显示器接口01接口基础原理与发展历程02键盘接口设计与实现03显示器接口设计与实现04可编程定时器8253芯片Chapter01接口基础原理与发展历程从信号传输方式到电气特性,建立外设接口的完整认知框架CHAPTER10·FUNDAMENTALSI/O接口的基本概念与作用I/O接口是CPU与外部设备之间的桥梁电路,核心解决速度不匹配、信号格式差异和数据缓冲三大问题。微机接口电路教学实验箱数据缓冲CPU工作速度远高于外设,接口通过数据缓冲寄存器暂存数据,避免CPU等待外设造成的资源浪费信号转换外设信号格式多样(模拟/数字、串行/并行),接口承担信号格式转换与电平匹配的"翻译"功能传输分类接口按数据传输方式分为并行接口(多位同时传输、速度快但线多)和串行接口(逐位传输、线少但需协议)端口结构接口电路包含数据寄存器、状态寄存器和控制寄存器三类端口,CPU通过地址译码访问不同功能端口Ch10·DataTransmission并行传输与串行传输对比并行传输通过多条数据线同时传送多位数据,适用于近距离高带宽场景;串行传输逐位发送,线路简单适合远距离通信。两种方式的选型取决于传输距离、带宽需求和成本约束的综合权衡。PARALLEL并行传输并行接口排线与数据线缆通过8/16/32条数据线同时传输多位数据,单位时间内吞吐量大,适合高带宽需求的近距离通信线缆和引脚数量多,硬件成本高且信号线间易产生串扰,传输距离通常限制在几米以内典型应用包括CPU与内存之间的数据总线、早期并口打印机(LPT)以及内部芯片间通信8/16/32位SERIAL串行传输USB串行接口数据线特写仅用1-2条数据线逐位依次传输数据,线路简单成本低,抗干扰能力强,适合远距离通信单位时间传输位数较少,但通过提高时钟频率和采用差分信号技术可显著提升实际速率典型应用包括USB、RS-232、SPI、I²C等标准接口,现代高速串行接口速率已超越传统并行方案USB·RS-232SIGNALSTANDARDS接口电气特性与信号标准接口的电气特性定义了电压范围、信号电平和驱动能力等关键参数,是保证CPU与外设可靠通信的物理基础。不同接口标准采用不同的电平规范,设计时必须确保两端电平兼容。TTL电平标准5V表示高电平(逻辑1)、0V表示低电平(逻辑0),是大多数微机系统内部接口的基本电平标准,具有简单直观的特点。5V/0VRS-232标准采用±3V至±15V电平,高噪声容限适合远距离串行通信,需专用电平转换芯片实现与TTL的兼容。±15V电流驱动能力I/O口驱动通常为几mA至几十mA,驱动LED等负载时需串联限流电阻,防止过流损坏器件。mA级上拉电阻配置使输入引脚在无信号时保持确定电平,避免悬空导致的逻辑误判和功耗增加,提高系统稳定性。防悬空INTERFACEEVOLUTION接口技术的演进历程从RS-232到USB-C,外设接口经历了从低速专用向高速通用的演变。每一代接口标准的出现都解决了上一代的核心痛点。01RS-232(1960s):最早的通用串行接口标准,采用±12V电平,速率约115Kbps,至今仍在工业控制领域广泛使用02PS/2(1987):IBM推出的小型圆口接口,专用于键盘和鼠标,连接稳定但不支持热插拔,逐渐被USB取代03USB(1996至今):通用串行总线,支持热插拔、即插即用和菊花链扩展,从USB1.1的12Mbps发展到USB4的40Gbps04HDMI/DisplayPort(2000s):高清数字视频接口,取代VGA模拟信号传输,支持音视频一体化和4K/8K超高分辨率输出PS/2与USB接口实物对比,体现接口技术的代际演进Chapter10·微机接口原理I/O端口编址方式I/O端口编址决定了CPU如何寻址和访问接口电路中的寄存器。独立编址与统一编址各有优劣,选择哪种方式与CPU体系结构密切相关,直接影响驱动程序的设计方法。I/OMAPPED独立编址I/O映射拥有独立的地址空间(如8086的64KBI/O空间),使用专用IN/OUT指令访问,不占用内存地址地址译码电路相对简单,I/O与内存访问互不干扰,但指令种类增加,编程时需区分访存与访I/O操作64KB独立I/O地址空间MEMORYMAPPED统一编址内存映射端口被映射到内存地址空间的一部分,使用普通访存指令(MOV等)即可读写端口,编程更灵活统一无需专用I/O指令,但端口会占用宝贵的内存地址空间,在地址资源有限的系统中需谨慎规划地址分配MOV通用访存指令即可操作I/OCONTROLMETHODSI/O数据传送控制方式I/O控制方式从程序查询到中断再到DMA,体现了CPU参与程度的逐步降低和系统效率的持续提升。不同外设根据其数据速率和实时性要求选择合适的控制方式。程序查询方式CPU通过循环读取外设状态寄存器判断是否准备好,准备好后才执行数据读写,编程简单但CPU利用率极低。适用于低速、实时性要求不高的简单外设,如教学实验中的LED控制和开关状态读取。低速外设中断驱动方式外设在准备好数据后主动向CPU发出中断请求,CPU暂停当前任务执行中断服务程序完成数据传送。CPU无需轮询等待,可并行执行其他任务,特别适合键盘输入等随机性事件的响应处理。并行执行DMA直接存储器存取由DMA控制器接管总线控制权,直接在外设与内存之间批量搬运数据,不经过CPU参与。传输速率极高,适用于磁盘读写、高速数据采集等大批量数据传送场景,但需额外硬件支持。批量搬运Chapter02键盘接口设计与实现从单个按键到矩阵键盘,掌握键盘扫描、去抖与编码的完整技术链KeyboardInterface机械开关的电气特性与抖动问题机械开关在按下和释放瞬间会产生5-20ms的触点弹跳(bounce),导致CPU误判为多次按键。必须通过硬件或软件去抖措施确保每次按键只产生一个有效信号,这是键盘接口可靠性的基础保障。机械键盘轴体内部结构·金属触点与弹簧组件01弹跳现象:机械触点闭合瞬间产生毫秒级弹跳,表现为电平信号在高/低之间快速振荡,CPU可能将一次按键误读为多次触发5–20ms02硬件去抖:采用RC低通滤波电路或施密特触发器整形波形,滤除高频抖动分量后输出干净的阶跃信号RC滤波03软件去抖:检测到按键按下后延时10-20ms再次采样确认,实现简单且无需额外硬件,是嵌入式系统常用方案延时采样04上拉电阻:确保开关未按下时输入引脚保持稳定高电平状态,避免悬空导致的电磁干扰误触发高电平KeyboardInterface独立按键接口设计独立按键将每个按键单独连接到一个I/O引脚,编程简单直观但I/O资源消耗与按键数量成正比。适用于按键数量较少(通常8个以下)的简单控制面板和嵌入式设备场景。硬件连接每个按键一端接地、另一端接I/O口并配上拉电阻,按键按下时引脚读到低电平(逻辑0),释放时回到高电平Pull-up读取方式CPU通过直接读取I/O端口寄存器即可判断各按键状态,无需复杂算法,程序逻辑清晰且调试方便I/ORegister资源消耗N个按键需要N个I/O引脚,资源消耗线性增长,在微控制器I/O口有限的情况下不适合大量按键的场景O(N)典型应用单片机开发板功能按键、微波炉控制面板、电梯楼层选择按钮等按键数少于8个的设备<8KeysCH10·键盘接口矩阵键盘的结构与优势矩阵键盘通过m×n的行列交叉布局,仅用m+n根I/O线即可管理最多m×n个按键,将I/O资源消耗从线性增长降为对数级增长。014×4矩阵键盘仅需8个I/O引脚控制16个按键,8×8矩阵仅需16个引脚控制64键,I/O利用率大幅提升02行线接输出端口、列线接输入端口(或反之),按键位于行列交叉点,按下时将该行与该列电气连通03标准PC键盘采用约8×16的矩阵布局,配合专用编码器芯片(如8048单片机)实现104键的高效扫描管理04矩阵结构需通过扫描算法逐一定位按键位置,编程复杂度高于独立按键,但换来显著的硬件资源节约4×4矩阵键盘模块·行列交叉按键布局实物AlgorithmWalkthrough行列扫描算法详解行列扫描通过逐行置低并检测列线电平变化的方式精确定位矩阵键盘中按下的按键。该算法包含按键检测、行列定位、去抖确认和键值编码四个步骤,是矩阵键盘驱动程序的核心逻辑。Step全行扫描将所有行线置低电平,读取列线状态。若所有列线均为高电平则无按键按下,否则有键闭合。01Step逐行定位依次将单行置低、其余行置高,读取列线确定按键所在行号和列号,交叉点即为按键位置。02Step去抖确认检测到按键后延时10–20ms再次扫描,若按键仍闭合则确认有效,排除抖动干扰。10–20msStep键值编码根据行列号计算按键编号(key=row×列数+col),查表转换为对应的ASCII码或功能键代码。row×N+colTriggerMechanisms键盘扫描的触发方式键盘扫描可通过定时器周期性触发或中断事件触发两种方式执行。定时扫描实现简单适合初学者,中断扫描效率更高适合实际产品,两者结合使用可兼顾响应速度和CPU利用率。定时扫描方式利用定时器每隔固定周期(通常10-50ms)触发扫描程序,无论有无按键都会执行一轮完整的行列扫描流程。实现简单、时序可控,适合教学实验和对响应延迟不敏感的场景,但CPU需周期性处理扫描任务。10-50ms中断扫描方式按键按下时通过硬件电路产生中断请求信号,CPU响应中断后执行扫描识别程序,无按键时不消耗CPU资源。响应速度快、CPU利用率高,适合多任务嵌入式系统,但中断服务程序需尽量简短以避免影响其他中断。零空耗KeyMatrix&Encoding重键处理与键值编码重键处理策略决定了键盘能否正确识别多键同时按下的场景,从单键封锁到多键全识别复杂度递增。键值编码则将物理键号映射为系统可识别的字符码或功能码,是键盘输入链路的最后一环。1-Key单键封锁策略仅响应第一个被检测到的按键,忽略后续按键直到当前键释放,实现最简单但用户体验较差适用于低成本嵌入式设备2-Key双键组合策略允许同时识别两个按键状态,支持Shift/Ctrl等修饰键与字母键的组合输入,满足基本打字需求办公键盘主流方案N-Key多键全识别追踪矩阵中所有按键独立状态,支持任意数量按键同时识别,是电竞键盘的核心卖点全键无冲技术实现ASCII键值编码通过查表法将行列号转换为ASCII码或扫描码,修饰键通过状态标志位改变字母键的输出码值扫描码表映射机制INTERFACEPROTOCOLPS/2键盘接口协议PS/2接口采用双向同步串行协议,键盘主动发送扫描码给主机,主机可回传命令控制键盘行为。虽已被USB逐步取代,但其简洁的协议设计仍是理解串行通信的经典案例。6针Mini-DIN连接器—实际用到4根线:VCC(5V)、GND、数据线(DATA)和时钟线(CLK),接口小巧稳定11位帧格式—1位起始位(低)+8位数据位(LSB先发)+1位奇校验位+1位停止位(高)时钟频率≈15.38KHz—由键盘产生时钟信号,主机在时钟下降沿采样数据线,实现同步串行传输主机命令控制—拉低时钟线暂停发送,发送命令字节控制LED状态、扫描码集选择和自检操作PS/2接口6针Mini-DIN连接器实物GCS微机原理·Ch10键盘显示器接口USB键盘接口与HID协议USB键盘通过HID(人机接口设备)类协议与主机通信,支持热插拔和即插即用,操作系统内置通用驱动无需额外安装。USB轮询机制以1-10ms的间隔获取键盘输入报告,保证了流畅的输入体验。USB机械键盘·产品实拍01USB键盘属于HID设备类,遵循USBHID规范定义的报告描述符和输入报告格式,操作系统可自动识别并加载通用驱动02主机通过中断传输方式每1-10ms轮询一次键盘状态,键盘回传包含最多6个同时按下键位的输入报告(BootProtocol)03USB支持热插拔,系统通过检测D+/D-线上的电平变化自动触发设备枚举流程,分配地址并获取设备描述符04相比PS/2接口,USB键盘具有更高的传输带宽、支持更多键同时识别(N-KeyRollover需自定义报告描述符实现)CHAPTER03显示器接口设计与实现从LED数码管的段选位选到LCD液晶屏的时序控制,掌握显示驱动的完整方法CHAPTER10·键盘显示器接口LED数码管结构与发光原理LED数码管由7段LED和1个小数点组成,通过段选信号控制显示内容。共阴极和共阳极两种结构决定了驱动电路的电平逻辑,选择哪种类型直接影响段码表的编写和驱动芯片的选型。LED七段数码管实物·可见段码结构017段LED(a–g)加小数点dp共8个发光单元,按"日"字形排列,通过不同段的亮灭组合显示0-9和A-F等字符02共阴极:8个LED阴极连在一起接GND,阳极为段选输入端,输出高电平时对应段点亮,段码为正极性编码03共阳极:8个LED阳极连在一起接VCC,阴极为段选输入端,输出低电平时对应段点亮,段码为负极性编码04每个LED段需串联220Ω–470Ω限流电阻,防止电流过大烧毁LED或超过驱动芯片的I/O口电流承载能力DisplayInterfaceLED数码管段码编码与显示方式LED数码管通过段码表将数字映射为对应的段亮灭组合。静态显示各管独立驱动,简单稳定但硬件开销大;动态扫描显示利用视觉暂留轮流驱动,节省I/O资源但需要精确的扫描时序控制。静态显示方式01每个数码管的8个段选线独立连接到I/O口或锁存器,送入段码后持续保持,直到需要更新显示内容。这种方式控制逻辑简单直接,无需定时刷新。02显示亮度高且无闪烁,但4位数码管需32根I/O线(或4片锁存器),硬件成本和布线复杂度随位数线性增长,适用于位数较少的场景。典型应用:工业仪表、时钟显示等固定位数、高稳定性要求的场合。HardwareCost32根I/O动态扫描显示01所有数码管共用8根段选线,另用4根位选线分别控制各管的公共端,通过快速轮流点亮实现多位同时显示效果,需配合定时中断程序。02人眼视觉暂留约20ms,扫描频率高于50Hz时即可消除闪烁感。4位数码管仅需12根I/O线,大幅节省硬件资源,但需占用CPU定时处理。典型应用:电子秤、计算器、多功能仪表等位数较多、成本敏感的产品。HardwareCost12根I/OCHAPTER10·DISPLAYLCD液晶显示屏基础原理LCD利用液晶分子在电场作用下改变光偏振方向来控制像素明暗,本身不发光需配背光模组。相比LED数码管,LCD可显示文字图形等复杂内容且功耗更低,但驱动时序要求严格,是嵌入式显示的主流方案。1602字符型LCD液晶显示模块实物01液晶分子夹在两片偏振玻璃之间,加电场时分子排列改变导致光线偏振方向旋转,配合偏振片实现像素的明暗控制02字符型LCD(如16×2、20×4规格)内置HD44780控制器,可显示ASCII字符和自定义图案,适合仪器仪表和信息提示03图形型LCD(如128×64点阵)可显示任意图形和中文汉字,通过逐点绘图方式操作显存中的位映射数据04LCD功耗远低于LED数码管(微安级vs毫安级),适合电池供电的便携设备,但低温环境下响应速度会明显变慢INTERFACEPROTOCOLSLCD接口方式:并行与串行LCD与微控制器的连接可采用8位/4位并行或SPI/I²C串行方式。8位并行速度最快但I/O消耗大,4位并行兼顾速度与资源,串行接口最省引脚但刷新率受限。选型需在I/O资源、传输速度和硬件复杂度之间权衡。8-BITPARALLEL8位并行模式8根数据线+3根控制线(RS/RW/E),一次传输完整字节,数据吞吐率高但占用11个I/O口资源。11I/OPINS4-BITPARALLEL4位并行模式HD44780特有功能,用4根数据线分两次传输一个字节的高4位和低4位,节省4个I/O口且性能损失可接受。7I/OPINSSPISERIALSPI串行接口仅需SCK/MOSI/CS3根信号线,通过PCF8574等I/O扩展芯片间接控制LCD,适合I/O紧张的单片机系统。3I/OPINSI²CSERIALI²C串行接口仅需SDA/SCL2根线,PCF8574模块地址可配置,一块I²C总线上可挂多个LCD模块,扩展性最优。2I/OPINSGCSMICROCOMPUTER·CH10LCD初始化流程与命令控制HD44780控制器LCD上电后必须执行严格的初始化序列,包括等待电源稳定、功能设置、清屏和显示模式配置。每条命令有特定的执行时间要求,时序不当会导致显示乱码或不响应。01上电等待:VCC稳定后需等待≥15ms让LCD内部电路完成复位,过早发送命令会导致控制器处于不确定状态≥15ms02功能设置命令:配置数据总线宽度(8位/4位)、显示行数(1行/2行)和字符字体(5×8/5×10点阵)0x3803显示控制命令:控制整体显示开关、光标显示开关和光标闪烁开关三个独立选项的组合状态0x08–0F04清屏命令:执行时间长达1.52ms,是普通命令(37μs)的40倍,程序中必须加入足够延时或通过读忙标志等待1.52msDISPLAYMEMORYLCD显存映射与光标控制LCD控制器通过DDRAM地址映射屏幕位置,写入字符编码即在对应位置显示字符。掌握地址分布规律和光标控制命令是精确控制显示的关键。0116×2LCD地址分布第一行地址0x00–0x0F,第二行0x40–0x4F,两行地址不连续,编程时需分行计算偏移量。Row1:0x00-0x0F|Row2:0x40-0x4F0220×4LCD非直觉布局四行地址为0x00/0x40/0x14/0x54,第三四行地址反而在前面,源于控制器内部存储结构设计。0x00|0x40|0x14|0x5403光标定位命令命令0x80+地址将光标移至指定DDRAM位置,后续写入字符从该处开始并按设定方向自动递增。CMD=0x80+DDRAM_ADDR04输入模式设置命令0x04–0x07控制地址递增/递减方向及是否启用整屏移位,可实现滚动显示效果。I/D=1/0,S=1/0GCS微机原理·CH10LED数码管与LCD液晶屏选型对比LED数码管和LCD液晶屏各有适用场景:前者适合纯数字显示且要求高亮度的场合,后者适合复杂信息展示且要求低功耗的场合。工程选型需在显示能力、功耗、成本和编程复杂度之间做出权衡。对比维度LED数码管LCD液晶屏显示内容仅数字和少量字母数字、字母、图形、中文功耗较高(每段5-20mA)极低(μA级,背光除外)亮度/可视性自发光,高亮醒目需背光,暗处需开背光I/O资源消耗8+位选线(动态扫描)4-11根(视接口方式)编程复杂度简单(段码表查表)较复杂(初始化+时序)典型成本低(几角/片)中(几元至十几元/片)LED数码管适合简单数字显示场景,LCD液晶屏适合需要丰富信息展示的应用,两者在嵌入式系统中各有不可替代的优势。CHAPTER04可编程定时器8253芯片从芯片内部结构到6种工作方式,系统掌握8253的编程与应用TIMINGMETHODS定时/计数的三种实现方法定时功能可通过软件循环、纯硬件电路或可编程定时器芯片三种方式实现。软件定时简单但不精确,硬件定时精确但不灵活,可编程定时器8253兼顾精度与灵活性,是微机系统中的标准定时方案。软件定时通过执行空循环指令消耗CPU时钟周期来实现延时,延时时间取决于循环次数和指令执行周期。实现简单无需额外硬件,但精度受中断和程序分支影响不稳定,且延时期间CPU被完全占用。CPU占用纯硬件定时使用555定时器等模拟电路产生精确定时脉冲,定时时间由外部RC元件参数决定,不受软件影响。精度高且完全不占用CPU资源,但定时时间固定不可更改,每次修改都需更换电阻或电容元件。高精度可编程定时器通过软件写入计数初值和控制字即可灵活设定定时时间和工作模式,无需改动任何硬件电路。定时精度取决于输入时钟频率(可达10MHz),定时时间=时钟周期×计数初值,兼具精度与灵活性。8253PROGRAMMABLEINTERVALTIMER8253芯片基本功能概述8253是Intel经典的可编程计数器/定时器芯片,内部集成3个独立的16位计数通道,支持2MHz计数频率、6种工作方式和二进制/BCD码两种计数制,是PC机定时系统的核心元件。Intel8253·DIP封装·可编程定时器芯片013个独立通道:每片8253包含3个完全独立的16位计数通道(CH0/CH1/CH2),可同时执行不同的定时/计数任务3×CH02计数频率范围:每个通道最高支持2MHz输入时钟频率,改进型8254-2将频率上限提升至10MHz2MHz03双制式计数:支持二进制计数(初值0000H-FFFFH)和BCD码计数(初值0000-9999)BIN/BCD046种工作方式:每个通道可独立编程为方式0至方式5,满足不同定时和波形产生需求6种模式INTERNALARCHITECTURE8253内部结构与引脚功能8253采用24引脚DIP封装,内部由数据总线缓冲器、读/写逻辑电路和3个独立计数器通道组成。每个通道对外暴露CLK、GATE和OUT三个引脚,配合片选和读写控制信号实现灵活的编程访问。数据总线缓冲器8位双向三态缓冲器(D0–D7),连接系统数据总线,用于传输控制字、计数初值和读出计数值。D0–D7读/写逻辑电路通过CS(片选)、RD(读)、WR(写)和A1/A0(端口选择)5个信号组合,决定访问哪个通道或控制寄存器。5Signals计数通道信号引脚每个通道对外暴露3个信号引脚:CLK接收计数时钟脉冲、GATE控制计数启停、OUT输出计数完成或波形信号。CLK·GATE·OUT端口地址分配A1A0=00/01/10分别选择计数器0/1/2的数据端口,A1A0=11选择控制寄存器端口用于写入控制字。4PortsControlWordFormat8253控制字格式详解8253的8位控制字完整定义了通道选择、读写格式、工作方式和计数制四个配置维度。正确编写控制字是编程8253的第一步,直接决定了计数器的工作行为和数据传输格式。8253控制字各位定义位功能选项说明D7D6通道选择00=CH0,01=CH1,10=CH2D5D4读写格式00=锁存,01=低8位,10=高8位,11=先低后高D3D2D1工作方式000=方式0,001=方式1,...,101=方式5D0计数制0=二进制(0000-FFFF),1=BCD码(0000-9999)控制字从高到低依次设定通道选择、读写格式、工作方式和计数制,是8253编程初始化的核心参数。WorkingModes8253工作方式0与方式1方式0(计数结束中断)是最常用的定时中断方式,计到0时OUT变高可触发CPU中断;方式1(可编程单稳态)由GATE触发产生精确宽度的定时脉冲。两者是8253定时应用的基础工作模式。方式0:计数结束中断Mode0—InterruptonTerminalCount01写入控制字后OUT初始为低电平,写入计数初值后开始在每个CLK下降沿减1计数。02计数值减到0时OUT变为高电平并保持,可利用此上升沿向CPU发出中断请求或作为事件完成标志。03计数过程中GATE必须保持高电平,若GATE变低则暂停计数,恢复高电平后从中断处继续计数。方式1:可编程单稳态Mode1—ProgrammableOne-Shot01GATE上升沿触发开始计数,OUT立即变为低电平,每来一个CLK脉冲计数值减1。02计数值减到0时OUT恢复高电平,输出一个宽度=初值×CLK周期的精确负脉冲。03计数过程中再次出现GATE上升沿会重新加载初值并重新计数,实现可重触发的单稳态定时。8253Timer·Mode2&38253工作方式2与方式3方式2输出周期性窄负脉冲实现精确分频;方式3输出50%占空比方波,是时钟信号与蜂鸣器驱动的标准方式。方式2:频率发生器RateGenerator·Divider计数器自动重装初值循环计数,每计N个CLK脉冲在OUT端输出一个CLK宽度的负脉冲,实现N分频PC机中CH0工作在方式2,以1.193MHz时钟和初值65536产生每秒18.2次的定时器中断(IRQ0)18.2次/秒·IRQ0方式3:方波发生器SquareWaveGenerator输出对称方波:初值N为偶数时高/低电平各持续N/2个CLK周期,占空比精确50%50%占空比PC机中CH2工作在方式3驱动扬声器蜂鸣器,通过改变初值可产生不同频率的音调8253定时器/计数器8253方式4/5与编程实例方式4和方式5分别通过软件和硬件触发产生单次选通脉冲。掌握8253编程需要理解控制字编写、端口地址分配和初值写入的完整流程。方式4与方式501方式4·软件触发选通写入初值即开始计数,计到0时OUT输出一个CLK周期的负脉冲,适合定时触发场景。SoftwareTrigger02方式5·硬件触发选通由GATE上升沿触发开始计数,计到0时同样输出一个CLK周期负脉冲,适合外部事件触发。HardwareTrigger编程实例:CH0方式2定时01控制字解析00110100B=34H选CH0、先低后高读写、方式2、二进制计数34H02端口与初值写入端口地址:40H(CH0数据口)、43H(控制口)初值10000=2710HOUT43H,34H→OUT40H,10H→OUT40H,27H10000cyclesIBMPC/XT·8253Timer8253在IBMPC中的典型应用IBMPC/XT中8253的三个通道分别承担系统定时(CH0)、DRAM刷新(CH1)和扬声器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论