ORFA — различия между версиями
Vooon (обсуждение | вклад) м (переименовал репозиторий) |
Vooon (обсуждение | вклад) м |
||
Строка 5: | Строка 5: | ||
Архитектура и сами прошивки сейчас находятся в разработке. | Архитектура и сами прошивки сейчас находятся в разработке. | ||
+ | == Описание == | ||
Текущая версия состоит из монолитного шлюза [[w:UART|UART]]->[[w:i2c|I<sup>2</sup>C]] | Текущая версия состоит из монолитного шлюза [[w:UART|UART]]->[[w:i2c|I<sup>2</sup>C]] | ||
и модульного виртуального подчиненного устройства на шине I<sup>2</sup>C. | и модульного виртуального подчиненного устройства на шине I<sup>2</sup>C. |
Версия 12:25, 9 мая 2009
ORFA — это модульная архитектура прошивки для семейства контроллеров Open Robotics.
На данный момент поддерживает только микроконтроллеры семейства AVR ATMega.
Архитектура и сами прошивки сейчас находятся в разработке.
Содержание
Описание
Текущая версия состоит из монолитного шлюза UART->I2C и модульного виртуального подчиненного устройства на шине I2C.
При таком подходе ПК обращается к блокам МК как и к любым другим устройствам на шине i2c, что дает унификацию. А при незначительной модификации виртуального слейва можно сделать прошивку для второго контроллера, уже не являющегося шлюзом, управляемого через i2c.
Т.е. можно достаточно малой кровью получить хорошо расширяемую систему.
Взаимодействие модулей подчиненного устройсва основано на регистровой модели, т.е. каждый драйвер устройства связан с определенным набором адресов ячеек.
Структура и взаимодействие модулей в варианте с модулем uart->i2t:
Структура и взаимодействие модулей в варианте только i2c slave:
Команды UART->I2C
Все команды текстовые, перевод строки означает окончание команды, запуск на исполнение.
Название | Запрос | Ответ | Комментарий |
---|---|---|---|
Get protocol version | V
|
V1.0
|
|
Clear I2C bus | X
|
X
|
|
Set local address | L<addr>
|
L<addr>
|
|
Set bus speed (freq) | C<freq>
|
C<freq>
|
|
Read register | R<addr><reg>[<len>]
|
SWASR<rdata>P
|
|
Write register | W<addr><reg>
|
SWA(A)+P
|
A = Ack |
I2C request |
|
|
|
Установка
Репозиторий исходных кодов: http://hg.vehq.ru/orfa