Ты сильно заблуждаешься(+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

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

Отправлено L.A. 11 августа 2003 г. 11:44
В ответ на: Для затравки. Это реальный случай или для примера? (+) отправлено abivan 11 августа 2003 г. 10:33

По поводу быстродействия. При тактовой 20 МГц приведенный ниже кусок ( как видишь это твой пример плюс проверка АСК) выполняется 20 мКс
Оптимизация включена - 9 уровень. Прикомпиляции на АСМе тот же кусок будет выполнятся примерно 20 МЦ или 20*0,2 = 4 мкс.

//***********************************
// I2CSend - передача байта по I2C
//------------------------------------
void I2CSend ( unsigned char Data )
{
unsigned char i = 8;
//
do
{
SDA = 0;
if ( Data & 0x80 )
SDA = 1;
SCL = 1;
Data = Data << 1;
SCL = 0;
}
while(i--);
//======================================
// Переключим шину данных на вход и проверим ACK
//=======================================
SDA_CNF = 1;
//
SCL = 1;
NOP();
//
FlagAsk = SDA;
//
SCL = 0;
SDA_CNF = 0;
} // I2CSend


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

Ответы



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

E-mail: info@telesys.ru