|
AVR+TFT моник |
|
|
|
 |
Ответов
(45 - 59)
|
Mar 9 2007, 16:11
|

За битами по регистрам гоняюсь
  
Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446

|
Цитата(muravei @ Mar 9 2007, 12:36)  ... Следовательно, если синхронизировать АЦП от того же генератора, что и АВР, можно получать 1 сэмпл за 3 такта, просто считывая содержимое порта и помещая его в буфер. Для этого достаточно двух команд: in, sts. Функция выборки, соответственно, состоит из 400 пар in + sts (по размеру буфера). Идея замечательная, можно ведь и N процессоров AVR поставить, сделать последовательную многофазную синхронизацию всех МК, а от исходной частоты тактирования (которая будет больше тактовой МК в N раз) синхронизировать АЦП. Имхо, удобный кристалл AD9050, параллельный, недорогой, скоростной. А что касается программы, то за 3 такта не получится, разве что за 4. Команда STS при работе с внешним ОЗУ занимает 3 такта, да ещё адрес изменять нужно. Лучше, наверное ST X+,r. Кстати, ведь можно будет использовать для синхронизации сигнал ALE! В общем, ИМХО, нужно эту идею практически проверить. Получится ведь что-то типа стробоскопического осциллографа. Память у каждого МК будет своя, понадобится ещё один управляющий кристалл для считывания и склеивания всех данных в одну осциллограмму. Управляюжий МК будет просто отпускать сигнал /RESET у всех подчинённых, следить за заполнением буфера и в нужный момент прекращать их работу. USB можно прикрутить на FTDI245, да и свой индикатор использовать. 2 muravei
--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
|
|
|
|
|
Mar 9 2007, 17:59
|

Гуру
     
Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591

|
Цитата(Nanobyte @ Mar 9 2007, 16:11)  [ А что касается программы, то за 3 такта не получится, разве что за 4. Команда STS при работе с внешним ОЗУ занимает 3 такта, да ещё адрес изменять нужно. Лучше, наверное ST X+,r. Кстати, ведь можно будет использовать для синхронизации сигнал ALE! В общем, ИМХО, нужно эту идею практически проверить. Получится ведь что-то типа стробоскопического осциллографа. Память у каждого МК будет своя, понадобится ещё один управляющий кристалл для считывания и склеивания всех данных в одну осциллограмму. Управляюжий МК будет просто отпускать сигнал /RESET у всех подчинённых, следить за заполнением буфера и в нужный момент прекращать их работу. USB можно прикрутить на FTDI245, да и свой индикатор использовать. Весь кайф в использоании внутреннего ОЗУ МК, поэтому за 3 такта можно управиться. Кроме того , управляющий МК, на мой взгляд не нужен- каждый МК из трех может самостоятельно распихать байты в ЖК, а уж комп с этим сам справится наверняка. Полезно было бы маленькое ФИФО после АЦП.
|
|
|
|
|
Mar 9 2007, 18:16
|

За битами по регистрам гоняюсь
  
Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446

|
Цитата(muravei @ Mar 9 2007, 17:59)  Весь кайф в использоании внутреннего ОЗУ МК, поэтому за 3 такта можно управиться. Кроме того , управляющий МК, на мой взгляд не нужен- каждый МК из трех может самостоятельно распихать байты в ЖК, а уж комп с этим сам справится наверняка. Полезно было бы маленькое ФИФО после АЦП. В таком случае МК может вообще не понадобиться для оцифровки. Делаем простейший автомат, который запускает АЦП и генерирует строб для микросхемы памяти, после этого увеличивает адрес (использовать отдельные микросхемы счётчиков). Здесь быстродействие системы будет ограничиваться только АЦП и управляющей логикой. После цикла записи МК считывает содержимое ОЗУ и отображает на дисплее или отправляет в ПК. В это время можно заполнять 2-ю микросхему памяти.
--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
|
|
|
|
|
Mar 9 2007, 22:33
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(muravei @ Mar 9 2007, 09:36)  Мое предложение- поставить 3 АВР и тем самым полностью использовать АЦП , все равно будет не дороже АРМ, зато понятнее. Никак не врублюсь, как сделать синхронизацию трёх МК? Я имею в виду то обстоятельство, что даже, включив МК одновременно и от одного генератора, не факт, что вы получите синхронно работающую систему, т.к. после внешнего ресета генерится внутренний ресет, продолжительность которого зависит от индивидуальных параметров сторожевого таймера. Нельзя ли осветить вопрос по-подробнее?
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Mar 9 2007, 22:33
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Цитата(muravei @ Mar 9 2007, 21:35)  Цитата(Nanobyte @ Mar 9 2007, 18:16)  Делаем простейший автомат, который запускает АЦП и генерирует строб для микросхемы памяти, после этого увеличивает адрес (использовать отдельные микросхемы счётчиков). Здесь быстродействие системы будет ограничиваться только АЦП и управляющей логикой. После цикла записи МК считывает содержимое ОЗУ и отображает на дисплее или отправляет в ПК. В это время можно заполнять 2-ю микросхему памяти.
Ну, конечно, можно, но только на ПЛИС, хотя будет ли проще и дешевле, сомневаюсь. Да. Плисину попроще, ОЗУ и АЦП. Таким образом решается проблема с запоминанием и с синхронизацией.
|
|
|
|
|
Mar 10 2007, 10:49
|

Гуру
     
Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591

|
Цитата(=GM= @ Mar 9 2007, 22:33)  Никак не врублюсь, как сделать синхронизацию трёх МК? Нельзя ли осветить вопрос по-подробнее? Я бы попробовал так, в даташитах указано мин. время гарантированного сброса. Так вот на это время останавливать внешний тактовый генератор, чтобы все сбросились, но никуда не ушли. Или синхронизировать прерыванием. А на ПЛИС можно цифровую синх. сделать. Данные с АЦП сравнивать лог. компаратором с любыл нужным числом , и при превышении и при "принижении" запускать "развертку".
|
|
|
|
|
Mar 10 2007, 11:01
|

Профессионал
    
Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380

|
Честно говоря, задача не для АВРа. Тут либо ДСП, который специально заточен под подобные операции (интерфейс к АЦП, большая скорость ядра, раздельные шины, интерфейс внешней памяти) либо жесткая логика. Делать такое на АВРе, это заведомо идти на многие лихие ухищрения и допущения. Кстати немного  а не ляжет ли под такую задачу, какой-нибудь недорогой ДСП для приводов? Типа с флэшью и АЦП на борту и FTDI в качестве USB?
--------------------
Вони шукають те, чого нема, Щоб довести, що його не існує.
|
|
|
|
|
Mar 10 2007, 12:48
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(beer_warrior @ Mar 10 2007, 08:01)  Честно говоря, задача не для АВРа. Тут либо ДСП, который специально заточен под подобные операции (интерфейс к АЦП, большая скорость ядра, раздельные шины, интерфейс внешней памяти) либо жесткая логика. Делать такое на АВРе, это заведомо идти на многие лихие ухищрения и допущения. Кстати немного  а не ляжет ли под такую задачу, какой-нибудь недорогой ДСП для приводов? Типа с флэшью и АЦП на борту и FTDI в качестве USB? Была у меня такая идея, надо было дружбану помочь. Берём tms320c5402 на 150 МГц, ОЗУ у него вагон, ставим два АЦП 14-битных по 75 Мвыборок/с, которые тактируются противофазно от дсп и получаем либо два канала по 75Мвыборок/с, либо один - но 150 Мвыборок/с. Программа для дсп смешная: состоит из двух инструкций для записи в ОЗУ + чуток побольше для обмена с хостом. Ну вот, получаем осцилл-приставку с минимумом обвязки.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Mar 11 2007, 12:45
|

Участник

Группа: Новичок
Сообщений: 39
Регистрация: 12-07-06
Пользователь №: 18 766

|
вотета Вы меня постали, я кроме АВР в жизни нечиго не видел  !!! А хоть что такое DSP(кроме того что сигнальній процессор)??? И на чем для него писать??? И чем он лутше АВРа?
|
|
|
|
|
Mar 11 2007, 14:03
|

Профессионал
    
Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380

|
Цитата А хоть что такое DSP(кроме того что сигнальній процессор)???И на чем для него писать??? Это сюда. http://electronix.ru/forum/index.php?act=SF&s=&f=3Цитата И чем он лутше АВРа? Высокая скорость, большие объемы внутренней памяти /интерфейс для внешней , скорстной АЦП на борту, система команд ориентированная на обработку сигналов (всяческие быстрые умножения и сдвиги, циклы без потерь на вычисление условий). В данном случае это стрельба из пушки по воробьям, но один такой камешек ценой $20-25 закроет целую плату с извращениями на АВРе и еще останется резерв под всякие программные фичи типа обмера сигналов, хитрой синхронизации, спектрального анализа. Единственное, чего не хватает на борту - USB.
--------------------
Вони шукають те, чого нема, Щоб довести, що його не існує.
|
|
|
|
|
Mar 11 2007, 14:40
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(beer_warrior @ Mar 11 2007, 11:03)  Цитата А хоть что такое DSP(кроме того что сигнальній процессор)???И на чем для него писать??? Это сюда. http://electronix.ru/forum/index.php?act=SF&s=&f=3Цитата И чем он лутше АВРа? Высокая скорость, большие объемы внутренней памяти /интерфейс для внешней , скорстной АЦП на борту, система команд ориентированная на обработку сигналов (всяческие быстрые умножения и сдвиги, циклы без потерь на вычисление условий). В данном случае это стрельба из пушки по воробьям, но один такой камешек ценой $20-25 закроет целую плату с извращениями на АВРе и еще останется резерв под всякие программные фичи типа обмера сигналов, хитрой синхронизации, спектрального анализа. Единственное, чего не хватает на борту - USB. Ну почему нет? У TMS320C5506, TMS320C5507, TMS320C550A есть USB2.0 на борту.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|