реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> FT232R<->uC, протокол верхнего уровня
MicroDiP
сообщение Mar 6 2015, 03:39
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 104
Регистрация: 31-07-05
Из: Shenzhen, China (深圳市, 中国)
Пользователь №: 7 233



Добрый день.

Есть девайс с FT232R<->uC (обмен по УАРТу). АЦП микроконтроллера делает замеры по шести каналам + считывает некоторые данные на плате по I2C. Все эти данные должны передаваться на FT232 и далее на ПК по USB. Разработка девайса складывается из нескольких этапов, после каждого из которых предполагается полноценная работа устройства. На первых этапах скорость передачи не критична, 10-100мс влево-вправо (что называется «+- трамвайная остановка»). Но на последних этапах разработки ожидается нечто приближённое к осциллографическим функциям. Частота сэмплирования АЦП 1.1МГц. Собственно есть несколько вопросов:
  1. Какой протокол верхнего уровня выбрать для этих целей? Сразу с прицелом на последние этапы разработки (выдача оцифрованных данных от 6-ти каналов с достаточно высокой скоростью + данные от I2C). Modbus ? Что вообще применяется (какие протоколы) в цифровых осциллографических приставках к ПК ? Что-то стандартное, или производители сами лепят, кто во что горазд?
  2. Обработка на стороне ПК (используется драйвер D2XX): мануалы и исходники FTDI предлагают использование Таймеров, заряженных на 50мс: в каждом таком «псевдо»-прерывании читаем буфер и обрабатываем его. Но мне кажется, что использование потоков более стабильно: для потоков Винда выделяет более стабильные промежутки времени, чем на таймер. Или я ошибаюсь? Есть ли какие-то ещё варианты ? Не хотелось бы изобретать велосипед.

Заранее благодарю за любые комменты и предложения.


--------------------
Все языки несут в себе черты своих обладателей. И идиомы каждого языка повторяются снова и снова: "Он чужеземец, а значит - варвар". (Роберт Хайнлайн)
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Mar 6 2015, 05:01
Сообщение #2


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



Если есть АЦП и есть желание сделать осциллограф то нужно в протоколе иметь привязки по времени или порядку следования передаваемых кадров с данными. Еще не понятно как непрерывный поток с 6ти АЦП с неизвестной разрядностью плюс избыточная информация протокола будут передаваться через уарт на такой скорости. Тут USB2 нужен.


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
MicroDiP
сообщение Mar 6 2015, 06:30
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 104
Регистрация: 31-07-05
Из: Shenzhen, China (深圳市, 中国)
Пользователь №: 7 233



Цитата(Lmx2315 @ Mar 6 2015, 13:01) *
Если есть АЦП и есть желание сделать осциллограф то нужно в протоколе иметь привязки по времени или порядку следования передаваемых кадров с данными. Еще не понятно как непрерывный поток с 6ти АЦП с неизвестной разрядностью плюс избыточная информация протокола будут передаваться через уарт на такой скорости. Тут USB2 нужен.

По временным привязкам - я так в общем-то и думал. А по скорости передачи - многие цифровые осциллы передают данные "окнами", размер которых зависит от имеющийсся на борту памяти. Поэтому говорить о непрерывном потоке наверное не стоит. Хотелось бы понять структуру этих пакетов-окон. И собственно как это обрабатывается на ПК. Есть ли какие-то более-менее стандартные методы. Даже не столько стандартные, сколько правильные, стабильно и корректно работающие?


--------------------
Все языки несут в себе черты своих обладателей. И идиомы каждого языка повторяются снова и снова: "Он чужеземец, а значит - варвар". (Роберт Хайнлайн)
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Mar 6 2015, 07:00
Сообщение #4


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



QUOTE (МикроДИП @ Mar 6 2015, 10:30) *
Даже не столько стандартные, сколько правильные, стабильно и корректно работающие?

Вам нужно что то простое, где будет начало пакета , временные метки, или порядковый номер,данные и контрольная сумма.
Зачем вам модбус, у вас же нет кучи устройств на шине с двухсторонним обменом?
У вас по сути идёт поток в одну стороны и (иногда ) командами в обратную.
Придумайте сами.


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
MicroDiP
сообщение Mar 6 2015, 08:04
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 104
Регистрация: 31-07-05
Из: Shenzhen, China (深圳市, 中国)
Пользователь №: 7 233



Цитата(Lmx2315 @ Mar 6 2015, 15:00) *
Придумайте сами.

Да в общем-то в процессе уже. laughing.gif Просто думал что пока процесс идёт, может кто свежих идей подкинет. В любом случае спасибо


--------------------
Все языки несут в себе черты своих обладателей. И идиомы каждого языка повторяются снова и снова: "Он чужеземец, а значит - варвар". (Роберт Хайнлайн)
Go to the top of the page
 
+Quote Post
fiim
сообщение Jun 11 2015, 08:34
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 29-10-09
Пользователь №: 53 291



Цитата(МикроДИП @ Mar 6 2015, 09:30) *
По временным привязкам - я так в общем-то и думал. А по скорости передачи - многие цифровые осциллы передают данные "окнами", размер которых зависит от имеющийсся на борту памяти. Поэтому говорить о непрерывном потоке наверное не стоит. Хотелось бы понять структуру этих пакетов-окон. И собственно как это обрабатывается на ПК. Есть ли какие-то более-менее стандартные методы. Даже не столько стандартные, сколько правильные, стабильно и корректно работающие?

Тут есть статейка кажется в тему:BE-BDN
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jun 11 2015, 08:42
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(МикроДИП @ Mar 6 2015, 06:39) *
Есть девайс с FT232R<->uC (обмен по УАРТу).
Есть ли какие-то ещё варианты ? Не хотелось бы изобретать велосипед.


Протокол Wake. Байт-стаффинг...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th June 2025 - 02:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01398 секунд с 7
ELECTRONIX ©2004-2016