加速度值的计算涉及到脉冲宽度的测量、周期计算、占空比计算、数制转换(十六进制数转换为BCD码)与数据等问题。加速度输出脉宽的测量来自加速度传感器输出的脉冲信号,一路直接加到P3.2(INT0),另一路经Q1组成的外围电路反相后加到P3.3(INT1)。利用单片机T0、T1的门控选择位GATE,即把T0、T1的模式控制寄存器的GATE置1,选择T0、T1工作于16位定时器模式。力普变频器开INT0、INT1外部中断,并且选择下降沿触发方式。
利用单片机的中断功能分别测出脉冲的高脉宽和低脉宽,高脉宽和低脉宽相加即为脉冲周期,进而计算出脉冲的占空比。数制转换的原因在于读取DS18B20的16位原码的十六进制数、ADXL202加速度传感器经换算得到的加速度值十六进制数、蒸发器温度传感器经A/D转换得到的温度值十六进制数,必须转换为MAX7219能接受的BCD显示代码。温度和加速度值的正负号属性可从各温度子程序和加速度子程序中设定的正负符号标志位得到,传送给显示子程序来显示。
数据实际上是加速度显示单位的,本系统当加速度为1g时数码管显示数字9.8,2g时数码管显示19.6。这样既能够满足显示分辨率和控制的要求,同时也有利于对加速度数据的整定。把加速度传感器相应的感应轴水平或垂直放置即得到0g或1g的校准值。源程序清单略。
联系人:顾莹先生
手机Mobil:
电话TEL:
传真FAX:
工作QQ: 1074756899