Форум: "Потрепаться";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
ВнизПрограммирование COM порта Найти похожие ветки
← →
saNat © (2004-08-17 14:28) [0]Доброго времени суток.
Решаю такую задачу. Есть устройство с аналоговыми выходами для подключения к осциллографу. Нужно выводить информацию вместо осциллографа на компьютер. Очевидно, что нужно оцифровать сигнал - используем 2 АЦП по 8 разрядов. Передавать на компьютер собираюсь через COM (RS-232). Он как я понял передает/получает информацию байтами побитно. Соответственно нужно сформировать передаваемый сигнал (8 бит с АЦП) для побитной передачи. Была мысль использовать мультиплексор, однако им нужно управлять. Вопрос - каким образом. Можно поставить счетчик и таймер, но тогда аппаратно ограничивается время передачи сигнала...
Подскажите, пожалуйста, где я неправ и какие варианты осуществления задачи могут быть еще...
P.S.: А можно в Москве записаться в библиотеку временно и без регистрации? (Я временно работаю здесь и живу у родственников).
← →
Digitman © (2004-08-17 14:34) [1]
> Передавать на компьютер собираюсь через COM (RS-232).
чем обосновано ? почему не через LPT ?
← →
вразлет © (2004-08-17 15:25) [2]saNat ©
Микроконтроллер
Digitman ©
А почему LPT?)
← →
DiamondShark © (2004-08-17 15:33) [3]Я бы поставил однокристалку и БИС последовательного приёмопередатчика (если это уже в однокристалке не реализовано).
Но вот такой вопрос: а хватит ли пропускной способности порта?
Какие параметры измеряемого сигнала?
← →
Рамиль © (2004-08-17 16:02) [4]Прежде чем передавать, посчитай на какой частоте будет работать у тебя в итоге. Практического применеия не будет, даже через LPT.
← →
Fredericco © (2004-08-17 16:08) [5]ICPCON 71xx (точно модель не помню)
http://www.ipc2u.ru/
← →
Digitman © (2004-08-17 16:27) [6]
> вразлет © (17.08.04 15:25) [2]
> А почему LPT?)
да какая нафих разница, LPT илим не LPT ? меня просто удивила фраза
> собираюсь через COM (RS-232).
она от балды или не от балды ? вот в чем вопрос)
← →
Fredericco © (2004-08-17 17:24) [7]Приблизительно вот это:
http://www.ipc2u.ru/catalog/0/q7.html
← →
saNat © (2004-08-18 13:44) [8]> ...Чем обосновано ? почему не через LPT ? [1]
Просто читал, что программирование для LPT сложнее, чем для COM. К тому же на LPT часто вешают принтер.
> собираюсь через COM (RS-232).
> ...Она от балды или не от балды ? вот в чем вопрос [6]
Ну ,как я прочитал, есть несколько интерфейсов. Вот и указал, что собираюсь использовать RS-232.
Поясню немного. Есть задание на диплом (взял заранее). В курсе по ТАУ выполняются л/р. К стенду подключен осциллограф, но он такой древности :о) Вот и поставили мне задачу - сделать вывод информации на компьютер. Как я понимаю, готовая вещь должна быть дешевая (признаться, не знаю я стоимость МК) и сделанная своими руками (впрочем, программирование МК остается мне...). Из того, что я читал - МК S-700, но оно же денег стоит не стипендиальных...
Так как с моей идеей по поводу использования мультиплексора, счетчика и таймера?
← →
DiamondShark © (2004-08-18 13:49) [9]Ты подожди с таймерами.
Параметры сигнала какие? Хватит ли скорости порта?
← →
saNat © (2004-08-18 13:55) [10]> Параметры сигнала какие? Хватит ли скорости порта? [9]
Ну как я представляю себе, параметры сигнала влияют сопряжение с АЦП (диапазон напряжения). А скорость передачи в моем случае будет зависеть от таймера, т.к. он будет задавать циклы формирования блоков данных
← →
Digitman © (2004-08-18 13:56) [11]
> Просто читал, что программирование для LPT сложнее, чем
> для COM
тебе шашечки или ехать ?
при чем здесь "сложнее" или "проще" ? выбор интерфейса определяется отнюдь не "сложностью" программного взаимодействия с ним, а принципиальной возможностью реализации поставленной задачи при использования того или иного интерфейса !
посему вникни в [9]
← →
Digitman © (2004-08-18 14:00) [12]
> saNat © (18.08.04 13:55) [10]
> как я представляю себе
плохо ты представляешь
сразу скажу тебе, что твой "осциллограф", будучи реализованный на COM-порте, можно выкинуть на свалку, ибо с пом.него невозможнго будет исследовать сигналы, скажем, с частотой 1 МГц ... и выше ...
← →
вразлет © (2004-08-18 14:06) [13]saNat ©
Так как с моей идеей по поводу использования мультиплексора, счетчика и таймера?
Тогда про СОМ-порт придется забыть. А вот ЛПТ возможно...выставляешь через мультиплексор данные и по таймеру выставляешь флаг "готовность данных", хотя я ЛПТ плохо знаю, возможно и ошибаюсь.
← →
DiamondShark © (2004-08-18 14:12) [14]
> saNat © (18.08.04 13:55) [10]
Скорость порта будет ограничивать частотный диапазон твоего осцилографа.
Давай прикинем.
Пусть мы работаем на скорости 115200. Это пропускная способность около 11 кбайт/сек. Если размер одного отсчёта 8 бит, то достигаемая частота дискретизации -- 11000 сек-1. Что с учётом теоремы о дискретизации даёт верхнюю границу полосы пропускания такого осцилографа около 5 кГц.
Вот и смотри, подойдёт ли тебе такой "осцилограф".
← →
вразлет © (2004-08-18 14:18) [15]Можно сигнал от осциллографа подавать на АЦП звуковой карты
← →
Рамиль © (2004-08-18 14:18) [16]Что то я сомневаюсь, что и 1 МГц потянет, если в лоб передавать.
Как вариант можно снимать характеристики не на каждом периоде сигнала, а через некоторые промежутки времени. Т. е.
1 ое измерение - t0 начало периода.
2 ое измерение - t0 + время на передачу через порт + ждем начало переиода + t дискретизации.
и т. д.
Но как это будет выглядеть схема такого устройства, даже не представляю:)
А передавать полностью оцифровку можно посчитать примерно.
1Мгц. 20 измерений на переиод (предположим), 16 бит, итого, скорость передачи должна быть
1e6*20*16 бит/c = 320 Мбит/c
Хм... я правильно посчитал? Или подход не правильный :o)
Поправьте если что:)
← →
Digitman © (2004-08-18 14:43) [17]
> Рамиль © (18.08.04 14:18) [16]
> Что то я сомневаюсь, что и 1 МГц потянет
ну я ж - к примеру)... чтобы заведомо и сразу шваркнуло по мозгам и остудило ... вот еще не пристало - сидеть и высчитывать точно предельную частоту !.. к тому же АЦП непонятно какой ... не говоря уже о характеристиках еще не выбранного сдвигового регистра ...
← →
Holy (2004-08-18 15:06) [18]
> вразлет © (18.08.04 14:18) [15]
> Можно сигнал от осциллографа подавать на АЦП звуковой карты
Логично... Где-то даже в инете попадалась мне статья...
> Digitman © (18.08.04 14:00) [12]
>
> сразу скажу тебе, что твой "осциллограф", будучи реализованный
> на COM-порте, можно выкинуть на свалку, ибо с пом.него невозможнго
> будет исследовать сигналы, скажем, с частотой 1 МГц ...
> и выше ...
А где в лабах по основам ТУ (насколько это мне известно) встречаются такие частоты...
Можно приспособить какой-нить МК-51... Их на руб килограмм наверное продадут, и в принципе должно хватать по возможностям... Правда придется каккую-то обвязку самому делать...
← →
DiamondShark © (2004-08-18 15:46) [19]
> А где в лабах по основам ТУ (насколько это мне известно)
> встречаются такие частоты...
Блин.
От автора вопроса уже второй день просят параметры сигнала.
← →
Holy (2004-08-18 16:00) [20]
> DiamondShark © (18.08.04 15:46) [19]
Я сам эти лабы делал... Там по-моему частоты чуть ли не дозвуковые... А автор их еще пока меряет... :)))
← →
DiamondShark © (2004-08-18 16:08) [21]
> Holy (18.08.04 16:00) [20]
Ну если ему полосы в 5 кГц хватит, то можно и через COM-порт делать.
← →
Anatoly Podgoretsky © (2004-08-18 16:14) [22]Если для показа на мониторе, то частота порта роли не играет, а если измерение всех значений с достаточной дискретностью, то в лучшем случае 1 кгц
← →
QuasiLamo © (2004-08-18 17:28) [23]Можно ведь делитель частоты поставить? Ну там, если сигнал слишком высокой частоты, то делить его попалам, пока частота не впишется в допустимый предел...
Или я что-то не то говорю?:)
← →
Anatoly Podgoretsky © (2004-08-18 17:42) [24]Этот делитель называется частота опроса АЦП, при условии, что сам АЦП в состоянии работать с такими частотамм.
← →
QuasiLamo © (2004-08-18 17:55) [25]не, я имею ввиду делитель самого аналогового сигнала, он будет стоять до ацп и делить все, что ему на вход подадут
← →
Anatoly Podgoretsky © (2004-08-18 17:58) [26]QuasiLamo © (18.08.04 17:55) [25]
А смысла нет, да и попробуй найти достойный аналоговый делитель.
← →
Игорь Шевченко © (2004-08-18 17:59) [27]Если входной сигнал не спалит звуковую карту, то искать AudioRTA или аналогичные программы, и не париться.
← →
марсианин © (2004-08-18 18:38) [28]
Давай прикинем.
Пусть мы работаем на скорости 115200. Это пропускная способность около 11 кбайт/сек. Если размер одного отсчёта 8 бит, то достигаемая частота дискретизации -- 11000 сек-1. Что с учётом теоремы о дискретизации даёт верхнюю границу полосы пропускания такого осцилографа около 5 кГц.
а может и не стоит его передавать.. ведь на экране монитора 1 Мгц никогда не отобразится.. да и на лучевой трубке осциллограффа мы видим усредненный сигнал
мне кажется имеет смысл обрабатывать сигнал прям на месте, не одходя от кассы, а в комп заталкивать массив точек..
тогда (при окошке 256х256, 1 измерение = 1 байт) можно закачивать 5к тичек в сек.. на 10-20 кадров/с хватит.. а если еще и сжимать...
← →
saNat © (2004-08-19 14:15) [29]> ...Посему вникни в [9]... [11]
Проникся идеей...
Ну если я правильно понял, то частота 10Гц.
Из паспорта: "Минимальный период квантования сигналов, с - 0,1".
М-да...
← →
Digitman © (2004-08-19 14:30) [30]
> Из паспорта
ЧЬЕГО паспорта ?!
← →
Рамиль © (2004-08-19 14:35) [31]
> да и на лучевой трубке осциллограффа мы видим усредненный
> сигнал
в каком смысле усредненный? Там вообщето сигнал напрямую подается на вертикальное отклонение луча, а горизонтальная развертка синхронизируется с сигналом.
> [29] saNat © (19.08.04 14:15)
Ну, если 10Гц, хватит и ком порта. Только через LPT, ИМХО, удобней, можно выставить и считать, а так придется еще со со сдвиговыми регистрами заморачиваться...
← →
Layner © (2004-08-19 14:53) [32]Если частоты более 100кгц, то они легко делятся на 10 дополнительной микросхемой. (Для ком порта больше не надо.)
Я когда то делал частотомер, на ЛА.. короче, их всего было 8, каждая делила сигнал на 10, т.е первая принимала сигнал 40мгц, выдавала 4 МГц, след. выдавала 400кГц.
Частотомер получился на славу, до 60Мгц мерял (при условии, что самая первая микросхема была какая то скоростная, 555я вроде, все уж забыл...)! Таких в магазине, в начале 90х точно было не купить, не знаю как сейчас.
← →
Рамиль © (2004-08-19 14:55) [33]
> [32] Layner © (19.08.04 14:53)
Ты разницу между частотомером и осоциллографом представляешь? для частотомера важен только импульс, а для осоциллографа форма сигнала.
← →
Layner © (2004-08-19 14:59) [34]А в твоем случае, передавать на порт надо сигнал один, с одинаковой частотой, предположим модулированный в 10 кгц, больше не надо! А сигнал "кодить" будут твои АЛУ. Т.е. если напряжение "пила" передача будет примерно такая:
8585858585858
или
15951159951
Короче так.. а на компе расшифровываешь посылку и все.
← →
Layner © (2004-08-19 15:02) [35]Рамиль © (19.08.04 14:55)
Да, чую. Поэтому сигнал модулирует частоту 10кГц. Вот и все. Ничего тут изобретать не надо.
← →
Digitman © (2004-08-19 16:06) [36]
> Поэтому сигнал модулирует частоту 10кГц
о боже...
← →
Defunct © (2004-08-19 16:11) [37]> saNat © (17.08.04 14:28)
У MCS-51 есть очень интересный режим работы последовательного порта: режим 0 - моноканал с синхронизацией. Советую почитать о нем в книге: "Однокристальные МикроЭВМ",изд. Бином, 1991.
На компутере можно, используя цифровые выводы любого порта (как последовательного так и LPT), сделать аналогичный режим.
1 цифровой вывод использовать как канал синхронизации для вашего устройства.
1 цифровой вход использовать как битовый канал данных.
Скорость вам по сути не важна.
← →
Defunct © (2004-08-19 16:19) [38]> saNat © (17.08.04 14:28)
Ваше устройство можно сделать на 4 микросхемках:
2x 8-разрядный АЦП
и
2x 4-разрядный сдвиговый регист типа (К555ИР1)
и запитать прямо от цифровой линии любого ком порта, на худой конец питать можно от +5В USB
Вопросы по аське или почтой (в анкете).
Форум читаю редко.
← →
GEN++ © (2004-08-19 21:03) [39]>saNat ©
Приведу цитату из Гостевой книги нашего сайта
(имя автора опущено):
Вторник, 9 Марта 2004 15:50
Здравствуйте, ФРАКТАЛ !
Спешу сообщить, что 20 февраля я блестяще провёл защиту диплома.
Моя работа была признана как одна из лучших на факультете (Физ-Хим).
Ещё не известно кто круче, по-этому "одна из"..
Видели бы вы меня в костюмчике, да с указкой !
Речь произвела неизгладимое впечатление на присутствующих.
Признание в глазах сокурсников, членов приёмной комиссии...
Стоит ли говорить, что всё это стало возможным благодаря вам !
Создание установки, затем, эксперимент, уникальные
научные исследования - всё это результат использования
вычислительного модуля МСU42-3. Кстати, модуль был подарен
мне вашим руководителем полтора года назад,
как только он узнал, что я из МИСиС. Ему - отдельная благодарность.
Я не иду в аспирантуру, но надеюсь, что установка прослужит будущему
поколению ещё долго !
Огромное спасибо за поддержку !
(Конец цитаты)
Если проявите интересс, мой e-Mail: e_goryunov@mail.ru
← →
Layner © (2004-08-20 08:37) [40][36] Digitman © (19.08.04 16:06)
> Поэтому сигнал модулирует частоту 10кГц
о боже...
На ком порт идет постоянный поток данных, а не то что 1 Мгц, то его и на ком порт шлем, а если частота 10 Мгц, то тоже шлем на ком порт :) Не важно, справится он или нет. В общем я могу собрать свою схему хоть сейчас. До свидания.
← →
Рамиль © (2004-08-20 08:38) [41]
> [40] Layner © (20.08.04 08:37)
Приведи набросок схемы, если не затруднит, что то я не пойму...
← →
Layner © (2004-08-20 08:41) [42]Ага, сейчас, WMZ написать? Хочу 100, будет принципиальная схема. Ещё 300 и аппарат по почте уйдет на ваш адрес.
← →
Рамиль © (2004-08-20 08:53) [43]Нужен мне этот аппарат... Интересно просто, как вы собрались это реализовать.
← →
Layner © (2004-08-20 08:55) [44]Как... вы платите, я его делаю, и шлю вам его по почте ценной бандеролью... все просто.. кроме шуток... вспомню хоть как паяльник в руке держать :)
← →
Рамиль © (2004-08-20 08:57) [45]Хотя... кажется понял, только реализация будет сложной, с терминами надо быть акуратней. Какая модуляция нафиг?
← →
Layner © (2004-08-20 09:00) [46]Это ты про что?
← →
Рамиль © (2004-08-20 09:04) [47]
> [46] Layner © (20.08.04 09:00)
> А в твоем случае, передавать на порт надо сигнал один, с
> одинаковой частотой, предположим модулированный в 10 кгц,
Хватит, завязывам оффтопик, либо конкретные предложения по теме. Тем более, как выяснилось, мегагерцы ему не кчему, и собирается устройство элементарно.
← →
Layner © (2004-08-20 09:06) [48]Так вам кому надо то, saNat или Рамиль ?? или это одно лицо?
← →
вразлет © (2004-08-20 09:14) [49]Layner ©
Очень занимательно) А можно поинтересоваться, как ты будешь принимать данные, если комп работает по РС-232, а ты хрен знает по чем? А может вообще не подключать к компу кабель, ведь ты задался целью передавать данные, а примут их или нет -неважно?
← →
Layner © (2004-08-20 09:20) [50]Ну да, совершенно не важно, в моем аппарате предусмотрен такой режим, можно принимать вплоть до IrDA, и Голубого Зуба.
:)
← →
saNat © (2004-08-20 14:14) [51]Ну что же, значится так и сделаем. Спасибо всем. Воспользовался
Defunct © (19.08.04 16:19) [38]
- более аккуратное решение, за что отдельное спасибо.Вот только я не понял GEN++ © (19.08.04 21:03) [39]
С уваженим...
← →
GEN++ © (2004-08-20 22:11) [52]>saNat ©
А что именно не понятно. Все что я привел - правда.
Вашу задачу на 4 канала АЦП, на нашем модуле я сделал
примерно за 4 часа с кофе и перекурами.Было сделано: прпограмма
на СИ для PIC18F252 + приложение на Delphi5 для накопления и
визуализации результатов.
Страницы: 1 2 вся ветка
Форум: "Потрепаться";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
Память: 0.6 MB
Время: 0.041 c