PIC做从机,不知道怎么回事,SSPIF一直不能置1,通过软件置1能进入中断服务程序。<br />用示波器量了无应答信号<br /><br />初始化程序如下:<br />void init_I2C(void) //初始化函数<br />{<br /> unsigned char j ;<br /> TRISB = 0x50;<br /> <br /><br /> SSPCON = 0x36; //7地址为从<br /> SSPSTAT= 0x80;//初始状态<br /> SSPADD = 0xa8;//器件地址<br /> <br /><br /> j = SSPBUF;<br /> SSPOV = 0;<br /> <br /><br />}<br /><br />void init_interrupt()<br />{<br /> GIE = 1; //全局中断允许<br /> PEIE = 1;//外设中断允许<br /> SSPIE = 1;//SSP中对允许<br /> SSPIF = 0;//初始化SSP 中断标志 <br /><br /><br /> INTE = 1;//外部中断允许<br /> INTF = 0;//初始化外部中断标志<br /> <br />} |
|