MSP430水表传感器接口设计(Word).doc

上传人:rrsccc 文档编号:9154249 上传时间:2021-02-04 格式:DOC 页数:7 大小:61KB
返回 下载 相关 举报
MSP430水表传感器接口设计(Word).doc_第1页
第1页 / 共7页
MSP430水表传感器接口设计(Word).doc_第2页
第2页 / 共7页
MSP430水表传感器接口设计(Word).doc_第3页
第3页 / 共7页
MSP430水表传感器接口设计(Word).doc_第4页
第4页 / 共7页
MSP430水表传感器接口设计(Word).doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《MSP430水表传感器接口设计(Word).doc》由会员分享,可在线阅读,更多相关《MSP430水表传感器接口设计(Word).doc(7页珍藏版)》请在三一文库上搜索。

1、基于片内比较器的水表传感器接口设计宁波东冠科技有限公司(315040) 钟健 康蕊摘 要:本文介绍了一种利用单片机片内比较器与水表传感器的接口设计方案,具有成本低、功耗低、资源占用少的特点。关键词:单片机 片内比较器 传感器 接口1引言我们在设计各类水表数据采集系统时,出于对系统运行可靠性的考虑,在系统设计中除了要保证数据采集的准确无误,还需要实时检测传感器的工作情况、发现仪表线路及仪表本身的故障。我们总结开发经验,利用单片机片内集成的比较器设计出一个很好的传感器接口方案。我们以MSP430F1121单片机结合干簧管传感器为例,对此设计方案进行说明。2MSP430F1121比较器A简介21 概

2、述MSP430F1121单片机是美国TI公司生产的FLASH型超低功耗16位单片机,其内置的高精度比较器A模块包括以下部分: 比较器,可提供on/off信号,无输入回差。 内部有0.5Vcc、0.25Vcc、0.55V三档模拟参考电平发生器。 内部参考电平可以向外提供。 比较器输入可以切换。 比较器输出有RC滤波电路,软件可选。 具有中断向量。22 比较器A原理221 比较器A模块的结构比较器A模块的结构见图一。图一 MSP430单片机比较器A结构图222 输入模拟开关比较器的2个输入端可以与端口引脚断开,由控制位P2CA0和P2CA1分别独立控制。可以实现选择一个外部信号加到比较器的(+)端

3、或(-)端以及从内部将一个参考电平连接到比较器的输入端。223 输入多路切换输入多路切换由控制位CAEX控制,可选择连接到比较器的(+)端或(-)端,当比较器输入端改变时,比较器的输出也会翻转。224 比较器比较器是对比较器的(+)、(-)输入端的模拟电压做比较。如果(+)端电压对于(-)端为正,则输出为高(CAOUT的值取决于CAEX位)。控制位CAON可以控制比较器的开关。比较器不用时,可将它关闭以降低功耗。225 输出滤波器当控制位CAF置位时,输出经过了片内的RC滤波器;当CAF复位时,滤波器被旁路。226 参考电平发生器参考电平发生器产生Vcaref,Vcaref可以加在比较器的任一

4、输入端,由控制位CAREF0和CAREF1控制比较器的输出,控制位CARSEL选择Vcaref加到比较器的输入端。23 比较器A控制寄存器比较器A模块由3个寄存器控制,见表1。寄 存 器缩 写寄存器类型地 址初 始 状 态比较器控制CACTL1读/写059H复位比较器控制CACTL2读/写05AH复位比较器端口禁止CAPD读/写05BH复位表一比较器A的控制寄存器231 控制寄存器CACTL1B7 B6B5 B4B3 B2B1 B0CAEXCARSELCAREF1CAREF0CAONCAIESCAIECAIFGB0:CAIFG。比较器A的中断标志。B1:CAIE。比较器A的中断允许。B2:CA

5、IES。比较器A的中断触发沿选择。0:比较器A输出的上升沿使CAIFG置位。1:比较器A输出的下降沿使CAIFG置位。B3:CAON。控制比较器的开关。关闭时不消耗电流,但是与参考电平发生器的电流消耗控制是相对独立的。0:比较器A关闭,这时不消耗电流,比较器A输出为低。1:比较器A打开,处于工作状态。B4B5:CAREF。参考电平发生器控制。0:内部参考电平关闭,这时可使用外部参考电平。1:选择0.25Vcc为参考电平。2:选择0.5Vcc为参考电平。3:选择0.55V为参考电平。B6:CARSEL。选择内部参考电平加到比较器A的(+)端或(-)端。0:CAEX=0时,参考电平加(+)端,CA

6、EX=1时,参考电平加(-)端1:CAEX=0时,参考电平加(-)端,CAEX=1时,参考电平加(+)端B7:CAEX。交换比较器A的输入端。232 控制寄存器CACTL2B7 B6B5 B4B3 B2B1 B0/P2CA1P2CA0CAFCAOUTB0:CAOUT。比较器A输出。写入时不会影响。B1:CAF。选择比较器A输出的滤波器。0:滤波器被旁路。1:比较器A输出经过滤波器。B2:P2CA0。控制比较器的输入端CA0。0:外部引脚信号不连接到比较器A。1:外部引脚信号连接到比较器A。B3:P2CA1。控制比较器的输入端CA1。0:外部引脚信号不连接到比较器A。1:外部引脚信号连接到比较器

7、A。B4B7:未用。233 端口禁止寄存器CAPDB7 B6B5 B4B3 B2B1 B0CAPD.7CAPD.6CAPD.5CAPD.4CAPD.3CAPD.2CAPD.1CAPD.0B0B7:CAPD.X。0:各输入端口的缓冲电路打开。1:各输入端口的缓冲电路关闭。3接口电路设计MSP430F1121与干簧管水表传感器接口电路原理图如图二。图二 原理图31 水表传感器原理水表传感器由电阻RA1、RB1、RA2、RB2及干簧管KA、KB组成,水表传感器简图如图三。图三中干簧管KA、KB圆心角120度,圆心角120度的扇形磁钢绕O点顺时针旋转,从图中位置起,指针旋转一周,KA、KB的动作状态为

8、:KA吸合KB释放;KA、KB同时吸合;KA释放KB吸合;KA、KB同时释放;KA吸合KB释放。通过分析这个动作次序,就可以对传感器进行计数及正反转判断。32 接口电路原理图二中电阻RA1=RB1、RA2=RB2、RA3=RB3,Vcc经过电阻分压后,在MCU的P2.3、P2.4脚可获得U0=VccRA2/(RA2+RA3)、U1=Vcc(RA1+RA2)/(RA1+RA2+RA3)两个电平,U0在干簧管吸合状态时产生,U1在干簧管释放状态时产生。适当选择电阻的阻值,可以使0.5VccU10.25VccU00.2Vcc,取中间值U1=0.375Vcc、U0=0.225VCC,可以计算出R2=4

9、5R1/48、R3=155R1/48,电阻阻值可以选择R1=48K、R2=45K、R3=155K。4程序设计41 识别指针位置子程序当干簧管闭合时,相应输入脚电平为0.225Vcc,干簧管断开时,相应输入脚电平为0.375Vcc,通过片内比较器,将输入脚电平分别与内部参考电平0.25Vcc比较,我们可以将输入的模拟电平信号转换为反映干簧管工作状态的逻辑信号,从而识别出指针所处的位置。子程序清单如下:COMP3CLRR7MOV.B#CAON+CAREF0+CAEX,&CACTL1 ; 比较器开,参考电压Vcc/4 = -COMPMOV.B#P2CA1,&CACTL2 ; P2.4 = +COMP

10、BIT.B#CAOUT,&CACTL2; 查询比较结果JCCOMP31BIS.B#001H,R7COMP31MOV.B#CAON+CAREF0+CARSEL,&CACTL1 ; 比较器开,参考电压Vcc/4 = -COMPMOV.B#P2CA0,&CACTL2; P2.3 = +COMPBIT.B#CAOUT,&CACTL2; 查询比较结果JNCCOMP32BIS.B#002H,R7COMP32MOV.B#000H,CACTL1 ; 比较器关RET42 传感器线路故障判断子程序421 线路开路判断子程序当传感器线路开路时,由于上拉电阻RA3、RB3的作用,P2.3、P2.4电平为Vcc,通过与

11、品内参考电压0.5Vcc比较,可识别其状态。子程序清单如下: COMP1CLR R7MOV.B #CAON+CARSEL+CAREF1,&CACTL1 ; 比较器开,参考电压Vcc/2 = -COMPMOV.B#P2CA1,&CACTL2 ; P2.4 = +COMP BIT.B#CAOUT,&CACTL2; 查询比较结果JZCOMP11MOV.B#0F0H,R7JMPCOMP12COMP11MOV.B#000H,R7COMP12MOV.B#P2CA0,&CACTL2 ; P2.3= +COMPBIT.B#CAOUT,&CACTL2; 查询比较结果JZCOMP13ADD.B#00FH,R7CO

12、MP13MOV.B#000H,CACTL1 ; 比较器关RET422 线路接地判断子程序当传感器线路被接地,P2.3、P2.4脚电平为0,通过与片内参考电压0.55V比较,可以识别其状态。子程序清单如下:COMP2CLR R7MOV.B #CAON+CAREF0+CAREF1+CARSEL,&CACTL1;比较器开,参考电压0.55V=-COMPMOV.B#P2CA1,&CACTL2 ; P2.4 = +COMP BIT.B#CAOUT,&CACTL2; 查询比较结果JNZCOMP21MOV.B#0F0H,R7JMPCOMP22COMP21MOV.B#000H,R7COMP22MOV.B#P2

13、CA0,&CACTL2BIT.B#CAOUT,&CACTL2; 查询比较结果JNZCOMP23ADD.B#00FH,R7COMP23MOV.B#000H,CACTL1 ; 比较器关RET在这个设计中,需要确保U0=0.225Vcc0.55V,否则系统会把正常的逻辑低电平识别为线路被接地。43 主程序设计因系统需实时检测传感器线路状态,所以主程序宜使用定时中断查询方式扫描传感器接口,扫描结束后MCU可进入休眠状态以节省功耗。主程序框图如图四所示,程序初始化以后需首先读传感器的起始位置并记录,在传感器再次进入该位置时即可给计数器加一。主功能处理包含显示、执行机构等模块的处理内容,处理完毕后进入LP

14、M3低功耗模式,此时MCU耗电流约1uA,定时计数器仍正常工作。MCU在LPM3低功耗模式下可被定时中断及外中断唤醒。44 定时采样子程序设计在系统设计中可以使用16位定时器TIMER-A或看门狗定时器WDT产生定时中断,每个采样周期应小于传感器在最快旋转速度下一个周期的四分之一,以确保能对传感器的每个位置进行采样。进入中断服务子程序后首先判断系统线路是否正常,如果有异常,则将相应标志位置位,退出采样程序。返回到主程序后,主程序根据标志位进行相应处理,如事件记录、告警提示等等。线路正常,则将当前传感器位置与以前采样时的位置进行逻辑分析,识别传感器是否发生位置改变,是否正向旋转,是否完成了一周的旋转等。5结束语本设计方法在我们多个产品中使用,运行效果理想,具有低成本、低功耗的特点,接口只占用两个IO端口,外围元件少,在设计电源电压范围内,不受电源电压波动的影响,整体性能非常突出。参考资料:MSP430X11X1 Data SheetUSA : Texas Instruments 1999MSP430系列FLASH型超低功耗16位单片机北京航空航天大学出版社 胡大可 2001 (注:文件素材和资料部分来自网络,供参考。请预览后才下载,期待你的好评与关注。)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1