APP下载

基于MSP430 单片机的流量显示表硬件CPU 设计

2014-11-26郑艳楠ZHENGYannan马尔仑MAErlun

价值工程 2014年5期
关键词:看门狗波特率寄存器

郑艳楠ZHENG Yan-nan;马尔仑MA Er-lun

(①内蒙古化工职业学院测控与机电工程系,呼和浩特 010070;②内蒙古师范大学数学科学学院,呼和浩特 010022)

(①Control and Mechatronics Engineering Department of Inner Mongolia Vocational College of Chemical Engineering,Hohhot 010070,China;②School of Mathematical Sciences,Inner Mongolia Normal University,Hohhot 010022,China)

1 流量显示表的系统概述

流量显示表是由嵌入式微处理器、外围硬件设备、嵌入式操作系统和用户应用程序组成的,用于实现对流量的检测、显示等功能。目前在工程上得到广泛应用,尤其在油田、水利等领域。流量显示表主要包括硬件和软件设计两部分,硬件完成的功能主要是把传感器送入的信号经过一系列的变换在显示端口显示数据;软件完成的功能是控制各个模块的功能实现,整个系统具有外围结构简单的特点。传感器模块与单片机的通道A/D 进行连接,这样可以简化模拟采集设计,从而减小设计的复杂性,以此来增加系统的可靠性。而键盘输入模块是实现人机对话的主要功能。电源及复位模块的主要功能是提供可靠的电源,系统也需要有复位功能,这样系统能够提供复位信号。我们设计的主要目标就是将振动器和系统时钟发生器主要以廉价和低功率的设计为主。而且当廉价系统和外接器件缩减到一个普通的晶振的时候,就需要达到低频晶体和含有倍频器的振荡器来满足时钟系统速度与低功效这两个要求。

2 嵌入式仪表系统硬件设计

2.1 硬件设计概述

流量显示表的硬件设计主要包括CPU 的设计及外围模块的设计,由于CPU 芯片内资源丰富,所以需要的外围模块很少,只有键盘模块,输入模块,通讯模块,显示模块等外围模块。流量显示表的功能主要是将流量传感器送入的数据,通过主CPU 经过数据处理后送到显示的过程。由于MSP430 片内集成了A/D 转换通道,这样可以直接将单片机的A/D 输入通道与传感器的模拟信号相连接。硬件设计中要考虑到各种所选芯片的兼容性,也要涉及到一些外设电路,例如复位电路,滤波电路,电源电路等。在单片机系统里需要复位电路,因此本设计可以用R-C 复位电路,R-C 复位电路的主要特点就是经济性较高。整个系统采用3.3V 供电,由于流量显示表多应用在工程上,电源为集中供电形式,因此本设计可以不考虑电源电路的设计。

2.2 硬件CPU 设计

2.2.1 MSP430F135 的结构框图

图1 MSP430F135 的结构框图

2.2.2 MSP430F135 的存储器模式及范围

MSP430 的ROM 和RAM 都在同一地址空间,虽然不同型号的单片机具有不同容量的存储器,但是它们都分配在0000H——FFFFH 范围内,存储器是按线性方式组织的。如图2 所示的存储空间基本结构。从200H—C00H 地址范围是RAM 存储器。

MSP430 的数据存储器(RAM)位于存储器地址空间的0200H 以上,这些存储器一般用做数据的保存与堆栈、同时也是数据运算的场所。在特殊场合还可以用做程序存储器。可以字操作,也可以字节操作,通过指令后缀加以区别。但用做程序存储器时只能字操作。MSP430F135 的RAM 为512 字节(03FFH—0200H)。

2.2.3 中断方式及中断向量

MSP430 有3 类中断:系统复位、可屏蔽中断、非屏蔽中断。

图2 存储空间基本结构

引起系统复位的中断源有:加电源电压、RST/NMI 引脚加低电平、看门狗定时器溢出、看门狗定时器密匙不符。

非屏蔽中断由以下情况产生:RST/NMI 引脚有上升沿信号、振荡器故障。

可屏蔽中断源如下:看门狗定时器溢出、其他有中断能力的外围模块。

端口P1 和P2 的全部8 位都可以作为外部事件的中断插入。每一个I/O 位都可独立编程。可以对端口任意组合成输入、输出和中断,因此能灵活地适应不同的I/O 结构要求。在设计中用到的中断源有:上电、复位、看门狗,定时器A 和B,USART0 的接收和发送中断,ADC 模块的中断以及P1 口的中断。

2.2.4 时钟模块

MSP430 系列单片机不可缺少的模块就是时钟模块,而时钟模块又可以使单片机实现的低功耗应用不同,因此不同的器件所具有的时钟模块也不相同,而MSP430F135的时钟模块主要是由高速晶体、低速晶体和数字控制振荡器(DCO)等器件构成。而高速晶体、低速晶体和数字控制振荡器(DCO)等器件通过MSP430F135 时钟模块产生的3 个时钟模块也不同,提供的模块使用也就不同,而产生的时钟为:辅助时钟(ACLK)、主系统时钟(MCLK)和子系统时钟(SMCLK)。系统的实时性要求比较高时可采用ACLK 时钟。总的来说,应该根据不同的应用来选择适当的时钟。

基础时钟模块有2 个或3 个时钟源:LFXTlCLK 低频/高频时钟源、XT2CLK 高频时钟源和DCOCLK 时钟源。

基础时钟模块可以提供3 种时钟信号:ACLK 辅助时钟、MCLK 主时钟、SMCLK 子时钟。

2.2.5 看门狗定时器

看门狗定时器(WDT)的主要功能就是当程度发生问题的时候,就可以通过受控系统然后重新启动。我们把WDT 选定好时间,就可以发生系统服务。应用中如果不需要此功能,则可以把它当作定时器,当选定定时时间到达后将产生中断。

WDT 的寄存器

WDT 的计数器WDTCNT 是16 位增计数器,由于它不能直接用软件访问,就要经过WDTCTL 对WDTCNT 进行控制,它定位于字地址0120h 的16 位读/写寄存器的低字节。所有读写操作都要用字指令,这样即不带后缀或用后缀.W。在看门狗或定时器中,只有含有正确安全键值(05Ah)的指令才能写入WDTCTL。

表1 WDTCNT 寄存器

WDT 模块可置成两种模式:看门狗模式和定时器模式。

①看门狗模式。WDT 设置为看门狗模式,WDT 定时时间到或写入错误的安全键值会触发PUC 信号,这样将自动清除系统寄存器的各位。这也将WDT 再次设置为看门狗模式,RST/NMI 引脚切换到复位模式。在发生上电复位或系统复位时,WDT 自动进入看门狗模式,WDTCTL 和WDTCNT 寄存器全部清除。选择看门狗模式的时候,我们需要把软件的周期在WDTCTL 的CNTC 位中写“1”来使WDTCNT 复位以防止超过设定的定时时间。定时时间通过SSEL、IS0 和IS1 来选定。

②定时器模式。将WDTCTL 的TMSEL 置位即选择定时器模式。定时时间可用软件对WDTCTL 寄存器的CNTCL 置位来进行初始化。

2.2.6 串口通信模块

在单片机系统中,串口通信是一个非常重要的部分,通过串口通信实现与其他模块进行通信。MsP430F135 单片机里提供的串口通信模块为USART。该模块即可以作为UART 使用,提供异步通信功能,也可以作为SPI 使用,提供同步通信功能。USART 硬件模块主要包括波特率部分、接受部分、发送部分和接口部分等。

USART 的接收部分主要包括接收寄存器、接收移位寄存器以及控制模块组成,它在接收的时候产生一些状态信息,并设置相应的中断标志位。USART 的发送部分主要包括发送寄存器、发送移位寄存器以及控制模块组成,它在发送的时候产生一些状态信息,并可以设置发送中断标志位。USART 的波特率产生部分主要包括时钟的选择、波特率的产生以及波特率的调整部分组成,它通过设置波特率寄存器和波特率调整寄存器来获得需要的波特率。另外USART 模块还包括一个控制模块,通过控制模块可以选择相应的工作模式,同时设置相应的管脚。

波特率计算公式为:波特率=BRCLK/N=BRCLK/UBR+(M7+...+M0)/8;其中BRCLK 为时钟源,UBR 为UCBR 中的16 位数据值,MX 为UXMCTL 中的各数据位。

USART 模块在实现异步通信(UART)的基础上主要对外进行通信的,也可以实现同步通信(SPI)。用户对USART模块的操作主要都是通过操作该模块的寄存器实现的。

2.2.7 ADC12 模块

A/D 模块特性如下:8 个A/D 输入通道;4 个模拟输入端可作为编程电流源;我们可作比例测量的绝对测量值;内置的采样/保持电路;有转换结束的中断标志(Eoc);ADAT 寄存器可将转换结果保存到下一次转换的开始;低功耗;独立完成转换,不需要CPU 额外的处理开销;可编程为12 或14 位的分辨率;4 个可编程量程可达到14 位的动态范围;快速的转换时间;大的供电电压范围;可覆盖整个A/D 转换范围。

可选择的模块有8 个输入通道,经过多路切进入转换器的输入电路后,我们可以进行任意时刻的通道转换。其中的A0、Al、A2、A3 四个通道还可作为4 个电流源输出,其值可以经外接电阻REXT 设定。ADC12 模块能够实现12 位精度的模数转换。

3 结论

流量显示表要求的计量精度为1.0%,那么芯片选型时要考虑到芯片的精度问题,综合各种因素的考虑,主CPU 选为MSP430 系列,最后设计结果如下:①由于该表的芯片选用的都是高精度的芯片,所以已经达到了1.0%的要求。该表的功耗低、可靠性好且经济性较好,可以广泛应用于工程上。②流量显示表集成度高。随着技术的进步,嵌入式仪表也在发生着变化,功能也趋于完善。本设计的流量表具有更好的通用性,如可适用于压力、温度、湿度、流量等的显示,因此在工业上可以广泛应用。

[1]秦龙.MSP430 单片机应用系统开发典型实例[M].深圳:中国电力出版社,2004.

[2]胡大可.MSP430 系列超低功耗16 位单片机原理与应用[M].北京:北京航空航天大学出版社,2000.6.

[3]赵家贵,付小美,董平.新编传感器电路设计手册.

[4]吴达科.智能涡街流量计的设计研究[D].西南农业大学,2003.

[5]魏祯毅.油气水多相流量计的研究[D].浙江大学,2004.

[6]Sipex Corporation.SP3220 True +3.0v to +5.5v RS-232 Transceivers.http://www.21IC.com.2003.

[7]Low Cost,Precision 2.5v IC References AD1403.http://www.liyuan.com.

猜你喜欢

看门狗波特率寄存器
Lite寄存器模型的设计与实现
把他叫醒
基于FPGA的异步串行通信波特率容错设计
分簇结构向量寄存器分配策略研究*
一种采用FPGA实现的通用看门狗电路
C*Core芯片SCI串口波特率容限优化
高速数模转换器AD9779/AD9788的应用
一种可重构线性反馈移位寄存器设计
计算机多设备接口波特率不匹配的研究