Цитата(evc @ May 9 2008, 13:37)

SDA и SCL пины должны быть настрены на вход. И лучше оставьте I2CxCONbits.14 в 0!
Благодарю за ответ.
Настроил SDA и SCL пины на вход, установил I2CxCONbits.14 в 0.
Результат прежний.
В пошаговом режиме после установки бита SEN пины в 0 не устанавливаются.
Тактирование от внутреннего генератора 8мГЦ.
Пробовал менять чип, результат прежний.
прилагаю исходник
int main(woid)
{
ControlByte = 0x3C <<1;
TRISB = 0xffff;
/
I2C2BRG = 78;
I2C2CON = 0x9200; //Enable While PB9 is low
I2C2ADD=0;
I2C2MSK=0;
while(1)
{
while (I2C2STATbits.TRSTAT); //Wait for bus Idle
I2C2CONbits.SEN = 1; //Generate Start COndition
while (I2C2CONbits.SEN); //Wait for Start COndition
//(В пошаговом режиме после установки бита SEN пины в 0 не устанавливаются.)
while (I2C2STATbits.TRSTAT); //Wait for bus Idle
I2C2TRN = ControlByte; //Load byte to I2C1 Transmit buffer
while (I2C2STATbits.TBF); //wait for data transmission
while (I2C2STATbits.TRSTAT); //Wait for bus Idle
I2C2TRN = 0x80; //Load byte to I2C1 Transmit buffer
while (I2C2STATbits.TBF); //wait for data transmission
while (I2C2STATbits.TRSTAT); //Wait for bus Idle
I2C2CONbits.PEN = 1; //Generate Stop Condition
while (I2C2CONbits.PEN); //Wait for Stop
for(i=0; i<10; i++);
}
return 0;
}
Сообщение отредактировал PoroHard - May 9 2008, 11:23