新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于MSP430的流量检测仪设计

基于MSP430的流量检测仪设计

作者:时间:2014-05-29来源:网络收藏

2.2 软件的设计

本文引用地址:http://www.eepw.com.cn/article/247592.htm

2.2.1 模块的设计

对于流量检测仪而言,其设计过程某些程序的执行需要通过实际时间来进行调度。而此机制要想实现需要借助于单片机中所具有的TIMER-A及TIMER-B等实现。根据本系统的设计,需要定时器在32768Hz的条件下每秒进行一次中断,因此,需要对TIMER-B进行以下方面的设置:

将时钟源定义为ACLK;TBCTL=TBSSEL0+TBCLR

允许中断定时器;TBCCTL0=CCIE

将定时器的定时时间设为1s;TBCCR0=0X7FFF

在增计数模式进行定时器的工作;

TBCTL1=MC0

这样,即可实现定时器1s中1次的中断服务程序,在此程序中进行相应定时器的设计,以便进行计时相关操作。系统采用了热电阻PT100.由于单片机自带ADC12模块,因此可将所采集的温度通过A/D进行转换。为了对温度及其他模拟量进行即时处理,系统采用了序列通道多次转换模式。转换完成后结果会存放于ADC12MEM之中。

对于系统的软件而言,其包括上层及下层模块两部分软件,其中,上层收到中心命令后可借助于射频无线通信方式对下层进行命令的发送,并进行计时。若下层无数据返回,一旦超时上层会重新进行命令的发送。若3次以上仍无数据返回,则将被认为下层工作出现异常,并向中心提交异常信号。由于单片机仅存在一个串口,而上。下层模块需2个串口,而第2个串口需要借助于定时器A所具有的捕获/比较功能来实现。

2.2.2 无线通信协议

系统的通信协议包括3层:一是物理层,主要是通过模块实现的;二是数据链路层,此层主要负责进行无线数据传输的提供;三是应用层,进行数据的发送时,需将此层所传送来的较长数据帧进行拆分,并进行包头与校验和,而后再重新进行打包并发送。

由于灵敏度极高,因此,若无数据的传输时,其数据的输出脚将会存在杂波的输出,此类杂波将会受到MCU串口的接收和处理。四个字节的0×CC加上一个字节的0×F0可保证数据帧到达之前双方之间通讯的同步实现。系统协议采用的是两个字节的帧头,即两个0×55,其加上起始和停止位之后,实际过程中发送的将为0101010101,因此可有效保证数据获得确认。此外,由于十个字节数据后为校验和,因此采用16位的crc校验可确保数据传输过程的准确性。此时接收方会对crc及校验和进行比较,若不同说明传输过程发生错误,此时接收方会讲错误帧编号进行记录,待所有数据发送结束后,可返回错误编号,并要求重新进行发送。

若所有数据均接收正常,则会确认发送正确。

3.结语

MSP430单片机由于其功耗超低等特点,因而在流量检测中得到很好的应用。

通过基于MSP430单片机的流量检测仪的设计,根本上解决了传统流量检测过程中精度问题以及检测仪受液体影响而寿命降低等多方面弊端,因而在流量检测方面具有十分良好的发展前景。


上一页 1 2 下一页

关键词: MSP430 NRF401

评论


相关推荐

技术专区

关闭