Пятница, 26.04.2024, 23:39
Вы вошли как Гость | Группа "Гости"Приветствую Вас Гость | RSS
Главная | Модуль цифрового осцилографа - Страница 15 - Форум | Мой профиль | Регистрация | Выход | Вход
Обитель RC-инженера
Форма входа
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: ВитГо  
Форум » Разработка электронных устройств » Разрабатываю ! » Модуль цифрового осцилографа (Пробуем свои силы в построении цифрового осциллографа)
Модуль цифрового осцилографа
ВитГоДата: Суббота, 06.10.2012, 19:07 | Сообщение # 211
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
посмотри про Память FIFO !

может быть стоит с ней попробовать ?
схема значительно упрощается..

я сейчас рисую схему в DipTrace. могу выложить что уже есть..


Виталий (аka ВитГо)
 
ВитГоДата: Суббота, 06.10.2012, 21:09 | Сообщение # 212
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
Quote (Sergi)
Я софтово заберу за 8 тактов последовательно или за 9 с произвольным шагом всю запись за 216 мкс максимум.


кстати, ты хочешь читать 8 байт для синхронизации ?

я сейчас синхру засунул в EPM3032 - и уже на следующем такте получаю ответ по синхронизации... задержка в 1 такт, следовательно на следующем такте уже будет идти запись


Виталий (аka ВитГо)
 
ВитГоДата: Суббота, 06.10.2012, 21:49 | Сообщение # 213
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
вот схема в DipTrace

про сам DipTrace начал писать DipTrace: Программа для разводки печатных плат

прошивка ПЛИС EPM3032 элементарная:


и схему в jpeg вложил. правда лучше поставить диптрейс, а то на jpg нельзя масштабировать
Прикрепления: oscil4.dch (41.0 Kb) · 3686895.jpg (137.3 Kb)


Виталий (аka ВитГо)
 
SergiДата: Суббота, 06.10.2012, 22:28 | Сообщение # 214
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
По синхронизации.
Я пишу постоянно (после PRESTART) в память 15 байт и одновременно сравниваю с условием синхронизации.
Как только оно наступит пишу полностью до конца.
После чтения МК софтово нахожу в этих 15 байтах условие и рисую уже от него, или заранее на 2-5 байта.
Так не пропустишь фронт/спад.
в твоем случае отрисовывается уже после условия (как в моем маленьком)
DipTrace у меня стоит.
Я так понял для двух каналов нужно запаралелить выходы Q двух озу и выбирать по очереди?
Генератор можно заменить на цепочку удвоителей частоты. Например на одном корпусе 74AC86 (555ЛП5) можно сделать 2 удвоителя. Максимальная частота около 130 Мгц. Взять тактовую с атмеги 16*4=56.
 
ВитГоДата: Суббота, 06.10.2012, 22:53 | Сообщение # 215
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
а ты можешь в диптрейсе плату сделать ?
чтото нифига не получается у меня :-(
какие то параметры что ли не дозадаю :-(

для двух каналов есть 18ти битные FIFO !

сами микрухи памяти проще с ebay заказывать, там я находил и 16 и 32 кб !!
у нас они стоят чуть ли не по 2000 рублей ! (совсем магазины офигели)
Прикрепления: 0748703.dch (58.0 Kb)


Виталий (аka ВитГо)
 
SergiДата: Воскресенье, 07.10.2012, 11:26 | Сообщение # 216
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
Плату както разводит. С автопозиционированием и вручную. Схема ведь не вся.Что еще добавлять придется?
 
ВитГоДата: Воскресенье, 07.10.2012, 11:37 | Сообщение # 217
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
угу.. еще не вся. я вчера, вернее сегодня - до половины седьмого утра сидел - заставил все таки развести biggrin
правда у меня появилась одна перемычка и я не понял как заставить программу сделать под нее контактные площадки

и вчера на easyelectronics опять обсуждался dcmi

я посмотрел доки на stm32f407 в 100 ногом корпусе - есть возможность захвата 12 бит (еще 2 бита в 144 ногом корпусе)

по скорости захвата - для внутренней памяти (а ее вроде как там вагон - 192 кб) - 54 msps
для внешней в 2 раза медленнее

мне там обещали посмотреть исходники для работы - в принципе я сам скачал уже описание стандартной библиотеки ввода вывода - там есть примеры - но не очень понятные.
и я нигде не могу найти направления сигналов в dcmi - конкретно сигнала dcmi_pixclk - это входной или выходной сигнал ?

и еще - где взять компонент stm32f407 для diptrace ? везде только f103 нахожу sad


Виталий (аka ВитГо)
 
SergiДата: Воскресенье, 07.10.2012, 12:19 | Сообщение # 218
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
Корпуса почти совместимы (кроме 4х ног). Можно нарисовать 100ногий 103, возле нужных ног (которые меняются) поставить 0омные резисторы.
Должно получиться. Совместимость смотри DS стр 16.
В f4xx свободно можно 124к работать, там 3 банка 124,64,4=192
Если будет время нарисую и разведу в DipTrace захват на счетчиках - супер бюджетный вариант!
Сделаю разъем 32 ноги для шины данных и управления чтоб цеплять к любой демоборде.


Сообщение отредактировал Sergi - Воскресенье, 07.10.2012, 12:29
 
ВитГоДата: Воскресенье, 07.10.2012, 13:26 | Сообщение # 219
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
так, у меня вопрос на засыпку:

на stm32а407 можно генерировать счетчиком сигнал на любом выводе с частотой 42 мгц (168/4) ?

чтото типа pwm быстрого там есть ?

p.s. я тут влез в DCMI

смотри что получается:

можно перевести DCMI в режим захвата jpeg
при режиме захвата - 8 бит
управление захватом:
vsync - переход 1-0-1 - старт кадра захвата,
далее, при vsinc=1:
hsync - переход 1-0-1, во время активного "0" осуществляется захват данных
pixclk - строб захвата (настроить на falling edge - тогда он будет корректно захватывать данные выдаваемые по rising edge АЦП)

то есть нужно генерить pixclk либо внешним генератором (например на 50 мгц) либо попробовать достать его из STM,

кажется самое простое получить его из stm - это поделить системную частоту на 4 (счетчики от какой шины тактируются?).
если clk=168 мгц то /4 = 42 мгц

если это не самое простое - то на ebay я нашел генератор на 50 мгц, стоит около 6 баксов, 4 ноги - питание и выход частоты (1 вывод не подключается)

далее, нужен будет таймер который отмерит 64к захвата,
отмерит как угодно:
- если можем считать clk - то отсчитаем 64k *4 тактов,
- если можем считать с частотой 42 мгц - то просто отсчитать 64к захватов
- если внешний генератор - то наверное можно отмерить примерное время работы на частоте 168 мгц - это решение не обдумывая, наверняка есть и красивое решение

процедура захвата,
hsync=>1
vsync =>делаем 1-0-1
hsync=0 (захват пошел) и стартуем таймер захвата 64к значений, после его отработки hsync=1
в памяти будет 64 кб захваченных данных

в настройки DMA я еще не смотрел

самое главное что все это реализуется на 1ом корпусе! не нужна ни внешняя память, ни плис (хотя на ней наверное можно сделать синхронизацию, на простой и паябельной epm3032 или epm3064)

частота конечно меньше чем мне хотелось бы - но для попробовать имхо достаточно, тем более ты же хотел 40 мгц biggrin

плюс несмотря на 100 ногий корпус фактически нужно будет:
- 8 линий до АЦП,
- 4 вывода соединить между собой (hsync и vsync генерить на других пинах и просто их подавать на нужные),
- 1 вывод генератора pixclk (если от stm32 получать)
- 1 вывод - вход pixclk (для такта dcmi)
-----------
итого 14 выводов ! на захват и запоминание !

все остальное в нашем распоряжении - хоть на lcd, хоть на кнопки, хоть на связь !

размеры тоже можешь себе представить ! - я хотел сделать осциллограф ручку - вот он ! причем 40 msps - это гораздо больше того же dso nano !

что скажешь ? может быть наляжем вместе на эту задачку ?


Виталий (аka ВитГо)
 
ВитГоДата: Воскресенье, 07.10.2012, 14:18 | Сообщение # 220
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
про эту картинку совместимости шла речь
Прикрепления: 5965881.gif (14.3 Kb)


Виталий (аka ВитГо)
 
SergiДата: Воскресенье, 07.10.2012, 14:26 | Сообщение # 221
Подполковник
Группа: Проверенные
Сообщений: 540
Репутация: 55
Статус: Offline
Я пока не разбирался с F4xx. Нету у меня пока biggrin .
Тактирование можно сделать с ноги PA8. Это выход TIM1_CH1 (по крайней мере в 64ногом корпусе) она же выход MCO (тактовая 168 или 84 или ..., но по даташиту более 84 вроде нельзя). При высокой скорости подключаем MCO, при низких TIM1. Он же - предделитель. Режим таймера CTC.
Второй таймер тактируем от первого. При переполнении (64к) выполняем прерывание и читаем что хотим.
Эта картинка.


Сообщение отредактировал Sergi - Воскресенье, 07.10.2012, 14:26
 
ВитГоДата: Воскресенье, 07.10.2012, 14:30 | Сообщение # 222
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
Quote (Sergi)
Я пока не разбирался с F4xx. Нету у меня пока biggrin .


так в f207 тоже есть DCIM ! помоему на 48 мгц !!!

ты же хотел покупать f207 ?


Виталий (аka ВитГо)
 
ВитГоДата: Воскресенье, 07.10.2012, 14:33 | Сообщение # 223
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
вот про f207

Quote
Advanced connectivity

USB 2.0 full-speed device/host/OTG controller with on-chip PHY

USB 2.0 high-speed/full-speed device/host/OTG controller with dedicated DMA, on-chip full-speed PHY and ULPI

10/100 Ethernet MAC with dedicated DMA: supports IEEE 1588v2 hardware, MII/RMII

8- to 14-bit parallel camera interface: up to 48 Mbyte/s


чуть меньше 50 мгц правда.. но не на много ведь !


Виталий (аka ВитГо)
 
ВитГоДата: Воскресенье, 07.10.2012, 14:36 | Сообщение # 224
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
вот библиотека для DIPTrace библиотека микроконтроллеров stm32 для DIPTrace

Виталий (аka ВитГо)
 
ВитГоДата: Воскресенье, 07.10.2012, 15:29 | Сообщение # 225
Полковник
Группа: Администраторы
Сообщений: 2422
Репутация: 20
Статус: Offline
кстати ты на СИ для STM32 в чем пишешь ?

а то мне наверное уже нужно начинать ставить среду какую нить..
у меня были кокос и кейл..

ты что используешь ?

p.s. чтобы в одной среде работать, а то у кокоса и кейла например не подходят исходники на 100%
опять таки помоему у кейла есть ограничение в 32 кб по коду.. - а у STM32 даже с его Thumb2 все равно код пообъемнее AVR получается, поэтому 32 кб ограничения кейла могут начать быстро давить разработку

какую среду разработки бум использовать ?


Виталий (аka ВитГо)
 
Форум » Разработка электронных устройств » Разрабатываю ! » Модуль цифрового осцилографа (Пробуем свои силы в построении цифрового осциллографа)
Поиск:


Copyright MyCorp © 2024
Сделать бесплатный сайт с uCoz