Программный I2C: в Proteus'е работает, в реале - нет

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Аватара пользователя
Zwanzig
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Вт янв 26, 2010 21:49:41
Откуда: モスクワ

Программный I2C: в Proteus'е работает, в реале - нет

Сообщение Zwanzig »

Собрался я тут забацать программный I2C (slave), чтобы подключить несколько ATtiny13 к меге8. Фирменный атмеловский аппноут не подошёл, т.к. единственный таймер уже занят, а в паре либов от какого-то поляка разобраться я не смог.
Посему написал свою либу на асме, и всё бы хорошо, да осциллографа у меня цифрового нет... Поэтому всё отлаживал в Протеусе, с его глючным виртуальным осциллом. Так вот, теперь всё остановилось на том, что в Протеусе работает, а в реале - нет :(
И причина не в длинных проводах, емкостях и индуктивностях, потому как данные со слэйва приходят без ошибок на скорости вплоть до 100 кГц. Но стоит мне послать на шину другой адрес, не принадлежащий этому слэйву (DS1307, например), как слэйв сразу уходит в ступор, и на запросы больше не реагирует, посылая NACK. А в Протеусе - всё ОК.
Единственное, что приходит на ум - TWI у меги в реале работает не так, как в протеусовской модели, и идёт какой-то рассинхрон. Но осцилла у меня, как я уже говорил, нет, поэтому... :cry:
Могу выложить сюда своё творение, хотя вряд ли кому-то захочется ковыряться в этом дерьме :))) Поэтому, может быть, хотя бы советы какие-нибудь дадите, или кините пару осциллограмм работы TWI в AVR.
Реклама
Аватара пользователя
Zwanzig
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Вт янв 26, 2010 21:49:41
Откуда: モスクワ

Re: Программный I2C: в Proteus'е работает, в реале - нет

Сообщение Zwanzig »

Неужто так тяжко?! Дело срочное, в конце месяца сдавать :o
Реклама
Аватара пользователя
demson
IT KT
Сообщения: 1309
Зарегистрирован: Пн авг 25, 2008 08:49:33
Контактная информация:

Re: Программный I2C: в Proteus'е работает, в реале - нет

Сообщение demson »

в протеусовской модели даже ЖКИ не работает графический. Писались 2 библиотеки одна для протетуса, другая для железа. Так что рассчитывать на его правильность не стоит.
в спорах рождается ИСТИНА [AND] flud.
Аватара пользователя
Zwanzig
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Вт янв 26, 2010 21:49:41
Откуда: モスクワ

Re: Программный I2C: в Proteus'е работает, в реале - нет

Сообщение Zwanzig »

Ну я и писал на для протеуса, а на реальные платы. В нём просто отлаживал, т.к. нет у меня осцилла! Вот уж не понятно, где там что не так, на осциллограмме виртуального осциллографа вылитый I2C, точно по стандарту, никаких проблем...
Реклама
Эиком - электронные компоненты и радиодетали
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»