电器终端控制板中显示单元扫描驱动方法技术

技术编号:12512949 阅读:49 留言:0更新日期:2015-12-16 10:41
本发明专利技术涉及一种电器终端控制板中显示单元扫描驱动方法,其中电器终端控制板包括显示单元,对显示单元进行扫描驱动的自带flash存储器的单片机,其中显示单元具有m路扫描驱动口,显示单元的m路扫描驱动口分别与单片机的m个IO口连接,单片机通过输出固定的显示扫描周期对显示单元进行驱动扫描,其特征在于:单片机输出固定的显示扫描周期T为:T=(m*Ts+Ti),其中Ts为显示单元中单路扫描驱动口的扫描时间,Ti为扫描空闲时间,而扫描空闲时间设定为flash存储器进行用户数据存储的执行时间,在显示扫描空闲状态时,执行flash用户数据存储操作,将用户数据存储至flash存储器内。方法解决了因使用flash存储用户数据过程中屏蔽中断,使得扫描输出频率不一致而造成的显示单元闪烁问题。

【技术实现步骤摘要】

本专利技术涉及电器终端控制板中用户数据存储及显示单元驱动方法。
技术介绍
电器终端控制板常常需要保存一些用户数据,比如说控制目标温度、工作模式等等。早期都用EEPROM来储存用户数据,EEPROM具有存储速度快,重复擦写次数多(高达100万次)的优点,但是价格昂贵。随着单片机工艺技术的发展,单片机的ROM(以下简称flash)空间越来越大,而且制作成本低廉。Flash的缺点是擦除速度慢,重复擦写的次数少,绝大多数都在I万次以下。因为flash空间大,这恰恰弥补擦写次数少的问题;比如储存把2byte的数据存储到2k的空间里,就能写1000万次(2k*l万/2)。由于flash便宜(单片机自带的ROM空间,产品控制程序用不完部分可以用来做用户数据存储),很多设计工程师为了节约成本开始用flash来做用户数据存储。但是在使用flash来做用户数据存储过程中,也反映出不少问题,设计出来的产品也偶然遭到用户的投诉,其主要原因是用户数据存储在flash过程中出现显示单元(数码管或者显示LED)闪烁问题。从生产成本或是设计工程师使用习惯考虑,由于单片机中I/O口数量有限,电气终端的数码管或者LED显示管等现实单元的驱动通常做成扫描输出。而为了使得显示单元稳定显示,即保持显示扫描输出频率一致,设计工程师通常把显示扫描操作放在时钟中断函数中。值得一提的是,现在使用的很多单片机,如现代的类51单片机,在使用flash来存储用户数据过程中是屏蔽中断的。因此,设计工程师设计的程序在使用flash对用户数据进行存储过程中会屏蔽中断(必须要屏蔽,要不然CP指针会“飞车”),从而使得显示扫描输出频率不一致。直观的现象为数码管或者显示LED闪烁。目前来看,现有解决此类问题的方法是增加外部存储单元EEPR0M,或者是采用直接驱动LED的方式,或者是增加驱动芯片来驱动LED ;这些方式不仅仅增加了生产成本,更是增加了硬件和软件的设计难度。
技术实现思路
本专利技术所要解决的技术问题是针对上述现有技术提供一种电器终端控制板中用户数据存储及显示单元驱动方法,该方法解决了因使用flash存储用户数据过程中屏蔽中断,使得扫描输出频率不一致而造成的显示单元的闪烁问题。本专利技术解决上述技术问题所采用的技术方案为:1、一种,其中电器终端控制板包括显示单元,和对显示单元进行扫描驱动的单片机,该单片机中自带flash存储器,其中显示单元具有m路扫描驱动口,显示单元的m路扫描驱动口分别与单片机的m个1 口连接,单片机通过输出固定的显示扫描周期对显示单元进行驱动扫描,其特征在于:所述单片机输出固定的显示扫描周期T为:T = (m*Ts+Ti),其中Ts为显示单元中单路扫描驱动口的扫描时间,Ti为扫描空闲时间,而扫描空闲时间设定为用户使用单片机自带的flash存储器进行用户数据存储的执行时间,然后在在显示扫描空闲状态时,执行flash用户数据存储操作,将用户数据存储至单片机自带的flash存储器内。作为改进,使用示波器捕捉用户使用单片机自带的flash存储器进行用户数据存储的执行时间,具体为:在单片机上电初始化时对单片机某一特定的1 口先输出低电平“0”,在进入用户数据存储时,使该1 口输出高电平“ I ”,在用户数据存储结束时,将该1 口恢复输出低电平“0”,然后用示波器捕捉该1 口高电平并测试高电平“I”的时间,这个时间就是用户使用单片机自带的flash存储器进行用户数据存储的执行时间。再改进,其特征在于:显示扫描的占空比D = Ts/T,根据Ti,选择的Ts需保证I/D>57赫兹。再改进,设事件寄存器为LED_C0M,设Τακ为时钟中断周期,Ti为扫描空闲时间,Ts为显示单元中单路扫描驱动口的扫描时间,bdisplay_idle为显示扫描空闲状态标志,bsave和bsavel为用户数据保存标志,bsave和bsavel的初始值均为false,当单片机需要将用户数据存储进单片机自带flash存储器时,执行flash用户数据存储操作,并将bsave赋值为ture ;C0M1?COMm为显示单元的m路扫描驱动口 ;所述单片机的显示定时中断流程为:步骤1、清除中断标志,步骤2、令 LED_C0M++ ;步骤3、判断LED_C0M是否大于等于m+1,如是,令LED_C0M = 0,执行步骤4,如不是,执行步骤4 ;步骤4、置COMl?COMm为无效输出;步骤5、执行事件选择:如LED_C0M = 0,令Τακ= Ts,将COMl对应的显示信息输出,置COMl为有效输出;如LED_C0M = I,将COM2对应的显示信息输出,置COM2为有效输出;如LED_C0M = 2,将COM3对应的显示信息输出,置COM3为有效输出;如LED_C0M = 3,将COM4对应的显示信息输出,置COM4为有效输出;...... 如LED_C0M = m_l,将COMm对应的显示信息输出,置COMm为有效输出;如LED_C0M = m,令 Tclk= Ti,判断 bsavel = = true ?如是,令 bdisplay_idle ==true,然后结束,如不是,结束;所述单片机的flash用户数据存储函数的运行流程为:步骤a、判断bsave = = true ?如是,执行步骤b,如不是,结束;步骤 b、令 bsave = false, bsavel = true,bdisplay_idle = false ;步骤c、判断bdisplay_idle == false ?如是,返回步骤c,等待显示空闲时间的到来如不是,执行步骤d;步骤d、令 bsavel = false, bdisplay_idle = false ;步骤e、执行中断禁止指令DI ;步骤f、将用户数据存储至单片机自带的flash存储器内;步骤g、执行中断开放指令EI ;步骤h、结束。与现有技术相比,本专利技术的优点在于:在使用flash进行用户数据存储过程中即使屏蔽中断,也能保持显示扫描输出频率一致,从而达到稳定的扫描频率,解决了因flash对用户数据进行存储过程中屏蔽中断,使得扫描输出频率不一致而所造成的LED闪烁问题,而且与增加外部存储单元EEPR0M,或者是采用直接驱动LED的方式,或者是增加驱动芯片来驱动LED相比,本专利技术方案不仅仅大幅度降低了生产成本,而且降低了硬件设计难度,可靠性也有了一定提升。【附图说明】图1为本专利技术实施例中4路扫描时显示扫描周期T示意图;图2为本专利技术实施例中显示定时中断流程图;图3为本专利技术实施例中flash用户数据存储函数的运行流程图。【具体实施方式】以下结合附图实施例对本专利技术作进一步详细描述。本专利技术提供的,其中电器终端控制板包括显示单元,和对显示单元进行扫描驱动的单片机,该单片机中自带flash存储器,其中显示单元具有m路扫描驱动口,显示单元的m路扫描驱动口分别与单片机的m个1 口连接,单片机通过输出固定的显示扫描周期对显示单元进行驱动扫描,而所述单片机输出固定的显示扫描周期T为:T = (m*Ts+Ti),以4路扫描驱动口为例,T = (4*Ts+Ti),参见图1所示,其中Ts为显示单元中单路扫描驱动口的扫描时间,Ti为扫描空闲时间,而扫描空闲时间设定为用户使用单本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/18/CN105161044.html" title="电器终端控制板中显示单元扫描驱动方法原文来自X技术">电器终端控制板中显示单元扫描驱动方法</a>

【技术保护点】
一种电器终端控制板中显示单元扫描驱动方法,其中电器终端控制板包括显示单元,和对显示单元进行扫描驱动的单片机,该单片机中自带flash存储器,其中显示单元具有m路扫描驱动口,显示单元的m路扫描驱动口分别与单片机的m个IO口连接,单片机通过输出固定的显示扫描周期对显示单元进行驱动扫描,其特征在于:所述单片机输出固定的显示扫描周期T为:T=(m*Ts+Ti),其中Ts为显示单元中单路扫描驱动口的扫描时间,Ti为扫描空闲时间,而扫描空闲时间设定为用户使用单片机自带的flash存储器进行用户数据存储的执行时间,然后在在显示扫描空闲状态时,执行flash用户数据存储操作,将用户数据存储至单片机自带的flash存储器内。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈明张波田如海王红亚
申请(专利权)人:宁波卓奥电子科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1