阅读:936回复:3
有关数据采集的问题,头发都白了。
各位,有谁用过MAX197呀(8通道的A/D转换器)。
当我给每路输入5V电平时,按理应该在转换结果中,第二个字节的值都应该是07H才对,但是,我的结果是第二个字节正好是通道号,也就是通道一的输出是01H,通道二的输出是02H,依次类推,第7路输出07H,有没有人碰到过这样的问题呀?怎么解决的,还望不吝赐教。 |
|
沙发#
发布于:2002-12-09 15:07
哎!等了这么久,怎么没人来呀。
是不是问题太简单啦? 这可是最后的关头,解决了就大功告成了,回答对了送50分! |
|
板凳#
发布于:2002-12-09 15:43
建议检查一下硬件电路,如果没问题就是软件读写的问题!
|
|
地板#
发布于:2002-12-09 15:56
那么对197命令字的设置,除了模式和幅度外,应该没有其他问题吧?我的命令字第一路是49H.
我的代码是: void Isr_Timer1(void) interrupt 1 { void init_Timer0(); DISABLE_INTERRUPTS; DISABLE_D12; ENABLE_AD; /*enable A/D*/ Init_Timer0(); IC_WR=0; P0=channel; /* Start A/D */ IC_WR=1; Delay(20); P3_1=0; IC_RD=0; GenBuf[re_p]=P0; /*read low 8bits*/ IC_RD=1; re_p++; P3_1=1; IC_RD=0; GenBuf[re_p]=P0; /*read high 4bits*/ IC_RD=1; channel++; re_p++; q++; if(q==7) { GenBuf[0]=0xff; GenBuf[15]=0x00; channel=0x49; re_end=1; /*转换完成标志位*/ re_p=1; q=0; } DISABLE_AD; ENABLE_D12; ENABLE_INTERRUPTS; } re_p的初植是1。 |
|