Jump to content
Sign in to follow this  
-=gga=-

Как Настроить I2c В Avr На Slave

Recommended Posts

Здравствуйте!

Есть задача связать два контролера между собой по интерфейсу I2C. Один из них (BF537) настроен как мастер. Он должен время от времени обращаться к slave устройству на AVR контроллере и запрашивать у него данные. Т.к. на шине есть другие slave устройства, для AVR было решено отвести адресс 0х35.

Дело в том, что CodeVisionAVR сгенерировал код для AVR но в качестве мастера, а мне нужно, что бы он был именно slave.

Нет ли готовой библиотеки для того, что бы настроить AVR на слайв ?

В качестве МК можно использовать ATmega8 (ну или ATtiny2313)

Дело срочное, время поджимает, вот по этому надо что-то готовое. Гугл ничего толкогого на С не дал к сожалению...

Спасибо!


Я был механик, я есть механик, я буду механик

Share this post


Link to post
Share on other sites

Вот нашёл в инете (точнее на сайте атмела) пример настройки TWI как на slave так и на master. Это апноуты AVR311 и AVR315 соответственно. Там исходник на С, но для компилятора IAR. Я его переделал немного, и подогнал под компилятор Codevision. Код скомпилировался, но работать корректно не хочет. Я симулирую слайв и мастер в протеусе. Мастер отправляет команду, слайв отвечает. Но корректно не получается... Мне нужно всеголишь два функционала:

1. Мастер передаёт коменду (например какой-то символ) а слейв вызывает функцию соответствующую этой команду. При чём слайв при этом ничего не возвращает мастеру.

2. Мастер отправляет кманду (уже другую), а слейв в ответ высылает два числа (в пределах char).

В исходниках вагон функций, бусь над ними уже почти целый день, но так и не могу понять как они работают...

TWI_for_Codevision.rar


Я был механик, я есть механик, я буду механик

Share this post


Link to post
Share on other sites

Вебинар "Разбор новых уникальных модулей FMAC и CORDIC в микроконтроллерах общего назначения STM32G4" (15.07.2020)

Компания КОМПЭЛ приглашает вас принять участие в вебинаре 15.07.2020, посвященном новому семейству микроконтроллеров общего назначения – STM32G4. Вебинар рассчитан на технических специалистов и тех, кто знаком с основами цифровой обработки сигналов. Мы разберем алгоритм работы CORDIC, а также рассмотрим пример создания цифрового фильтра на базе FMAC.

Зарегистрироваться на вебинар

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...