роботы робототехника микроконтроллеры


 Страниц (2): [1] 2 »   

> Описание: Синхронизация программы компьютера и работы оборудования.
maxika Post Id



Рядовой


Сообщений всего: 6
Дата рег-ции: Февр. 2015  



Подскажите пожалуйста!!!
Как правильно синхронизировать, поступающие данные на порт PCI
и считывание данных из порта.
Двоичные данные поступают на порт PCI с оборудования, с определенной частотой.
Стоит на доли секунды, эти данные считывать в программу компьютера с другой частотой,
то естественно, через промежуток времени, нарушается синхронность, поступающих данных и их считывания.
Подскажите пожалуйста, как правильно решить эту проблему.
 
 Top
Predator Супермодератор Post Id


Супермодератор


Сообщений всего: 1307
Дата рег-ции: Июль 2012  



ЭЭЭЭ а PCI-ная железяка FIFO содержит? прерывания вызывать умеет?
Это вообще железо-самоделка, академический интерес или попытка собрать конфетку из специфического материала?
 
 Top
maxika Post Id



Рядовой


Сообщений всего: 6
Дата рег-ции: Февр. 2015  



PCI-ная плата ЛА-48ДPCI сделана фирмой Руднев-Шиляев, прерывания делать может.
На порт-А платы, с оборудования - (омметр измеряет сопротивления резисторов с определенной частотой) данные поступают на плату.
Моя программа считывает с порта-А, эту поступающую информацию (каждое измерение резистора, это 8-разрядов на порт), моя программа считывает эти 8-разрядов.
Но частота поступающей информации на порт, в доли секунд отличается от частоты считывания информации из порта. В результате хаос.
Как синхронизировать поступающую и считываемую информацию...................... .....
 
 Top
Predator Супермодератор Post Id


Супермодератор


Сообщений всего: 1307
Дата рег-ции: Июль 2012  



ну для начала эта плата может писать в свой буфер по стробу (режим 1), может-ли ваш омметр выдавать строб или нет - вопрос отдельный. Если есть - стробируйте, будете иметь такую цепочку: сигналы+строб->сигналы защелкиваются в буфер->плата выставляет прерывание->ваша программа считывает.
Если будет не успевать считывать (до следующего строба).... тогда выкините эту плату на помойку и сделаете свою с буферизацией данных в FIFO, DMA каналами и т.д.
 
 Top
cjA Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  



maxikaе слушайте Предатр, умный чувак, н иногда импульсивен. Если арифметике Вас не учили в шкле, т и икт е смжет вам бъяснить как пересчитывать делители МК, а если Вы уже и без ас умеете, т в чем впрс?
(Добавление)
offtop: begin --а зачем синхронезирвать? потомки нас не поколотят палками за т чт --------------"синхрнезирвали"
--А?
--Считываете ба значеия и стрите красивый рафик.
;
end offtop;
 
 Top
Predator Супермодератор Post Id


Супермодератор


Сообщений всего: 1307
Дата рег-ции: Июль 2012  



да не, плата реально говно. Я-бы такую не покупал, а купил-бы маааленькую плисину за 20 убитых енотов и вытравил (тут не ЛУТом, а фоторезистом) самопальную плату. А в ПЛИСине уже нормальную ФИФУ и прерывание по заполнению половины и синхронизацию внешних клоков с PCI-ными (через фифу) и....
 
 Top
cjA Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  



Predator иногда заваривается. Это детский сайт, тут не все и п лиии умеют, а ты СУМОО!, СУМО!
(Добавление)
maxika, раз сказали овно, зачит в, забудь
 
 Top
maxika Post Id



Рядовой


Сообщений всего: 6
Дата рег-ции: Февр. 2015  



То есть, основной принцып заключается в том, что:
данные с оборудования поступают в буфер платы с одной скоростью,
а я их программой считываю из буфера с более быстрой скоростью
(чтобы буфер не переполнился) до момента, пока не будет прочитан строб.
Потом опять обращаюсь в буфер, опять читаю данные до строба.
При этом скорость считывания, должна быть быстрее скорости подачи данных.

Скажите пожалуйста, я правильно понимаю метод синхронизации???
 
 Top
Predator Супермодератор Post Id


Супермодератор


Сообщений всего: 1307
Дата рег-ции: Июль 2012  



maxika пишет:
Скажите пожалуйста, я правильно понимаю метод синхронизации???

Да, это описание работы с FIFO, ну иногда еще добавляют сигналы о наполнении половины буфера, заполнения полностью и освобождения.

Только я уже забыл о вашей плате: есть там FIFO или нет.
 
 Top
maxika Post Id



Рядовой


Сообщений всего: 6
Дата рег-ции: Февр. 2015  



Спасибо за подсказки:-)) я сам еще не разобрался до конца с платой,
вот разбираюсь и делаю программу, вот вопросы и возникают)))
 
 Top
cjA Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  



Да не за что. Если PCI фирменная, то к ней должен и диск с драйвирами идти, а сли вы сами ее сделали или кто из друзей, то вот вопрос к ним. Забейте и начните снова, PCI скоро умрет.
 
 Top
maxika Post Id



Рядовой


Сообщений всего: 6
Дата рег-ции: Февр. 2015  



Плата ЛА-48Д PCI фирмы Руднев-Шиляев.

Посмотрел документацию к плате и не нашел на ней никакой буферной памяти.
Это значит, что метод FIFO , нужно реализовать непосредственно в ОЗУ компьютера.
Сделав буфер, для поступления и считывания данных в "очередь" FIFO,
либо при помощи структуры, либо массива.

Скажите пожалуйста, я правильно понимаю, процесс ?
 
 Top
Predator Супермодератор Post Id


Супермодератор


Сообщений всего: 1307
Дата рег-ции: Июль 2012  



у этой платы есть буфер на 1 запись.
с помощью этой платы метод FIFO вы в ОЗУ компьютера не реализуете (нужен DMA-канал).
всё, что вы можете сделать - это "прикрутить" строб от омметра и загнать плату в режим 1 (см. датащит на плату)
и далее будете иметь такую цепочку: сигналы+строб->сигналы защелкиваются в буфер->плата выставляет прерывание->ваш обработчик прерываний считывает и кладет в выделенный буфер-> ваша программа берет из буфера
 
 Top
Петр Киселев Post Id



Гуру


Сообщений всего: 2397
Дата рег-ции: Окт. 2012  



Мне интересен вопрос подсоединения оборудования с LED-матрицами к ПК с целью увеличения памяти. Малахов Ваня запустил бегущую строку на 4 матрицы, но уперся в реализацию длинных фраз.

Возможно ли подключившись к ПК использовать его память?

Если "Да!", то как?
 
 Top
Predator Супермодератор Post Id


Супермодератор


Сообщений всего: 1307
Дата рег-ции: Июль 2012  



Петр Киселев пишет:
Мне интересен вопрос подсоединения оборудования с LED-матрицами к ПК с целью увеличения памяти. Малахов Ваня запустил бегущую строку на 4 матрицы, но уперся в реализацию длинных фраз.

Возможно ли подключившись к ПК использовать его память?

Если "Да!", то как?

да легко:
включаете в свой скетч для дуины элементы примера communications/SerialCallRespons e и шлете в виртуальный ком-порт (который дуина) то, что вам надо.
слать в ком-порт можно чем угодно, навскидку гипертерминал виндузовый стандартный
 
 Top
Страниц (2): [1] 2 »
« С чего начать? »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 





Powered by Exclusive Bulletin Board
ExBB FM 1.0 RC1 Smiles by Fool from Foolstown
  Яндекс.Метрика   Рейтинг@Mail.ru