欢迎来到天天文库
浏览记录
ID:51419105
大小:560.50 KB
页数:10页
时间:2020-03-24
《键盘及LED驱动设计方案.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1•模块描述该模块能够肓接驱动8个共阴式(或8个共阳式)数码管位(或64只独立的LED),同时还可以扫描管理多达64只按键。其屮有8只按键还可以作为功能键使用,如同电脑键盘上的Ctrl>Shift>Alt键一样。2•模块总体设计2.1总体实现结构图1:键盘扫描及LED驱动模块结构图2.2总体实现描述timedistribute模块为displayctrl和keyscan模块分配工作时间,并控制interface模块双向端口的输入输出的转换。displayctrl模块根据dpram提供的显示数据及要扫描的数码管的个数scannum提供相应的显示控制信号及显示数据。k
2、eyscan模块完成对键盘的扫描及对功能键、普通键及连击次数、按键键值的判断。2.3接口信号定义序号信号名位宽I/O描述1dpram0〜dpram764I对应的8个数码管的数据。2scannum3I要显示的数码管的个数。3sei8o数码管的位选信号。4dt8o数码管的显示数据5P_wr1o寄存器PressKey和RepeatCnt的写信号。6presskey8o普通按键的键值。当扫描到有普通按键按下时,输出按键键值,结果将存于键值寄存器PressKey屮。7repeatent8O普通键的连击次数。当普通按键连续按下时,输出按键的连击次数,结果将存于连击次数计数器R
3、epeatCnt屮。8functionkey8O功能键的状态。每一位对应一个功能键(F7〜F0),第0位(LSB)对应F0,第1位对应F1,依次类推,第7位(MSB)对应F7。某一功能键被按下时,相应的功能键寄存器FunctionKey对应的位就清零。9f_wr1O寄存器FunctionKey写使能信号。10flashswh8I数码管位的闪烁和不闪烁状态。例:当FlashSwth.O设置为1时,贝!]对应的管位0处于闪烁状态;若设置为0时,该管位不闪烁。(FlashSwth.7〜FlashSwth.O对应DIG7〜DIG0)。11flashfreq8I数码管闪烁频
4、率和占空比。高4位表示闪烁时亮的持续时间,低4位表示闪烁时灭的持续时问。FlashFreq的1个单位相当于256ms(亮和灭的时间范围为1〜16,0000B相当1个时间单位)。12chg10Dig端口的控制信号。13kin8I扫描输入信号。14kout_data1o扫描输出信号。15kout_sel80Seg端口控制信号。1•模块划分该部分电路可划分为三个部分:timedistribute(时间分配模块)、displayctrl(显示控制模块)、keyscan(键盘扫描模块)。1.timedistribute模块完成的基本功能分配displayctrl模块和key
5、scan模块的T作时间;提供端口复用的控制信号;2.displayctrl模块完成的基本功能分析扫描数码管的个数,然示为要显示的数码管分配扫描时间;产生数码管显示控制信号,并选择相应的显示数据;分析闪烁信息,控制数码管闪烁显示;3.keyscan模块完成的基本功能在系统分配的时间内完成键盘的扫描,并检测扫描结果;消除按键抖动的影响;分析判断按键是普通按键还是功能键;判断按键键值及连击的次数;提供产生的按键信息数据有效信号;1•分模块实现4.1timedistribute模块实现该模块将系统时间分为两部分,一部分模块displayedT•作,另一部分模块keysca
6、n丁作,其中1ms中keyscan工作时间为8us,其余时间displayctrlT.作;产生控制端口复用的控制信号。该模块实际上就是一个分频器,将系统1MHz时钟分为所需要的时钟频率(lKHz)。具体实现略。4.2displayctrl模块实现该模块产牛数码管的显示控制信号及选择相应的输出数据。4.2.1接口信号定义序号信号名位宽I/O描述1dpram64I8个数码管64个管段的显示数据。2seannum3I显示数码管的个数。3en1I控制信号,为1时工作,为0时不工作。4elk1I工作时钟。5res1I系统复位信号。6sei80数码管显示控制信号。7dt80数
7、码管显示数据。8flashswh8I数码管位的闪烁和不闪烁状态。例:当FlashSwth.O设置为1时,则对应的管位0处于闪烁状态;若设置为0时,该管位不闪烁。(FlashSwth.7〜FlashSwdi.O对应DIG7〜DIG0)。9flashfreq8I数码管闪烁频率和占空比。高4位表示闪烁时亮的持续时间,低4位表示闪烁时灭的持续时间。FlashFreq的1个单位相当于256ms(亮和灭的时间范围为1〜16,0000B相当1个时间单位)。4.2.2displayctrl详细设计该模块的电路结构框图如下:图2:displayctrl模块结构图图屮,state_r
8、eg是当前
此文档下载收益归作者所有