//a/d初始化子程序 void a_dzh(void) {PINSEL1=0X00030000; AD0CR= (0x1<<2) | ((fpclk/1000000-1)<<8) | (0x0<<16) | (0x0<<17) | (0x1<<21) | (0x0<<22) | (0x1<<24) | (0x0<<27); DelayNS(50 ); a_dbat=AD0DR2; } 下面是发送子程序: while ( 1 ) { if(k==9) //进入接收中断给k=9,产生标志 { fason(); //发送a_dbat里面的值 k=0;} //AD0CR = AD0CR | (1 << 24); AD0CR=(AD0CR&0xffffff00)|1<<2|(1<<24); while((AD0DR2&0X80000000)==0); AD0CR = AD0CR|(1<<24); while((AD0DR2&0X80000000)==0); a_dbat=(AD0DR2>>6)&0x3ff; } 以上程序:我给开发板发数据,产生k=9标志后,开发板不发数据,说明没有启动 a/d采样,没有产生转换完成标志。请问这是什么原因?我头大了。 |