[an error occurred while processing this directive]
|
Этот слэйв при обнаружении старта должен устанавливать RD4, но этого не происходит. В чем ошибка?
main()
{
CLRWDT();
PORTB = 0;
TRISB = 0b11111111; // all inputs
RBPU = 0; //RB to high
PORTC = 0;
TRISC = 0b10011000; // sda, scl - inputs
PORTA = 0;
TRISA = 0b00000000;
PORTD = 0;
TRISD = 0b00000000;
PORTE = 0;
TRISE = 0b00000000;
SSPEN = 1;
SSPCON2 = 0;
SSPM3 = 1; /* slave 7-bit address */
SSPM2 = 1;
SSPM1 = 1;
SSPM0 = 0;
SSPADD = ADDR_SLAVE;
CKP = 1;
// SMP = 1;
flag_end_receive = 0;
SSPIE = 1;
PEIE = 1; /* enable interrupt periferii */
// GIE = 1;
// PORTD = SSPCON1;
//Wait_C: while(flag_end_receive == 0)CLRWDT();
Wait_C: while(SSPIF == 0){ };
RD4 = 1;
SSPIF = 0;
flag_end_receive = 0;
goto Wait_C;
E-mail: info@telesys.ru