HT16K33应用于DVDPlayer面板范例说明--使用C语言1HT16K33应用于DVDPlayer面板范例说明--使用C语言文件编码:AN0369S简介HT16K33是一颗具备内存映像和多功能LED驱动控制的IC,最大可用于驱动128段LED显示屏(16segments*8commons)、以及最大13*3的矩阵键盘电路,HT16K33的功能配置使其适用于各类LED显示模块和显示系统,如:工业控制指示、数字时钟、温度计、计数器、仪器仪表、摄像机等场所的应用.
HT16K33易于控制,MCU通过IC方式与HT16K33进行数据交互.
本文以C语言(HOLTEKV3)实例程序,配合HOLTEKHT16K33DVD面板显示DemoBoard,介绍HT16K33按键信息读取、LED显示状态更新等操作.
Demo基本特性MCU基本特征工作电压DC:4.
5V~5.
5V集成内部RC振荡器IC总线通信接口FlashMCU可通过ICP五线接口直接刻录更新MCU程序16级LED亮度调整功能,并短暂显示调光值1~1616*8位的RAM储存显示数据最大支持16*8模式驱动:16Segments和8Commons最大支持13*3个按键(矩阵按键扫描)待机模式下,支持任何按键均可解除待机模式,执行相应的工作可选封装类型有:20/24/28-pinSOPDemo功能和使用说明Demo功能说明LED显示功能显示相应的Track或时间及所处的音乐模式状态.
播放曲目和LEDPanel亮度设置功能进行播放曲目选择、LEDPanel显示亮度级数调整动作.
音乐模式设置功能HT16K33应用于DVDPlayer面板范例说明--使用C语言2在Stop模式下,按键选取设定播放音乐模式.
Demo使用说明击键功能PowerLED显示开关键1.
开启LEDPanel显示,PowerLED常亮.
2.
进入待机状态,关闭LEDPanel显示,PowerLED闪烁.
若是在第一次PowerKeyon时(initial):1.
曲目、时、分都显示"0",初始值:DVD亮.
2.
转盘、and全亮.
3.
亮度设定最大(显示016).
4.
由于HT16K33有支持,按任何键就可以解除Standby模式,所以当你读到的KeyData是属于那一种功能,就会做相关的显示.
(譬如:按到PlayKey,会启动Play的功能和显示).
Mode播放音乐模式设置键初始值DVD亮,按一次『Mode』键,DVD显示关闭、VCD显示点亮,进入VCD音乐播放模式;再按一次『Mode』键,VCD显示关闭、MP3显示点亮,进入MP3音乐播放模式;再按一次『Mode』键,MP3显示关闭,DVD显示点亮.
三个播放模式循环调整.
Play曲目播放键1.
和亮,转盘开始转动.
2.
曲目会从"001"开始(累增).
3.
分和秒都做往上数.
Stop曲目播放停止键1.
曲目、时、分都显示"0".
2.
转盘、和全亮.
3.
和灭.
Pause曲目播放暂停键1.
显示目前停止的状态,不做转动和时间计数,除非有按到PlayKey.
2.
按下BrightKey,可以在显示曲目区显示目前亮度,可以做亮度调整,调整完毕等一段时间,又回到刚刚停止时的曲目显示.
PBCPBC功能选择键1.
按下显示"PBC",再按一次"PBC"不亮.
2.
在PBC模式下,不亮.
Fast曲目调整键1.
必须在Play状态下动作.
2.
再按UpKey目前曲目加一,显示在曲目区,最大"999".
3.
再按DownKey目前曲目减一,显示在曲目区,最小"000".
BrightLEDPanel亮度调整键在任何状态下,都可以调整,显示从000~016,显示在曲目区.
(属于短暂显示).
Up递增键1.
在FastSW模式下,曲目加一,持续按着会累加上去.
2.
在BrightSW模式下,LEDPanel亮度加一,持续按着会累加上去.
Down递减键PowerICPTimerTrackKeyBoardHT16K33应用于DVDPlayer面板范例说明--使用C语言31.
在FastSW模式下,曲目减一,持续按着会递减下来.
2.
在BrightSW模式下,LEDPanel亮度减一,持续按着会递减下来.
硬件设计原理硬件模块图HT16K33HT68F30-1ICBus5VAdapterKeyBoard图1硬件方块功能说明整个系统由5VDC的稳压电源、轻触按键、LED显示屏、主控MCUHT68F30-1、驱动芯片HT16K33等组成.
轻触开关按键:根据相应的按键选择相应的功能.
LED显示屏:用来指示相应功能.
稳压电源:提供MCU所需的5V电源.
HT16K33应用于DVDPlayer面板范例说明--使用C语言4硬件原理图HT68F30-1控制电路图2电路描述:PA0、PA2、RESB.
ICP下载线PA3/INT0HT16K33INT信号输入PA4、PA5IC数据和时钟引脚PB5.
PowerLED驱动引脚HT16K33上电工作在待机模式,PowerLED闪烁,LEDPanelDisplayOff.
按下Power按键,PowerLED常亮,离开待机模式.
若再按Power按键,就又进入待机模式,PowerLED闪烁.
HT16K33键盘和LEDPanel驱动电路图3HT16K33应用于DVDPlayer面板范例说明--使用C语言5软件设计流程图及说明实例程序包含主程序和系统初始化、定时中断服务、HT16K33按键侦测、LED面板显示等子程序,程序相关流程图及说明如下所示,程序请参见.
主程序流程图StartMCUInitialDelay100msfor16K33Poweronreset1.
Internalsystemclockenable2.
ROW/INTpinsetINTOutputLowlevel3.
Diming,Blinking,DisplayalloffBrightLevelandDatathatwilltransimittoDisplayRAMinitialKey_Detect():1.
AccordingtotheExternalIntFlagbKey_INTorLongpresskeyFlagbKey_Hold,ReadRAM40H~45HtocheckKeyTrigger,2.
IfHasKeyTrigger,ReadKeyValueandSettheRelevantFlag,thendealwiththeKeyeventsandsetVariabletherelevantVauleBright_Adjust():DimmingSetAccordingtotheKeyFlag,definethepulsewidthofROWMusic_Adjust():PlaylistsSetAccordingtotheKeyFlag,definePlaylistsTrack_Time_Display():TrackUpdateInterval:200msPlayTimeUpdateInterval:1sLED_Panel_Update()AccordingtothesettedVariableValue,finishwritingthedisplayRAM00H~0DHNCLRWDTbTB0_INT=1YHT16K33应用于DVDPlayer面板范例说明--使用C语言6主程序流程图说明主程序主要完成以下工作:MCUSFR&RAM初始化执行适当延时,令MCU在初始化HT16K33前,HT16K33已完成上电复位动作MCU初始化HT16K33内部时钟、亮度、闪烁、显示等程序主循环,包含按键侦测及处理、显示数据更新等TimeBase0设定的中断时间为32ms左右,用于设定按键扫描间隔.
根据外部中断设置相应的标志位,可读取按键.
读取按键后根据相应按键进行处理,设置好相应的按键标志位.
TimeBase1用于设定LEDPanel的显示更新周期以及根据相应的标志位控制PowerLED的工作状态.
按键扫描子程序流程图StartReadKeyDataRAMofaddress0x40~0x45ContinuouslyandinoneoperationbKey_INT=0bKey_Hold=0SavethecurrentKeyDatabKey_INT=1ORbKey_Hold=1(Externalinterruptdetected16K33interruptsignaloutput)OR(DetectWhetherisLongkeys)AllKeyDatais0x00DeterminewhetherakeyispressedbKey_Hold=1SavethecurrentKeyDataDealwiththeKeyeventsAllKeyDataisequaltothelastvaluesDeterminewhetherakeyisLongpressedGV_U8_Key_Hold_Timer=0x00DealwiththeLongKeysevents++GV_U8_Key_Hold_Timer>=0x05EndYNYYYNNNHT16K33应用于DVDPlayer面板范例说明--使用C语言7按键扫描子程序流程图说明在每个按键扫描周期内,执行一次按键扫描子程序.
若外部中断检测到HT16K33中断信号输出的有效边缘信号时,设定中断信号标志位bKey_INT,用于读取HT16K33KeyDataRAM0x40~0x45.
若是第一次检测到按键值,保存当前按键值,并根据按键值处理按键相应功能,并且设定标志位bKey_Hold,用于在接下来的320ms时间内,继续读取HT16K33KeyDataRAM,确认按键是否被松开,按键未松开判定为长按按键,按键松开即判定为常规按键.
LEDPanel显示子程序流程图StartLookUpTableforVariables:GV_U8_DRow0~GV_U8_DRow9AccordingtoShiftalgorithm:Data_Process1()/Data_Process2()dealwiththesettedVariableValue,finishwritingthedisplayRAM00H~0DHEndLEDPanel显示子程序流程图说明在LED_Panel_Update()子程序中,根据处理的变量值通过进行移位算法后,对DisplayRAM进行改写,更新出新的数据,以及判断当前是否处于亮度调整时间,对LEDPanel亮度值的调整及显示.
HT16K33DisplayRAM的映射关系如下:HT16K33据DisplayRAM中的每个bit数据自动产生驱动波形,控制着对应显示字段的亮灭,受控的字段取决于PanelCOM和ROW的联机.
文中使用的LEDPanel为8COM*10ROW,Panel中的数码管a~g字段分布在每个COM上,因而要改变一个数码管的显示,需要改写8个仁元组的DisplayRAM.
为了编写程序方便,MCU将对应的ROW0~ROW9的10个字节数据(GV_U8_DRow0~GV_U8_DRow9,如GV_U8_DRow0对应ROW0与COM0~COM7连接的字段)进行处理.
分别将GV_U8_DRow0~GV_U8_DRow7中的bit0移位出来汇整成对应DisplayRAM地址0x00的待更新数据,依此分别将bit0~bit7的数据移出构造出DisplayRAM中0x00~0x0E的偶数地址的待更新数据.
如上描述,再分别将GV_U8_DRow8~GV_U8_DRow9中的数据移位出来构造DisplayRAM中0x01~0x0F的奇数地址的待更新数据.
HT16K33应用于DVDPlayer面板范例说明--使用C语言8实例程序移位数据的程序流程图如下:Data_Process1()GCC_RRC(GV_U8_DRow1);GCC_RRC(DRow_num_data);GCC_RRC(GV_U8_DRow2);GCC_RRC(DRow_num_data);GCC_RRC(GV_U8_DRow3);GCC_RRC(DRow_num_data);GCC_RRC(GV_U8_DRow4);GCC_RRC(DRow_num_data);GCC_RRC(GV_U8_DRow5);GCC_RRC(DRow_num_data);GCC_RRC(GV_U8_DRow6);GCC_RRC(DRow_num_data);GCC_RRC(GV_U8_DRow7);GCC_RRC(DRow_num_data);EndGCC_RRC(GV_U8_DRow0);GCC_RRC(DRow_num_data);WriteDRow_num_dataintoDisplayRAM偶数地址DisplayRAM移位流程HT16K33应用于DVDPlayer面板范例说明--使用C语言9Data_Process2()GCC_RRC(GV_U8_DRow9);GCC_RRC(DRow_num_data);Temp=0x00;GCC_RRC(Temp);GCC_RRC(DRow_num_data);Temp=0x00;GCC_RRC(Temp);GCC_RRC(DRow_num_data);Temp=0x00;GCC_RRC(Temp);GCC_RRC(DRow_num_data);Temp=0x00;GCC_RRC(Temp);GCC_RRC(DRow_num_data);Temp=0x00;GCC_RRC(Temp);GCC_RRC(DRow_num_data);Temp=0x00;GCC_RRC(Temp);GCC_RRC(DRow_num_data);EndGCC_RRC(GV_U8_DRow8);GCC_RRC(DRow_num_data);WriteDRow_num_dataintoDisplayRAM奇数地址DisplayRAM移位流程HT16K33应用于DVDPlayer面板范例说明--使用C语言10PCBLayout注意事项SCL、SDA上的RC滤波器件(电阻、电容)应尽量靠近IC如:R5、R6、C6、C7.
RESET电路要尽量靠近MCU电源和地之间的电容如C2(0.
1μF)、C5(0.
1μF)尽量靠近IC电源线加粗,电源要先过电容,再接到负载参考文献参见HT16K33Datasheet.
SourceCode档案,请参见压缩文件案.
RESET电路尽量靠近MCU电源先过0.
1μF电容,再接到IC
PQ.hosting怎么样?PQ.hosting是一家俄罗斯商家,正规公司,主要提供KVM VPS和独立服务器,VPS数据中心有香港HE、俄罗斯莫斯科DataPro、乌克兰VOLIA、拉脱维亚、荷兰Serverius、摩尔多瓦Alexhost、德国等。部分配置有变化,同时开通Paypal付款。香港、乌克兰、德国、斯洛伐克、捷克等为NVMe硬盘。香港为HE线路,三网绕美(不太建议香港)。免费支持wi...
妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...
简介酷盾安全怎么样?酷盾安全,隶属于云南酷番云计算有限公司,主要提供高防CDN服务,高防服务器等,分为中国境内CDN,和境外CDN和二个产品,均支持SSL。目前CDN处于内测阶段,目前是免费的,套餐包0.01一个。3G流量(高防CDN)用完了继续续费或者购买升级包即可。有兴趣的可以看看,需要实名的。官方网站: :点击进入官网云南酷番云计算有限公司优惠方案流量3G,用完了不够再次购买或者升级套餐流量...
模块图片为你推荐
支付宝蜻蜓发布刷脸支付加盟,支付宝蜻蜓刷脸设备出后,微信也出了青蛙刷脸设备,感觉很有前景,大伙觉得呢?苹果appstore宕机苹果appstore打不开怎么办重庆电信断网这几天为什么重庆电信的网络总是这么不稳定大飞资讯手机出现热点资讯怎么关闭刚刚网女友刚开始用震动棒很舒服身上抽搐时,她说疼不让用了,是真的疼还是太刺激她受不了?申请400电话400电话如何申请办理?美国独立美国是什么时候独立的?什么是seoseo怎么学呢?店铺统计怎样查淘宝店铺的销售总额财务单据会计里各种票据的定义及区分
域名注册godaddy 工信部域名备案查询 日本软银 主机 l5639 20g硬盘 抢票工具 地址大全 日本bb瘦 网站在线扫描 国外视频网站有哪些 银盘服务 架设邮件服务器 ebay注册 百度云空间 后门 umax 双11促销 小夜博客 hdroad 更多