Была и у меня такая беда, сиг021, тоже работал с щюпа осцилографа. Это виснет шина. Небейте ногами, времени небыло разбиратся почему но сделал через жопу и работает.Прощеговоря перед инициализацией смбуфа надо делать стоп условие напрямую ногами.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено колян безпарольный 18 октября 2003 г. 00:59
В ответ на: Люди что за ерунда, не работает SMBus, или I2C она еще называется, пока не коснешся ножки процессора? (+) отправлено Vlad77 17 октября 2003 г. 11:24

bit WaitClrBusy(void)
{unsigned char a;

a=0;
while (a<200)
{a++;
if (BUSY==0) return(1);
delay_time(100);
}
//Зависла шина

XBR0&=0xFE; //Отключить СМБуф
a=0;
while (a<200)
{a++;
SDO=1;SCL=1;
delay_time(100);
SCL=0;
delay_time(100);
SCL=1;
delay_time(100);
if (SDI==1){XBR0|=0x01; return(1);}
}
return(0);


}

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru