用这个申矽凌的CT1820的代码试试uchar CT1820Init(){uchar i;DSPORT =0; //将总线拉低480us~960usdelay600us(); //450us to 700usDSPORT =1; //然后拉高总线,如果CT1820做出反应会将在15us~60us后总线拉低i =0; //while(DSPORT) //等待CT1820拉低总线{delay500us();i++;if(i>1)//等待>5MS, set 2 = 2.48ms{return 0;//初始化失败}}return 1;//初始化成功}