MSP430单片机实现时钟显示
扫描二维码
随时随地手机看文章
MSP430系列单片机是一种超低功耗控制器,它的每一系列根据不同的需要由不同的模块组成,其FLASH系列使高效电子系统变得轻巧。FLASH存储器同时也具有很强的灵活性。同时为了在低频率振荡器的驱动下得到较高的稳定频率,某些MSP430器件上使用了锁频技术FLL或增强型锁频环技术FLL+。如MSP430F412的时钟模块中使用了FLL+技术,这样可以得到稳定的频率。
MSP430F413的典型工作电流为350uA(1MHz,3V)工作电压为1.8V—3.6V,由于它的程序代码熔丝保护,多次可擦写功能的FLASH程序存储器,96字段的LCD驱动器可以直接驱动通常应用在测量设备上的字段型LCD,从而广泛应用于要求功耗低、时钟准确度高、进行实时时钟显示以及定时处理某些操作的仪表(如电子水表、电表、煤气表等)中。本文介绍用MSP430F413实现实时时钟及其显示。
在驱动电路中,液晶可以等效为电容。两个电极分别为公共极与段极。公共极由CMOn信号驱动,段极由SEGn信号驱动。由此可以得到4种驱动方法。
(1)静态驱动:使用一个引脚作为液晶公共端COM0,而每一段段极需要另一个引脚驱动。
(2)2MUX驱动:使用两个引脚作为液晶公共端COM0、COM1每两段段极需要另一引脚驱动。
(3)3MUX驱动:使用三个引脚作为液晶公共端COM0、COM1、COM2,每3段段极需要另一引脚驱动。
(4)4MUX驱动:使用4个引脚作为液晶公共端COM0、COM1、COM2,每4段段极需要另一引脚驱动。
MSP430对液晶的驱动主要是通过液晶模块的寄存器LCDCTL和LCDMx来实现。而驱动能力的不同也就是LCDMx寄存器的数量不同。显示缓存器LCDMx越多,缓存越大,显示的内容就越多。MSP430F413集成了96段液晶驱动器,具有较强的显示功能。在本文中MSP430F413采用了4MUX方式,其显示缓存器中位与液晶段的对应关系如图1所示。
硬件设计 硬件电路框图如图2所示,因为采用4MUX方式,所以在R33、R23、R13、R03引脚上外接等值电阻来产生液晶的偏置电压。根据需要把引脚Sx连接到液晶模块(通过LCDCTL寄存器LCDM7、6、5位选择所需要的输出段),本文选用引脚S0—S23。因为低频晶振产生的时钟信号稳定,所以要选择低频晶振作为时钟源。Xin和Xout引脚接32kHz晶振作为时钟源。同时可接按键用于时钟的调整。
软件设计 为了节省功耗,系统应工作在低功耗模式。低功耗模式有5种,而每种低功耗模式都可通过中断唤醒进入活动模式。但不是每一种低功耗模式都适合实时时钟显示。本文中选用低功耗模式1。同时通过定时器的控制寄存器选取合适的分频系数,使进入计数器的频率降低,同样也可以降低功耗。
系统通过定时中断唤醒,进入活动模式处理数据,通过查表进行时钟的显示。表1为LCD从0-9的显示玛,此段码通过真值表(见表2)得到。表中欧COM0、COM1、COM2、COM3为液晶显示模块的公共端(其对应的管脚与MSP430F413的COM0、COM1、COM2、COM3相对应的管脚连接)Pin1-Pin18为液晶显示模块的管脚。为了直观,表中在字母A、B、C……前加上数字0、1、2等比如0A、0B、0C……对应显示的第一位书,1、1B、1C……对应第二位数,依此类推。表中A为01H,B为02H,C为10H,D为04H,E为80H,F为20H,G为08H,H为40H。例如某位显示2,其对应的段是A、B、G、E、D,则显示段码为A+B+G+E+D=8FH。图3为程序流程图。
用MSP430F413实现的实时时钟显示,经实际运行验证精度非常高。同时在此基础上可以进行更完善的日历设计。而且此文的设计思想除了用于显示外,还可以应用在一些某种操作的仪表中。