我在使用MC908SR12内部温度传感器测芯片内部温度时遇到了一个问题,选择内部温度传感器时两级放大器GAINA=2,GAINB=6,在其PDF的增益表中查得GAINB[3:0]=0101,GAINA[3:0]=0001,所以AMGCR=0x51,但若使用PE的设置,GAINB[3:0]=0110,GAINA[3:0]=0010,变成了AMGCR=0x62,甚是不解,难道是我理解错误? 另外我在程序里将AMGCR=0x51,AD转换结果采用左对齐模式, adc_result=ADR0H; adc_result<<=8; adc_result=(adc_result|ADR0L); adc_result>>=6; 采到的值用数码管显示为700,这个值如何转化为温度,由于相应资料极少,请专家指教。我的想法是这个值可能要除以12, 即实际温度=-20+(显示值)/(12*1.338),前面的-20是由于单片机的测温范围从-20~70度。但是我用吹风机吹芯片好长时间,手摸上去已经很烫,显示值只增加了70左右,换算成温度只有几度,这个结果显然不对。 困惑中 |