реклама на сайте
подробности

 
 
> Arinc429 на Atmega16, реально ли?
AlexandrB
сообщение Jan 14 2013, 06:13
Сообщение #1





Группа: Участник
Сообщений: 7
Регистрация: 14-01-13
Пользователь №: 75 185



Здравствуйте, есть задачка организовать приемо\передатчик протокола arinc 429 на МК (скорее всего будет задействована ATmega16 на 16Мгц), общение с ПК будет через USB на FT232, прием с шины аринка будет организован с помощью ттл микросхем которые будут преобразовывать 3х уровневый сигнал аринка в сигналы 0-5В, частота 48кГц(погрешность 5%).
Основной вопрос будет ли успевать все работать, так как прием\передача будут идти паралельно ?
Пытался ли кто нибудь делать такое на МК ?
Буду благодарен всем кто поможет советом sm.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
RabidRabbit
сообщение Jan 15 2013, 17:51
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 397
Регистрация: 3-12-09
Из: Россия, Москва
Пользователь №: 54 040



Если скорость UART будет 115200 - то всё успеете. Прерывания на мегагерцы, по-моему, не нужны (да и не успеет процессор sm.gif) Для проверки длительности битов по-моему достаточно будет таймера, запускаемого при приёме очередного бита (ну это при условии что от Вашей схемы на TTL придут уже готовые сигналы битов 0 и 1, а это видно так и есть, раз Вы собираетесь использовать всего два входа, а не три). Прерывания от INT0, INT1, приёмника и передатчика UART, переполнение от таймера - мне кажется этого будет достаточно. Если сомневаетесь, можно применить мегу из новых серий, которые работают штатно до 20 МГц.
А, да, передача - на неё ещё один таймер. Так как +- 5% то беспокоится по поводу "сбивания времянок" прерываниями наверно не стоит...
Go to the top of the page
 
+Quote Post
S17
сообщение Jan 16 2013, 10:17
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 105
Регистрация: 22-06-05
Пользователь №: 6 228



Делал на ADSP2185 (в ту пору сигнальный процессор, 16 бит, 80МГц). На выдачу 2 канала, на приём 3 канала – всё параллельно. Выдача реализована на SPORT – в AVR можно попробовать пристегнуть SPI. Приём: считывались 6 бит =(CLK+DATA) * 3канала (или DATA0+DATA1, уже не помню). На один канал уходило 5 бит: 4 бита на фильтр-счётчик и 1 бит результат (или м.б. 3 бита - счётчики, 1 - результат, 1 – защитный). 5 бит упаковывались в два 16-битных слова: одно на все 3 CLK и одно – на все 3 DATA (или м.б. DATA0 и DATA1) , каждое слово обрабатывалось целиком – т.е. результат наличия бит и их значений получался параллельно для 3-х входных каналов. Дальше эти результаты распихивались по 3-м каналам, но уже последовательно… Пороги задавались в виде констант, которые прибавлялись-вычитались к этим фильтрам счётчикам. Каждый канал мог работать на своей скорости.
Обработка была написана на ассемблере – в ADSP он очень понятный и удобный. От ADSP2185 нужны были битовые операции. Не знаю, как в ATmega16, но в AVR32 – с этим всё очень хорошо! Обмен с HOST-ом был на уровне буферов – буферы приёма, буферы выдачи. На счёт фильтрации адресов – не помню. Т.е. производительности вполне хватило. ATmega16 – это 8бит, 16 МГц…

На счёт ARINC – посмотрите компанию HOLT: http://www.holtic.com/default.aspx


Сообщение отредактировал S17 - Jan 16 2013, 10:33
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- AlexandrB   Arinc429 на Atmega16   Jan 14 2013, 06:13
- - RabidRabbit   Ну примерно прикиньте: если один бит за 1/48000 се...   Jan 14 2013, 09:14
|- - AlexandrB   Цитата(RabidRabbit @ Jan 14 2013, 13:14) ...   Jan 15 2013, 13:29
- - Сергей Борщ   Один таймер генерит единственные прерывания с част...   Jan 15 2013, 14:14
- - rx3apf   Не вникая в подробности протокола, могу тем не мен...   Jan 15 2013, 15:32
- - AlexandrB   Оцените такой вариант: Прием из аринка - Прерывани...   Jan 17 2013, 10:09
- - RabidRabbit   Ну сами посчитайте 16 000 000 / 2 500 000 = 6.4 та...   Jan 18 2013, 05:45
|- - AlexandrB   RabidRabbit Не совсем понимаю ваш вариант, т.е. он...   Jan 18 2013, 07:46
|- - Сергей Борщ   QUOTE (AlexandrB @ Jan 18 2013, 09:46) На...   Jan 18 2013, 09:10
||- - RabidRabbit   Цитата(Сергей Борщ @ Jan 18 2013, 13:10) ...   Jan 21 2013, 05:37
|- - RabidRabbit   Цитата(AlexandrB @ Jan 18 2013, 11:46) Ra...   Jan 18 2013, 12:27
- - Hmm   Делал когда-то ... Приёмопередатчики с линии от ...   Jan 18 2013, 13:42


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th August 2025 - 12:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.01387 секунд с 7
ELECTRONIX ©2004-2016