Здравствуйте ув. радиолюбители.
Прошу сразу не пинать за ,может быть, тупые вопросы(я начинающий программист МК).
Такой вопрос!
Как соединить 2 и более МК (Attiny461) по I2c. Причем по этой шине к одному из МК подключены часы ДС1307.
В общем делаю приборную панель на АВТО( термометр, бакомер, часы, спидометр и что-то типа Бортового компа). По отдельности приборы работают, но кнопки управления, настройки приборов и т.д подключены только к БК. Также при вкл. габаритов в приборы необходимо записать код изменения яркости (Спасибо Админу за помощь).
Короче запарился вообще с этой шиной(Master,Slave и т.д). Понял только что система работает в режиме Multi-masner или Арбитраж.
Программу пишу в CodeVision!
Спасибо за ответы.
2 МК по шине I2C
Модератор: boogyman
2 МК по шине I2C
Последний раз редактировалось Maks_24 27 янв 2014, 16:19, всего редактировалось 1 раз.
Re: 2 МК по шине I2C
Рекомендую ознакомиться http://radioparty.ru/index.php/literatu ... hinaushich , http://radioparty.ru/index.php/literatu ... en-dannymi , если еще не читали
Re: 2 МК по шине I2C
Лебедева уже прочитал(по этой книге осваивал CVAVR). Есть там примеры с I2c, но о работе двух и более ведущих МК ни слова.
Посмотрю вторую книгу может что нибудь прояснится.
Спасибо.
Посмотрю вторую книгу может что нибудь прояснится.
Спасибо.
Re: 2 МК по шине I2C
По теории все выглядит очень просто. Но запустив кодвижн - ступор.
Можно ли использовать стандартные библиотеки i2c для работы в режиме арбитраж?
Как определять занятость шины? Может так(PA0-sda,PA1-scl):
Не могу сообразить как это все отобразить!
Можно ли использовать стандартные библиотеки i2c для работы в режиме арбитраж?
Как определять занятость шины? Может так(PA0-sda,PA1-scl):
Код: Выделить всё
...
if(PINA.0 == 1)//определяем свободна ли шина
{
i2c_start();
i2c_write(0х1а);// обращаемся к нужному устройству
i2c_write(data);
i2c_stop();// пишем данные в шину
}
...