Хочу сделать осциллограф (поласа не меньше чем 1 МГц), наверно нужно делать с АЦП у которого есть ОЗУ , а потом передать на МК который передаст на ПК через UART. Кто то знает АЦП у которого есть ОЗУ и он может давать такое количество выборок по т. Котельникова нужно > 2000000 выборок/сек.
Последний раз редактировалось inkHunter Ср янв 12, 2011 23:49:28, всего редактировалось 1 раз.
Не попадались такие. Уж слишком многого желаете. Поставьте ОЗУ на 1 МБ, АЦП и МК. Тогда наступит рай
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Если хотите создать систему реального времени - ничего не выйдет. Накопить накопите, а обработать не успеете. Если просто накопление 2 млн выборок, с последующей передачей в течение времени Т, без нового накопления, то какая разница сколько нужно этого самого Т? Хотите ускорить - тогда делайте нечто подобное "качелям" (пинг-понг западном диалекте) - в одно ОЗУ записываете, из другого считываете для обработки. Затем наоборот.
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Если хотите создать систему реального времени - ничего не выйдет. Накопить накопите, а обработать не успеете. Если просто накопление 2 млн выборок, с последующей передачей в течение времени Т, без нового накопления, то какая разница сколько нужно этого самого Т? Хотите ускорить - тогда делайте нечто подобное "качелям" (пинг-понг западном диалекте) - в одно ОЗУ записываете, из другого считываете для обработки. Затем наоборот.
я так и хочу накопить пауза передать и так дальше ... если период сигнала 50 Гц 0.02 то я дамаю Т узять 0.02 больше и не нужно теперь вопрос если АЦП дает 2млн выборок за/ сек то за Т=0.02 сек я получу 400 000 выборок как их передать на МК, реально ?
Ну возьмем к примеру AVR с тактовой 16 МГц. Обращение к памяти, займет порядка 8-20 тактов. За период в 1 с, загрузите около 1 млн отсчетов (1 отсчет = 1 байт). Далее на обработку нужно время. Хранить в AVR почти негде - 2 кБ памяти ОЗУ на 400000 отсчетов это несерьезно.
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Ну возьмем к примеру AVR с тактовой 16 МГц. Обращение к памяти, займет порядка 8-20 тактов. За период в 1 с, загрузите около 1 млн отсчетов (1 отсчет = 1 байт). Далее на обработку нужно время. Хранить в AVR почти негде - 2 кБ памяти ОЗУ на 400000 отсчетов это несерьезно.
ну через АВР ни как не покатет... еще же нужно прийнять через UART еще 20 тактов примерно ... Можно как то саму память подключить к АЦП записать на ней например за 0.05 сек и дальше передать и заново так ?
Конечно можно. Делаете общую шину, на которой "сидят" АЦП, ОЗУ и МК. Затем управляя МК записываете ОЗУ отсчеты. По заполнению - считываете и транслируете куда надо.
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
себе на логический анализатор ставлю такую ОЗУ Одним махом 16 бит данных и 256 килоотсчетов
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Если сумеет сопрячь МК, АЦП и 8-битное ОЗУ, то сможет и нарастить разрешение до нужного.
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Satyr, разве размер имеет значение? Какая половая разница, 8 бит ОЗУ или 32? В данном контексте все слишком условно - типа МК нет. Оттуда нет данных что и как прикрутить. Нет ОЗУ - чего мусолить? Нет АЦП, о чем речь то?
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
а дальше что с ними сделать куда записать на МК ? мало места 1Кб, запишем 1024 значений и все ...
Ну так на этот вопрос Вы, автор, должны ответить. Есть шина по которой идет запись/чтение данных из АЦП в ОЗУ и из ОЗУ в МК. Дальше пересылаете "порциями". В любом случае не рекомендую делать отсылку больше 64 байт - то скорость не совпадет, то еще что-то сыграет. А так пакет - отосллали, за ним второй, тридцатый, стопиццотый. Потихоньку отошлете все свои 2 метра
_________________ Загружая на вход компьютера "мусор", на выходе получим "мусор^32". PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения