ADXRS453陀螺仪芯片受哪些因素的影响

ADXRS453陀螺仪芯片受哪些因素的影响,第1张

ADXRS453 是目前业界最稳定的抗振动 MEMS 陀螺仪,对线性加速度的敏感度指标只有0.01°/sec/g ,振动校正仅为0.0002°/sec/g2 ,+105°C 时噪声速率密度指标为0.023°/sec/√Hz ,在典型工作条件下的功耗仅6mA 。新款陀螺仪提供空腔塑封 SOIC-16 和 SMT 兼容垂直贴装两种封装,能够在3.3 V 至5 V 的宽电源电压范围和-40°C 至125°C 的宽温度范围内工作。

下面是我以前用过的一个程序,不过是MEGA32的,我没用过mega16,楼主只要将以下用到的控制寄存器修改成mega16的即可:

基本思想是初始化程序中设定好自动连续转换,再在中断服务程序中读取结果(每中断一次获得一个通道的转换结果值)。

void adc_init(void)

{

ADCSR = 0x00 // disable adc

ADMUX = 0xC0 // 参考电压选择片内基准电压 2.56V,从PA0号通道开始

ACSR = 0x80 // 不用模拟比较器

ADCSR = 0x89// 启动ADC,转换结果右对齐,分频因子 2

ADC_chn = 0x00 // 选择第一个通道(PA0)

}

void adc_isr(void)

{

UINT ADC_value

ADCSR |= 0x10 // 清 AD 完成标志

ADC_value = ADCL// 先读低八位数据

ADC_value |= (int)ADCH <<8// 再读高二位数据并移至高字节

if ( ADC_chn == 0x00 )

{input[0] = ADC_value// 保存PA0的值

}

else if ( ADC_chn == 0x01 )

{input[1] = ADC_value// 保存PA1的值

}

else if ( ADC_chn == 0x02 )

{ input[2] = ADC_value// 保存PA2的值

}

。。。。。。。。

else if ( ADC_chn == 0x07 )

{ input[7] = ADC_value// 保存PA7的值

}

ADC_chn ++ // 通道号加 1

if ( ADC_chn >0x07 ) ADC_chn = 0x00

ADMUX = 0xC0 + ADC_chn // 切换通道

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12045234.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存