电器led驱动与按键读取电路及控制方法

文档序号:9473912阅读:686来源:国知局
电器led驱动与按键读取电路及控制方法
【技术领域】
[0001]本发明涉及一种电器LED驱动与按键读取电路及控制方法。
【背景技术】
[0002]电器产品中,会经常使用LED发光灯和开关按键,初期,人们使用直拉式来驱动LED,同时也是用直拉式来读取开关按键,参见图1所示;这种方式使用MCU主控芯片的1口资源很多,而1 口越多的MCU主控芯片就越贵;在LED较多,按键也较多的情况下使用大量的MCU资源,明显不合适了,于是人们做了改进,用阵列式的扫描显示方式,并结合按键的读取,电路图参见附图2所示,这种方式大大节约了 MCU资源,节约了成本。

【发明内容】

[0003]本发明所要解决的第一个技术问题是针对上述现有技术提供一种能结构更为合理、使用MCU主控芯片资源更少的电器LED驱动与按键读取电路。
[0004]本发明所要解决的第二个技术问题是提供一种具有上述结构的电器LED驱动与按键读取电路的控制方法。
[0005]本发明解决上述第一技术问题所采用的技术方案为:一种电器LED驱动与按键读取电路,其特征在于:包括M个开关按键,X*Y颗LED发光管,Μ、X、Y均为自然数,且M小于等于X ;Μ+Χ个电阻,以及MCU控制芯片,其中:
[0006]第一开关按键的第一端均接地,第一开关按键的第二端连接第一电阻后引出第一个SEG连接端;第二开关按键的第一端均接地,第二开关按键的第二端连接第二电阻后引出第二个SEG连接端;……第M开关按键的第一端均接地,第M开关按键的第二端连接第M电阻后引出第M个SEG连接端;
[0007]而Χ*Υ颗LED发光管排列成X行Y列的阵列;如果Y为偶数,将第一列LED发光管的负极和第二列LED发光管的正极连接在一起引出第一个COM连接端;将第三列LED发光管的负极和第四列LED发光管的正极连接在一起引出第二个COM连接端;……将第Y-1列LED发光管的负极和第Y列LED发光管的正极连接在一起引出第Υ/2个COM连接端;如果Y为奇数,将第一列LED发光管的负极和第二列LED发光管的正极连接在一起引出第一个COM连接端;将第三列LED发光管的负极和第四列LED发光管的正极连接在一起引出第二个COM连接端;……将第Υ-2列LED发光管的负极和第Y-1列LED发光管的正极连接在一起引出第(Y-1)/2个COM连接端,将第Y列LED发光管的负极连接在一起引出第(Y+l)/2个COM连接端;
[0008]Y为偶数时,第一行第一列LED发光管的正极、第一行第二列LED发光管的负极、第一行第三列LED发光管的正极、第一行第四列LED发光管的负极、……第一行第Y-1列LED发光管的正极、第一行第Y列LED发光管的负极连接在一起后连接第Μ+1电阻后与第一个SEG连接端连接;Υ为奇数时,第一行第一列LED发光管的正极、第一行第二列LED发光管的负极、第一行第三列LED发光管的正极、第一行第四列LED发光管的负极、……第一行第Y-2列LED发光管的正极、第一行第Y-1列LED发光管的负极、第一行第Y列LED发光管的正极连接在一起后连接第M+1电阻后与第一个SEG连接端连接;
[0009]Y为偶数时,第二行第一列LED发光管的正极、第二行第二列LED发光管的负极、第二行第三列LED发光管的正极、第二行第四列LED发光管的负极、……第二行第Y-1列LED发光管的正极、第二行第Y列LED发光管的负极连接在一起后连接第M+2电阻后与第二个SEG连接端连接;Y为奇数时,第二行第一列LED发光管的正极、第二行第二列LED发光管的负极、第二行第三列LED发光管的正极、第二行第四列LED发光管的负极、……第二行第Υ-2列LED发光管的正极、第二行第Y-1列LED发光管的负极、第二行第Y列LED发光管的正极连接在一起后连接第Μ+2电阻后与第二个SEG连接端连接;
[0010]......
[0011]Y为偶数时,第X行第一列LED发光管的正极、第X行第二列LED发光管的负极、第X行第三列LED发光管的正极、第X行第四列LED发光管的负极、……第X行第Y_1列LED发光管的正极、第X行第Y列LED发光管的负极连接在一起后连接第M+X电阻后与第X个SEG连接端连接;Y为奇数时,第X行第一列LED发光管的正极、第X行第二列LED发光管的负极、第X行第三列LED发光管的正极、第X行第四列LED发光管的负极、……第X行第Υ-2列LED发光管的正极、第X行第Y-1列LED发光管的负极、第X行第Y列LED发光管的正极连接在一起后连接第Μ+Χ电阻后与第X个SEG连接端连接;
[0012]X个SEG连接端分别与MCU控制芯片的X个1引脚连接;
[0013][(Y+l)/2]个COM连接端分别与MCU控制芯片的[(Υ+1)/2]个1引脚连接,[]为向上取整符号。
[0014]作为其中的一种方案,当所述M = 7,所述X = 8,所述Y = 4。
[0015]本发明解决上述第二个技术问题采用的技术方案为:上述电器LED驱动与按键读取电路的控制方法,其特征在于:MCU控制芯片采用的中断间隔时间为2ms,MCU控制芯片对7个开关按键的读取和对32颗LED发光管的驱动在上述中断时间内中完成,MCU控制芯片在上述中断时间内的操作流程包括:
[0016]步骤(I)、MCU控制芯片启动2ms中断后,立即将与8个SEG连接端连接的8个1引脚连接及与2个COM连接端连接的2个1引脚连接转成高阻态;
[0017]步骤⑵、设置事件参数led_com,令led_com++ ;
[0018]步骤(3)、判断led_com是否大于8,若是,令led_com = 0,然后执行步骤⑷,若否,直接转步骤(4);
[0019]步骤(4)、判断led_com的值,然后根据不同led_com值,执行不同操作:
[0020]名称解释:有效的SEG 口输出——当COM 口开启低电平的情况下,如果SEG 口为高电平时,能点亮连接在相应SEG 口与COM 口之间的LED灯,而且需要点亮这颗LED时,称为有效的SEG 口输出高电平,如果不需要点亮这颗LED灯时,该SEG 口为无效状态,即维持高阻态;当COM 口开启高电平的情况下,如果SEG 口为低电平时,能点亮连接在相应SEG 口与COM 口之间的LED灯,而且需要点亮这颗LED时,称为有效的SEG 口输出低电平,如果不需要点亮这颗LED灯时,SEG 口为无效状态,即维持高阻态;
[0021]若led_com = 0,将与第一个SEG连接端至第4个SEG连接端连接的4个1引脚有效的SEGO?SEG3输出低电平;将与第一个COM连接端1引脚COMO输出高电平;
[0022]若led_com = I,将与第5个SEG连接端至第8个SEG连接端连接的4个1引脚有效的SEG4?SEG7输出低电平;将与第一个COM连接端1引脚COMO输出高电平;
[0023]若led_com = 2,将与第一个SEG连接端至第4个SEG连接端连接的4个1引脚有效的SEGO?SEG3输出高电平;将与第一个COM连接端1引脚COMO输出低电平;
[0024]若led_com = 3,将与第5个SEG连接端至第8个SEG连接端连接的4个1引脚有效的SEG4?SEG7输出高电平;将与第一个COM连接端1引脚COMO输出低电平;
[0025]若led_com = 4,将与第一个SEG连接端至第4个SEG连接端连接的4个1引脚有效的SEGO?SEG3输出低电平;将与第2个COM连接端1引脚COMl输出高电平;
[0026]若led_com = 5,将与第5个SEG连接端至第8个SEG连接端连接的4个1引脚有效的SEG4?SEG7输出低电平;将与第二个COM连接端1引脚COMl输出高电平;
[0027]若led_com = 6,将与第一个SEG连接端至第4个SEG连接端连接的4个1引脚有效的SEGO?SEG3输出高电平;将与第二个COM连接端1引脚COMl输出低电平;
[0028]若led_com = 7,将与第5个SEG连接端至第8个SEG连接端连接的4个1引脚有效的SEG4?SEG7输出高电平;将与第二个COM连接端1引脚COMl输出低电平;
[0029]若led_com = 8,转至按键读取子程序;
[0030]按键读取子程序包括:
[0031]步骤(a)、将与第一个SEG连接端连接的1引脚SEGO输出高电平后直接转成输入模式;然后使用两个空指令一一NOP指令;然后读取SEG0,判断SEGO是否等于0,若是,则判断第一开关按键的状态为“按下”状态,否则判断第一开关按键的状态为“弹起”状态;随即将与第一个SEG连接端连接的1引脚SEGO转成高阻态;
[0032]步骤(b)、将与第二个SEG连接端连接的1引脚SEGl输出高电平后直接转成输入模式;然后使用两个空指令一一NOP指令;然后读取SEGl,判断SEGl是否等于0,若是,则判断第二开关按键的状态为“按下”状态,否则判断第二开关按键的状态为“弹起”状态;随即将与第二个SEG连接端连接的1引脚SEGl转成高阻态;
[0033]步骤(c)、将与第三个SEG连接端连接的1引脚SEG2输出高电平后直接转成输入模式;然后使用两个空指令一一NOP指令;然后读取SEG2,判断SEG2是否等于0,若是,则判断第三开关按键的状态为“按下”状态,否则判断第三开关按键的状态为“弹起”状态;随即将与第三个
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1