楼主
发表于 2010-7-29 17:18
| 只看该作者
急!!!!!AD问题
本帖最后由 liuxingxyz 于 2010-8-3 17:23 编辑
大家看看我这段AD函数在程序运行后为什么不能采集到数据?我用的单片机是PIC16F677,AD不能工作。
/***********************************************************************/
#include<pic.h>
__CONFIG(0x33c4);
//#define BAT20IN RC3
/***********************************************************************/
void ADConversion(void);
static unsigned int result;
void main(void)
{unsigned int i;
OSCCON=0B01110111;
TRISA4=0;
//TRISC6=0;
RA4=1;
//RC6=1;
for(i=0;i<5000;i++);
for(;;){
ADConversion();
if(result>=0xB2){RA4=0;}
}
}
//*********************** 转向AD函数 ********************
//函数定义:void AD_TurnConversion(void) 10位AD转换
//描述:
//参数: 无
//返回值: 无
//备注:
//*******************************************************
void ADConversion(void)
{ ADCON1=0B01110000;
TRISC3=1;
ANS7=1;
ADCON0=0B10011101; //7通道
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
GODONE=1; //开始转换
while(GODONE){ } //等待转换完成
result = (ADRESH << 8) + (ADRESL);
ADON=0; //关闭AD
} |
社区口号:开发路上不能单打独斗,帮助需要帮助的人,是对帮助过你的人最大的感谢! |