MSP430的手持式仪器核心模块设计

发布者:MysticalGarden最新更新时间:2012-05-09 来源: 单片机与嵌入式系统应用 关键字:MSP430  图形显示器  AD7705  AT45DB041B 手机看文章 扫描二维码
随时随地手机看文章
引 言
    手持式仪器是嵌入式系统应用开发的重要领域,手持式仪器具有便于携带、操作方便、LCD显示清晰等优点。本文结合手持式电量测量仪开发项目,设计了以MSP430F449为核心的手持式仪器。系统采用16位A/D转换器AD7705和128×64像素LCD图形显示器设计互动式图形用户界面,用于显示测量结果数字和图形。符合人体工程学的按键和易于操作的菜单,实现了仪器的4按键图形菜单操作。设计了对测量数据进行分析处理并实时存储的应用软件。仪器具有测量精度高、数据处理能力强、信息容量大、智能化、体积小、功耗低等特点,适合于电池供电的工作环境。

1 核心模块硬件设计
1.1 16位嵌入式处理器MSP430F449单片机
    德州仪器公司的MSP430系列单片机是一种16位超低功耗微处理器,低供电电压范围为1.8~3.6 V,1 MHz时钟运行时耗电电流在O.1~400 μA之间,并具有多种低功耗模式,关断模式下耗电仅为0.1μA;从中断请求到CPU唤醒只要6μs;具有丰富的片内资源。本系统中选用的是MSP430F449单片机,该单片机具有5种节电模式(LPM0~LPM4),1 MHz下工作电流O.1~280μA,具有2个16位和1个8位定时器;具有1个12位A/D转换器,2个串行通信接口,可通过软件选择UART/SPI模式;Flash存储器多达60 KB,RAM多达2 KB。手持式仪器核心模块基本组成的硬件电路框图如图l所示。

1.2 Flash数据存储器
    由于系统要存放大量的数据,因此需要大容量的存储芯片。可选用的存储芯片主要有EEPROM、Flash、FRAM等类型。FRAM存储器虽然擦写次数无限制但其价格昂贵,EEPROM、Flash型存储芯片虽有擦写次数的限制但价格较低,其中Flash存储容量更大。本文选用AT45DB041B串行Flash芯片作为数据存储器。AT45DB041B与AT45DB04l、AT45DB041A完全兼容,但供电电压更低,为2.5~3.6 V或者2.7~3.6 V,功耗更低,且封装尺寸和引脚数更少。该存储器主存储页容量为4 Mb,共分为2 048页,每页容量为264字节,此外还具有2个264字节的缓存(BUFFERl、BUFFER2),在主存被编程时仍可接收数据。它采用SPI串口模式0~3可与任何单片机或微机进行通信,几乎无需外接元器件。电路开发较为简单,而且数据存储量大,安全性较好。
1.3 16位A/D转换器AD7705
    模数转换器选择ADI公司的16位∑一△A/D转换器AD7705。该器件提供双三通道、低成本、高分辨率的模数转换功能。由于采用∑一△结构并具有可编程增益放大器,应用于低频测量的模拟前端,可以直接接收来自传感器的低电压输入信号,实现16位无丢失代码并产生串行的数字输出。当电源电压为3.3 V,基准电压为1.225V时,可处理O~10mV或O~1.225 V的单极性模拟输入信号;双极性模拟输入信号范围是±10 mV及±1.225V,无需外部仪表放大器,简化了仪器硬件电路的设计。AD7705工作电压为2.7~3.3 V,与系统CPUMSP430F449的3.3 V端口电压兼容,可直接与MSP430F1449连接。AD7705的CMOS功耗极低,3 V电压时最大功耗为1 mW。器件带有节电模式,方便电池供电。AD7705能确保14位的准确度,分辨率达到小数点后4位,满足系统对测量数据小数点后3位的准确性要求。在本仪器核心电路设计中,采用MSP430F449的并行口模拟SPI串行口时序,实现对AD7705的操作。在AD7705的PCB设计时,应避免在器件下布置数字信号线,否则会导致片内噪声成倍增加。同时,应注意模拟地与和数字地在一点接地。[page]

1.4 128×64 LCD显示器
    液晶模块选用北京青云创新科技发展公司的LCMl28645ZK液晶模块,显示内容为128×64点阵,外形尺寸为93 mm×70 mm×13 mm,视域尺寸为70.7 mm×38.8 mm,显示类型为STN黄绿模式,正向显示,控制器为ST7920,工作电压3.3 V,和微处理器供电电压兼容。该模块自带8 000多GBl、GB2中文汉字字库,具有8位、4位并行编程模式和3线串行编程模式。引脚定义如表1所列。串行编程模式下所需I/O口线少,硬件连接简单。本系统即采用串行编程模式。

2 核心模块通用功能函数设计
    核心模块设计了通用功能函数,便于编写应用程序时调用。通用功能函数在IAR Embedded Workbench环境下采用C语言设计开发。
2.1 Flash数据存储器函数设计
    系统采用MSP430F449的P3口对Flash存储器AT45DB041B进行控制,它和MSP430F449的连接如图2所示。P3.6连接片选端,P3.5连接串行时钟端,P3.4连接串行数据输入端,P3.3连接串行数据输出端,配合P3.O和P3.1的操作实现对存储器的读写等操作。(编者注:部分核心函数见本刊网站。)
2.2 核心模块LCD显示函数设计
    在系统内,单片机MSP430F449通过P5口与液晶模块LCMl28645ZK串行通信,P5.7接液晶的RS(CS)端,P5.6接液晶的R/W(STD)端,P5.5接液晶的SCLK端,如图3所示。P4.7通过1个三极管构成开关电路来控制液晶是否供电,达到系统最低功耗的目的。(编者注:部分关键函数的设计见本刊网站。)

2.3 核心模块A/D转换函数设计
    在系统内,单片机MSP430F449与AD7705的接线原理如图4所示,P2.O连接SCLK端,P2.1连接CS选择端,P2.2连接DIN端,P2.3连接DOUT端,P2.4连接DRDY端,2路输入采用差分输入方式。通过访问AD7705的8个寄存器实现对AD7705的所有操作:
    ①通信寄存器。所有对器件的通信必须从写通信寄存器开始。上电或复位后,默认为等待指令,写入通信寄存器。由通信寄存器选择位RS2~RS0指定下次访问的寄存器。R/W位选择下次是读操作还是写操作,输入通道选择位CHl、CHO选择输入模拟通道。
    ②设置寄存器。可读/写的8位寄存器,用于设置工作模式、增益、极性、缓冲器控制和滤波器同步。
    ③时钟寄存器。可读/写的8位寄存器,用于设置有关AD7705运行频率参数和A/D转换输出更新速率。
    ④数据寄存器。16位只读寄存器,存放AD7705最新的转换结果。
    ⑤测试寄存器、零标度校准寄存器、满标度校准寄存器等。用于测试和存放校准数据,可用来分析噪声和转换误差。部分核心函数如下:[page]

   

2.4 核心模块电源设计
    电源设计是手持式仪器系统设计的难点,本课题权衡低功耗、低成本、稳定可靠等诸多因素。由电源芯片LMlll7—3.3提供MSP430F449微处理器的集成I/O和Flash、A/D、128×64像素LCD等外设的工作电源;LMlll7—5超低压降线性稳压电源芯片实现电池电压到5 V的转换,并由HZD05—12D12模块为前端传感器提供±12 V电源。其中HZD05—12D12为双路输出,均衡负载直流 直流双输出模块,输入电压范围9~18 V,输出电压±12 V,额定输出电流±O.21 A。系统电源电路如图5所示。

    该电路可以满足系统不同部件的供电需求。仪器由外接AC电源变换/充电器或内置12.6 V的锂电池组供电。


结 语
    本文讨论手持式仪器核心电路的硬件和软件设计。采用MSP430F449作为手持式仪器的控制核心,用LCMl28645ZK LCD模块作为仪器显示器。采用16位A/D转换器AD7705,设计多通道、高性能、高精度的测量部件。手持式仪器核心电路还设计了可提供3.3 V、5V、±12V的4路电压的电源模块。此手持式仪器核心电路系统已用于手持式电量测量仪中。实践证明,该系统具有手持式使用、测量精度高、数据处理能力强、功耗低、电池供电等特点。本文介绍的MSP430的手持式仪器核心模块硬件软件具有通用性,可直接应用于手持式仪器中。

关键字:MSP430  图形显示器  AD7705  AT45DB041B 引用地址:MSP430的手持式仪器核心模块设计

上一篇:基于MSP430的新型长跑计圈计时系统
下一篇:基于MSP430的无极性恒流电刺激器的设计

推荐阅读最新更新时间:2024-03-16 12:59

MSP430 _data16_memzero问题
移植uCOS-II到MSP430一切都OK,后来加了TI的一个小的TCP/IP协议栈就老是死掉,纠结了两个晚上,现在把问题解决了。uCOS-II的运行需要一个时钟信号,也就是“心跳”信号,以此来进行系统运行和任务调度,我这里开了MSP430的看门狗中断作为“心跳”信号。第一个问题是我在创建任务之前开了总中断_EINT()函数,这就打开了看门狗中断,但是任务还没建立,怎么跑任务呢,那个看门狗时钟节拍中断就是任务切换用的,如果任务还没建立起来,也就是说任务的堆栈还没初始化,那任务指向哪里呢。这个问题找到了,但是另外一个问题又来了。当在一个任务中添加一个比较大的函数时(TCP监听处理函数)几死掉,进不了main函数,死在__data16
[单片机]
基于MSP430单片机的冷媒中心控制系统的研制
1 引言 制冷系统已成为的现代汽车重要配置,制冷系统内的冷媒量和冷媒纯度都是影响制冷效果的关键因素,需要按期进行系统检测和冷媒更换。冷媒的更换过程分为冷媒回收、抽真空、注冷冻油和冷媒加注四个步骤。目前我国的汽车制冷系统的维修和维护的手段,大多仍是人工操作,其工作过程繁杂,效率低下,常因操作不当导致系统损伤。 作者完成的汽车制冷系统维护的自动化设备研制,有效地提高了维修效率和维护质量,实现了汽车制冷系统冷媒更换的全自动操作,使用简便,界面友好。 全自动冷媒加注控制系统采用16位单片机MSP430F149为核心控制器,采用了ATERA公司新型CPLD器件EPF10K10A,并实现了外存数据加密,整机功能完备、可靠性高。 2 系
[单片机]
基于<font color='red'>MSP430</font>单片机的冷媒中心控制系统的研制
MSP430 低通滤波器测试
MSP430型号 :MSP430F5529 通过MATLAB 设计了一个9阶的低通滤波器,系数乘以100倍存在.c文件中,直接对数据进行差分运算获得滤波后的输出值。 原始DAC数据也通过MATLAB生成。(12位DAC) include msp430.h #include DAC7311.h #include Clock_init.h #include Timer_Init.h #include Filter.h const unsigned int Data ={ 1018,2851,2077,2221,1377,1762,2709,2013,2693,1521, 2214,2238,2507,30
[单片机]
<font color='red'>MSP430</font> 低通滤波器测试
MSP430F5529 时钟 25MHz 设置方法
MSP430F5529的launchpad是 TI送的比较多的一款开发套件,至少我们实验室就是人手一块,很多人都嫌他慢,确实相比较于STM32F103(72MHz) 和STM32F407(168MHz)的速度而言 默认状态下主频只有1MHz的 MSP430F5529就是个弟弟,而且处理位宽也是只有16位,,, 还不支持位带操作 ,但是就超低功耗这一点就足以让他在单片机界立足 ,废话少说,来正题。 这次跟大家分享的是标题所说的 MSP430F5529的升频方案。 要升频,首先我们得能‘看见’系统的频率,TI的工程师们充分考虑到了这个问题,他们有得引脚可以直接输出时钟信号!!! 在芯片datesheet中 的Termina
[单片机]
<font color='red'>MSP430</font>F5529 时钟 25MHz 设置方法
MSP430读写擦除自带FLASH源程序
1-简介 MSP430单片机对片内FLASH的读写操作程序范例。 2-程序例程 //****************************************************************************** // 参数: wAddr 为地址 , 范围 0x1000~0xFFFF voidReadFlash(U16 wAddr,U8 *bBuf,U8 bLen) { while(bLen--) *bBuf++=*(U8 *)wAddr++; return; } voidWriteFlash(U16 wAddr,U8 *bBuf,U8 bLen) { U8 reg1,reg2; reg1=_BIC_S
[单片机]
MSP430延时程序
一:延时程序 在用单片机的时候常常会用到延时函数,430也不例外,常见的形式有: void delay(unsigned int ms) { unsigned int i,j; for( i=0;i ms;i++) for(j=0;j 1141;j++); //8MHz晶振时 } //以上程序段在要求延时精度不高的场合可以用。 二:IAR自带的高精度的延时 但在 IAR 软件430的编译器里面我们可以利用它内部的延时子程序来实现我们想要的高精度软件延时,方法如下: (1):将以下这段代码复制到你的.C源文件中。 #define CPU_F ((double)8000000)
[单片机]
51XA单片机与图形液晶显示器的接口设计
0 引言 P51XA是PHILIPS公司的一种16位单片机,可管理的存储器空间大,运行速度快,支持实时多任务系统的增强了实现高级语言的支持,可以运用在需要复杂、高速控制的场合,在体系结构上与MCS-5高度兼容,便于实现向高性能微控制器的快速、平滑转移。北京精电蓬远显示技术有限公司的MGLS240128T是一种240×128点阵的图形LCD(液晶显示器),可以显示图形、曲线,全屏可显示15×8个汉字,适宜用在需要有较多显示内容的场合,它内含T6963C控制器,能直接与INTEL系列的微处理器接口。 1 P51XAG37单片机和T6963C简介 P51XA单片机的内部结构和外部数据总线均为16位结构,支持扩展的外部存储器空间为1
[应用]
基于MSP430单片机的智能网络水表抄表系统设计
  随着电子通信与计算机网络技术的发展,远程抄表技术在水、电和煤气计量方面得以推广应用。为适应这个发展方向,在研制出有线远传水表及其数据采集器的基础上,开发了专用的数据集中器,以实现远传水表抄表系统。该系统有三层网络结构:上位机管理系统、集中器和智能网络水表。智能网络水表通过RS-485总线和集中器连接,集中器通过调制解调器MODEM和电话网连接进行远程通讯,将数据通过电话网传输给上位机管理系统,在降低成本的同时提高了数据传输的可靠性。该系统具有良好的伸缩性,同时,上位机管理系统也可以和银行联网,组成四级网络,为后续功能扩展奠定了基础。   1 智能网络水表   智能网络水表的工作原理是在普通转盘计数的水表中加装干簧管和永磁铁
[单片机]
基于<font color='red'>MSP430</font>单片机的智能网络水表抄表系统设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved