欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    945191668基于MSP430单片机的微功耗中文人机界面设计.doc

    • 资源ID:4131687       资源大小:113.50KB        全文页数:7页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    945191668基于MSP430单片机的微功耗中文人机界面设计.doc

    在现代便携式智能仪器或手持设备中,中文人机界面成为一种事实上的行业标准。能显示汉字的图形点阵液晶和可输入数字的小键盘已成为智能设备必不可少的组成部分。同时作为便携式设备基本要求的低功耗特性也贯穿于中文人机界面的设计始终。 这种低功耗中文人机交互界面需要设计者在选取MCU和具体元器件上有特殊考虑。微功耗、小体积应作为选择相关器件的首要要求。设计中,笔者采用MSP430F149单片机作为系统的MCU,通过选择合适的液晶显示模块在3V电平构建了一个低功耗的中文人机界面。此中文人机界面构成了微功耗数据采集系统的重要组成部分。 一、MSP430系列FLASH型单片机的微功耗特点 德州仪器公司(TI)推出的MSP430F14x系列是超低功耗Flash型16位RISC指令集单片机。它采用冯-纽曼结构,RAM、ROM和全部外围模块都位于同一个地址空间内。其具有丰富的片内外围,性价比极高。MSP430F14x系列是TI的MSP430F1x系列(FLASH存储器型)单片机中功能最强大的子系列。F14x具有更大的程序和数据存储区、更多的外围模块,其片内甚至还包括一个硬件乘法器。同时F14x系列单片机开发工具简便,固化于FLASH存储器内的程序易于在线升级和调试,非常适合于开发消费类便携式电子产品。 MSP430F14x单片机集中体现了现代单片机先进的低功耗设计理念。其设计结构完全以系统低功耗运行为核心。 这种低功耗结构具体体现在以下四点: (1)高集成度的完全单片化设计。 将很多外围模块集成到了MCU芯片中,增大硬件冗余。内部以低功耗、低电压的原则设计,这样系统不仅功能强、性能可靠、成本降低,而且便于进一步微型化和便携化。(2)内部电路可选择性工作。 F14x单片机可以通过特殊功能寄存器选择使用不同的功能电路,即依靠软件选择其中不同的外围功能模块,对于不使用的模块使其停止工作,以减少无效功耗。(3)具有高速和低速两套时钟。系统运行频率越高,电源功耗就会相应增大。为更好地降低功耗,F14x单片机可采用三套独立的时钟源:高速的主时钟、低频时钟(如32.768kHz)以及DCO片内时钟。可在满足功能需要的情况下按一定比例降低MCU主时钟频率,以降低电源功耗。在不需要高速运行的情况下,可选用副时钟低速运行,进一步降低功耗。通过软件对特殊功能寄存器赋值可改变CPU的时钟频率,或进行主时钟和副时钟切换。(4)具有多种节能工作模式。 F14x单片机具有五种节能模式:LPM0、LPM1、LPM2、LPM3、LPM4。这五种模式为其功耗管理提供了极好的性能保证。图1显示了活动状态(AM)与各种节能模式下消耗的实际工作电流大小。 图1 F14x的工作模式与工作电流关系由于MSP430F14x系列是专为超低功耗的便携式应用开发的。利用先进的集成电路技术和生产工艺,其功耗已经跨越了毫安级,真正进军到了微安级。不仅如此,F14x的软件结构也针对低功耗而设计。如从备用模式唤醒MCU仅需6S。其中断和子程序调用无层次限制,这种丰富的中断能力减少了系统查询的需要,可以方便地设计出中断程序结构的控制程序。 利用F14x系列单片机,可以方便地构建一个低电压的工作平台。通过各功能模块的智能运行管理和MCU的节能模式相结合,可以解决运行速度、数据流量与低功耗设计的矛盾,将各功能模块的电流消耗降至最低状态,限制活动状态至最低要求。经过这样优化,可以实现单片机的极低功耗。如在1MHz工作频率下,F14x只消耗0.1400A电流(1.83.6V供电),如1.8V供电时,执行时仅消耗160uA的电流,备用时0.1uA,这时RAM中的数据还能有效保持。概括来说,MSP430F14x单片机具有极低的功耗、强大的处理能力、丰富的片上外围模块,方便高效的开发方式。本系统采用的MSP430F149单片机,是F14x系列中功能最强大的一款。它具有一个硬件乘法器、6个I/O端口(每个有8个I/O口)、1个精确的模拟比较器、2个具有捕捉/比较寄存器的定时器、8路12位A/D转换器、片内看门狗定时器、2个串行通信接口和60KB的FlashROM,2KB RAM。F149还具有强大的扩展功能,其具有48个I/O引脚,每个I/O口分别对应输入、输出、功能选择、中断等多个寄存器,使得功能口和通用I/O口可以复用,大大增强了端口功能和灵活性,提高了对外围设备的开发能力。 MSP430F149的以上特点,使其非常适合于构成一个全功能的便携式单片机应用系统。二、液晶显示模块与接口电路 图形点阵式液晶可显示用户自定义的任意符号和图形,并可卷动显示,它作为便携式单片机系统人机交互界面的重要组成部分被广泛应用于实时检测和显示的仪器仪表中。支持汉字显示的图形点阵液晶在现代单片机应用系统中是一种十分常用的显示设备,汉字BP机、手机上的显示屏就是图形点阵液晶。它与行列式小键盘组成了现代单片机应用系统中最常用的人机交互界面。 采用图形点阵式液晶显示较之其它显示方式主要有以下优点: (1)工作电压低、功耗极低。工作电压35V,工作电流10uAcm2,特别适用于便携式的仪器仪表中。 (2)液晶显示属被动显示,受外界光线干扰小。 (3)图形点阵式液晶可显示的信息量大,分辨率高。 (4)不产生电磁干扰。 (5)可靠性高。使用寿命长。在设计中,笔者采用了信利(TRULY)公司的MG-12232液晶显示模块。MG-12232模块供电电压的典型值为3V,工作电流的典型值为0.3mA,很适合本系统3V电平的低功耗环境。其可显示范围为122×32点阵,即能实现所谓的双排汉显。MG-12232采用的控制器是两片SED1520,一片SED1520控制器可以驱动16行×80列。SED1520控制器可以在3V逻辑下正常工作,因而避免了与MSP430单片机逻辑电平不匹配的问题。其具体结构框图见图2。图2 SED1520的引脚定义和结构框图SED1520控制器作为液晶显示屏与MCU的接口,它直接驱动MG-12232液晶,控制字符、汉字以及图形的显示。由于MSP430F149具有48个I/O引脚,借助SED1520,可以直接利用MSP430的I/O口模拟液晶的读写和控制时序。使得MCU对液晶的操作实际上变为MCU对液晶显示控制器SED1520的操作,因而接口电路的的硬件连接和软件编程都简单了很多。图2中V5引脚提供MG-12232液晶的对比度电压,可以通过一个12V电压发生电路(如MAX765)产生,经一个100K电位器分压后即可使用。MCU可以通过SED1520的一些控制引脚和13条常用指令来访问液晶显示模块。如RST用于重启动SED1520,E1和E2分别用于使能两片SED1520。R/W控制对SED1520的读或写。A0决定此次操作是指令读写还是数据读写。一个SED1520显示控制器能控制80×16点阵液晶的显示,其显示RAM共16行,分2页,每页8行,每一页的数据寄存器分别对应液晶屏幕上的8行点。当设置了页地址和列地址后就确定了显示RAM中的唯一聊簧系拿恳涣卸杂桓鱿允綬AM的字节内容,且每列最下面一位为MSB,最上面一位为LSB,即该RAM单元字节数据由低位到高位的各个数据位对应于显示屏上某一列的由高到低的8个数据位。对显示RAM的一个字节单元赋值就是对当前列的8行(一页)像素点是否显示进行控制。 如图3,MSP430F149单片机的P5口用作与液晶显示模块通信的数据口。图3 MSP430F149与MG-12232的电路连接示意图MG-12232显示模块有多个型号,不同型号都采用相同的SED1520控制器,操作及使用方法完全相同,只是尺寸不同。常用的如MG-122325(76×29.1×5.7mm)、MG-122326(45.05×22.32×6.3mm)、MG-122327(84×44×10mm)等,可以分别用在大小不同的便携式仪器或设备上。对液晶显示模块还需着重考虑其背光类型,不同的背光类型消耗电流大不相同。一般可选的背光类型有LED(发光二极管)、EL(电致发光灯)以及CCFL型(冷阴极灯管)。EL是一种面发光的冷光源,在结构上可以做得很大很薄,虽然亮度较低,但发光非常均匀而且无光斑,尤其是功耗很低。缺点是需要一个高压交流电压来驱动,故需要一个专门的电压变换电路(如IMP803)。CCFL照明面积更大,适用于需要大面积液晶显示界面的仪器或设备中。 三、键盘接口MSP430F149的P1、P2口除了支持输入、输出以外,还支持硬件中断。P1、P2口的8个引脚都有各自的控制寄存器,每个引脚可以单独控制,并且每个引脚都可以作为中断源,每一引脚都可以单独选择中断触发沿,单独允许中断。P1、P2口各使用一个中断向量,P1.0P1.7产生同一个中断,P2.0P2.7也产生同一个中断。P1、P2口的这种结构非常适合实现基于中断的键盘输入响应程序。 本系统中使用2×2的行列式键盘。键盘程序采用行扫描法。即P1.0、P1.1接两根列线,列线定义为输出口,P1.2、P1.3接两根行线,行线定义为输入口。两根行线需接10K上拉电阻。基于对系统低功耗要求的考虑,键盘输入响应程序应设计为中断方式运行的。即有键按下时,产生中断把MCU从休眠状态唤醒,并启动定时12ms的定时器,随后MCU又进入休眠状态。当定时器产生中断时再次将MCU从休眠状态唤醒,此时扫描键盘,若有键按下,则计算出键值,并执行该键值对应的功能程序。执行完该程序后,MCU再次进入休眠状态。四、汉字显示的原理与部分程序实例 1、图形点阵液晶的汉字字模 与在DOS中显示汉字不同的是,图形点阵液晶并不是简单地用画点的方式来描出汉字。直接从中文系统汉字字库中提取的汉字字模并不能直接在液晶上显示,通常都必须经过格式上的调整和转换。标准16点阵汉字(如希望汉字的HZK16)字模数据的排列形式如图4。由于一个SED1520显示控制器能控制80×16点阵液晶的显示,其显示RAM共16行,分2页,每页8行。连续16列相邻2页的32字节显示RAM就可以控制一个汉字的显示区域(如图5)。对这些显示RAM赋以相应值就可以显示出一个汉字。 图4 标准汉字字模排列形式图5 SED1520汉字字模排列形式由图4和图5所示可见,SED1520图形点阵液晶显示控制器汉字字模的排列顺序和方式与标准汉字字模完全不同。液晶字模数据可以通过对标准字模数据进行位运算后得到。 实际编程中,具体汉字的液晶字模数据应存放在MSP430F149单片机的FLASH存储器中。 2、液晶显示器初始化流程 在液晶显示信息之前,必须先对液晶进行初始化。初始化的流程如下: 需注意,MG-12232模块内虽然一片SED1520控制器实际控制区域为61列,但清除显示RAM时,仍应按80个RAM单元清除。3、部分程序实例 程序是在MSP430单片机的开发平台IAR Embedded Workbench下采用汇编语言编写,仿真机采用了TI公司的MSPFET430P410。由于本系统中选用了MSP430F149单片机,对源程序编译前需对IAR Embeded WorkBench平台进行以下设置:A. 点击Project菜单下的Options命令进入设置窗口,对左边Category框内的XLINK选项下的Include页面进行设置,把XCL file name框的内容设置为C:Program FilesIAR Systemsew23430icc430msp430F149A.xcl。 B. 点击Project菜单下的Options命令进入设置窗口,对左边Category框内的C-SPY选项下的Setup页面进行设置,把Chip Description框的内容设置为C:Program FilesIAR Systemsew23430cw430msp430F149.ddf。 以下给出了一些常量定义和发送命令字子程序(SEND_COM)、发送数据子程序(SEND_DATA)及液晶状态查询子程序(LCD_STE)的源代码。 #includemsp430x14x.h  程序在液晶上显示汉字液晶。 ;-定义LCD的引脚 LCD_RST EQU04H   P4.2 LCD_E1  EQU40H   P4.6   LCD_E2  EQU20H   P4.5 LCD_RW  EQU    10H   P4.4 LCD_A0  EQU08H   P4.3 ;-定义LCD使用的数据寄存器 LCD_PAGE EQU0200h;定义显示页面 LCD_ORDER    EQU0201h;暂存液晶控制指令 LCD_DATA EQU0202h;暂存液晶数据 LCD_CNT  EQU0203h;液晶计数存储器 LCD_ROW EQU0204h;存放列地址数据 LCD_LINE EQU0205h;存放行地址数据 LCD_CHAREQU0206h;存放当前字符数据的首地址 LCD_BYTECNT  EQU0207h    存放要显示的字节数 LCD_STATUS    EQU0208h    存放液晶当前状态的数据 SEND_COM    发送命令字子程序,以LCD_ORDER为入口参数    BIS.B   #LCD_E1,&P4OUT;SET E1=1 ,使能CHIP1    CALL    #LCD_STE    BIC.B   #LCD_A0,&P4OUT   A0=0,SEND OUT INSTRUCTION    BIC.B   #LCD_RW,&P4OUT  R/W=0,WRITABLE    BIS.B   #0FFH,&P5DIR ;SET P5 PINS OUTPUT     MOV.B   LCD_ORDER,&P5OUT   SEND ORDER BYTE TO LCD    BIC.B   #LCD_E1,&P4OUT  SET E1=0    RET ;发送数据子程序,以LCD_DATA为入口参数 SEND_DATA   BIS.B   #LCD_E1,&P4OUT;SET E1=1    CALL    #LCD_STE BIS.B   #LCD_A0,&P4OUT ;A0=1,SEND OUT DATA BIC.B   #LCD_RW,&P4OUT;R/W=0,WRITABLE BIS.B   #0FFH,&P5DIR    SET P5 PINS OUTPUT  MOV.B   LCD_DATA,&P5OUT  SEND DATA BYTE TO LCD BIC.B   #LCD_E1,&P4OUT;SET E1=0 RET   读液晶当前状态的子程序LCD_STE LCD_STE BIC.B   #LCD_A0,&P4OUT    A0=0,SEND OUT INSTRUCTION     BIS.B   #LCD_RW,&P4OUT    R/W=1,READABLE     BIC.B   #0FFH,&P5DIR   SET P5 PINS INPUT  STE_AGNMOV.B   &P5IN,LCD_STATUS  GET STATUS DATA FROM LCD     BIT.B   #80H,LCD_STATUS;如状态存储器第7位为1,忙,则等待     JC STE_AGN     RET 五、结束语 本系统利用MSP430F149单片机、MG-12232图形点阵液晶模块和行列式键盘接口构建了基于3V电平的低电压、微功耗的中文人机界面。实际使用中,此人机界面消耗电流不足1mA,这种设计方案取得了很好的微功耗效果。

    注意事项

    本文(945191668基于MSP430单片机的微功耗中文人机界面设计.doc)为本站会员(仙人指路1688)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开