Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 06.01.2013, 16:09  
nerozero
Вид на жительство
 
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
nerozero на пути к лучшему
По умолчанию Управление лазером, синхронизация потока данных

Доброго времени суток!

Итак, задача управлять полигональным зеркалом/лазером.

Количество бит(точек) в одной строке: 4096 (512 байт)
Период одной строки: 3-4мс , меньшую скорость установить не получается
период действия одного пикселя(бита): 800нс (1,2 - 2МГц)

Пытаюсь вывести данные по импульсу начала строки. Из процессорной поддержки на данный момент имеется STM32F100 (24МГц) STM32F103 (72МГц).

Сразу отбросил вариант дрыгать пином, на 72 мегагерца максимальная скорость с которой удалось подрыгать пином - около 1,2 МГц, в главном цикле при этом ничего другого не делая.

Как второй вариант был SPI (Master) - MOSI -› поток данных, и разогнать можно до 1/2 скорости кристалла, только и делай что подставляй данные... но тут косяк, с синхронизацией, а это критично.

На данный момент в конец отчаялся, из идей осталось только использовать SPI в Slave режиме, тактировать внешним генератором, вывод данных с вывода MISO, а также использовать вывод данных через FSMC...


Ну и как последнее средство начать разбираться с FPGA, IMHO - самое правильное, но с ними дела пока не имел, так что посоветуйте что нибудь из этой области, с чего начинать.
Из дешевых Devboard-ов нашел вот CY7C68013 EPM1270.

Спасибо
Реклама:
nerozero вне форума  
Непрочитано 06.01.2013, 22:26  
true71
Почётный гражданин KAZUS.RU
 
Аватар для true71
 
Регистрация: 23.09.2008
Адрес: Козьмодемьянск. Это на Волге.
Сообщений: 2,399
Сказал спасибо: 5,548
Сказали Спасибо 1,049 раз(а) в 605 сообщении(ях)
true71 на пути к лучшему
По умолчанию Re: Управление лазером, синхронизация потока данных

Почитайте про регистры с параллельной загрузкой и последовательным выводом.
true71 вне форума  
Непрочитано 06.01.2013, 22:39  
nerozero
Вид на жительство
 
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
nerozero на пути к лучшему
По умолчанию Re: Управление лазером, синхронизация потока данных

true71, А по конкретнее ?
nerozero вне форума  
Непрочитано 06.01.2013, 22:50  
true71
Почётный гражданин KAZUS.RU
 
Аватар для true71
 
Регистрация: 23.09.2008
Адрес: Козьмодемьянск. Это на Волге.
Сообщений: 2,399
Сказал спасибо: 5,548
Сказали Спасибо 1,049 раз(а) в 605 сообщении(ях)
true71 на пути к лучшему
По умолчанию Re: Управление лазером, синхронизация потока данных

Цитата:
...
SN74198 (КР1533ИР13) — восьмиразрядный реверсивный сдвиговый регистр, имеющий четыре режима работы: параллельная загрузка, сдвиг влево, сдвиг вправо и блокировка.
...
http://ru.wikipedia.org/wiki/%D0%A0%...B8%D0%BA%D0%B0)
true71 вне форума  
Непрочитано 06.01.2013, 22:57  
true71
Почётный гражданин KAZUS.RU
 
Аватар для true71
 
Регистрация: 23.09.2008
Адрес: Козьмодемьянск. Это на Волге.
Сообщений: 2,399
Сказал спасибо: 5,548
Сказали Спасибо 1,049 раз(а) в 605 сообщении(ях)
true71 на пути к лучшему
По умолчанию Re: Управление лазером, синхронизация потока данных

http://www.triana.ire.krgtu.ru/subdi...pr/ch5/ch5.htm

Почитай про КР1533ИР9.

У него есть буржуйские аналоги.
true71 вне форума  
Непрочитано 06.01.2013, 22:57  
nerozero
Вид на жительство
 
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
nerozero на пути к лучшему
По умолчанию Re: Управление лазером, синхронизация потока данных

true71, Спасибо Знаком. Но как это применимо к данной модели? Вывести быстро можно и через SPI (24 МГц - частота камня, 12 МГц - последовательный поток) писал-же выше. Тот-же сдвиговый регистр. тут проблема с синхронизацией начала! Если передача потока опоздает на ~800нс то это уже сдвиг на один пиксель, в реальности лучшее что у меня получилось через внешнее прерывание - 1,8 мс.... И если-бы еще оно было-бы постоянное запаздывание - оно "плывет". Посему активно думаю в сторону ПЛИС, там именно будет такой регистр со своей логикой запуска.
nerozero вне форума  
Непрочитано 06.01.2013, 23:02  
true71
Почётный гражданин KAZUS.RU
 
Аватар для true71
 
Регистрация: 23.09.2008
Адрес: Козьмодемьянск. Это на Волге.
Сообщений: 2,399
Сказал спасибо: 5,548
Сказали Спасибо 1,049 раз(а) в 605 сообщении(ях)
true71 на пути к лучшему
По умолчанию Re: Управление лазером, синхронизация потока данных

Сообщение от nerozero Посмотреть сообщение
true71, Спасибо Знаком. Но как это применимо к данной модели? Вывести быстро можно и через SPI (24 МГц - частота камня, 12 МГц - последовательный поток) писал-же выше.
...
Понял.

Получается, надо что-то вроде ОЗУ на 512 байт с произвольным доступом для записи и независимым последовательным выводом по кругу...

Последний раз редактировалось true71; 06.01.2013 в 23:05. Причина: ОЗУ
true71 вне форума  
Непрочитано 06.01.2013, 23:15  
nerozero
Вид на жительство
 
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
nerozero на пути к лучшему
По умолчанию Re: Управление лазером, синхронизация потока данных

Сообщение от true71 Посмотреть сообщение
Понял.

Получается, надо что-то вроде ОЗУ на 512 байт с произвольным доступом для записи и независимым последовательным выводом по кругу...
А лучше два буфера, один "отрисовывается", в другой пишется новые данные. (Double Buffered). Полюс собственный генератор тактов, а так-же система синхронизации. Еще можно сделать сброс предварительного делителя по приходу синхроимпульса - тем самым практически избавиться от убегания первого фронта... Конечно все это можно сделать и на обычной логике Но получиться шкаф
nerozero вне форума  
Непрочитано 07.01.2013, 01:39  
SasaVitebsk
Гражданин KAZUS.RU
 
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
SasaVitebsk на пути к лучшему
По умолчанию Re: Управление лазером, синхронизация потока данных

SPI работает по DMA. Заполняете буфер и инициализируете передачу буфера. У вас выйдет весь буфер без разрывов.
SasaVitebsk вне форума  
Непрочитано 07.01.2013, 01:59  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Управление лазером, синхронизация потока данных

Плюс FIFO!
Easyrider83 вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Управление лазером, 200-300mA, 200-300 ns nerozero Делимся опытом 15 04.01.2013 22:34
[Решено] Пульсация светового потока, как бороться? zxc5 Источники питания и свет 31 07.10.2010 17:56
Сохранение потока с USB на Compact Flash RALP Микроконтроллеры, АЦП, память и т.д 7 11.10.2007 13:05


Часовой пояс GMT +4, время: 20:08.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot