USB датчик- проблемы подключения

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить
Грызет канифоль
Сообщения: 294
Зарегистрирован: Пт мар 11, 2011 08:51:55

Сообщение 3DRaven »

Здравствуйте.
Мне необходимо подключить датчик пульса к ПК по USB...спортом заниматься...но в целом просто разобраться хочу, давно мечтал что то радиолюбительское сделать.
Есть схема подключения к LPT, но хочется другой порт.
Есть несколько проблем.
0. Я программист и ничего не смыслю в радиотехнике. Вообще ничего!
1. Начал смотреть различные статьи на тему "USB это легко". Глаза разбегаются. Везде рекомендуют разное, где то PIC контроллер за 20$, где то ATmega за 2. Не знаю, что выбрать. Даже не понимаю какая разница. Лучше дешевле...я еще и преподаватель, денег нет :)

Отсюда вопросы:
0. Какая разница между дорогими и дешевыми микроконтроллерами?
1. Что лучше всего прочесть для самообразования? Лучше статьи о том как что то простое сделать что бы оно принимало и передавало данные на устройство. В частности надо включать виброзвонок когда пульс превышает определенный порог. Лучше что бы устройство это могло делать и без ПК, автономно. Также интересуют книги с подробным изложением сопутствующих вопросов.
2. Существует ли статья с подробным описанием процесса создания подключаемого устройства на дешевом микроконтроллере?
3. Есть ли решения "все готово, датчик подключить сюда, а софт напишете сами"?
4. Все будет делаться для и на линуксе. Это особое условие связано с тем, что виндовсом я много лет не пользуюсь и ставить-возится не хотел бы.

Описание придуманного устройства:
0. Датчик считывает пульс.
1. При превышении порога, включается виброзвонок
2. Возможно два варианта устройства:
Подключенное к ПК и автономное.

Собственно все для начала...что бы мне разобраться. Цель именно в том что бы разобраться.

Заранее спасибо за ответы.
Название исправлено для приведения к соответствию п.3 Правил форума. Сэр Мурр
Реклама
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Есть схема подключения к LPT, но хочется другой порт.
Вот с этого лучше и начать. Где она? :)

----
На самом деле ничего сложного. Особенно под линуксом. Возможно, контроллер вообще не понадобится, нужен будет только преобразователь USB-UART, остальное делается программно на стороне компа. К примеру микросхемы от FTDI работают под линуксом как родные, просто читаем/пишем в устройство как в файл.
Реклама
Грызет канифоль
Сообщения: 294
Зарегистрирован: Пт мар 11, 2011 08:51:55

Сообщение 3DRaven »

Вот схема. Надо ее к USB подключить если возможно без контроллера то супер!
Схема измеряет пульс и выдает результат на выходе. Который надо подключить к pin 13 на LPT.
Но. Задача максимум, сделать автономное устройство для ношения на руке.
Для начала достаточно решить и задачу минимум :)

Спасибо большое!
Вложения
Scheme1.jpg
Схема пульсометра
(123.93 КБ) 639 скачиваний
Последний раз редактировалось 3DRaven Пт мар 11, 2011 12:32:08, всего редактировалось 1 раз.
Друг Кота
Аватара пользователя
Сообщения: 3385
Зарегистрирован: Пн окт 11, 2010 19:00:08

Сообщение Мурик »

3DRaven писал(а):Существует ли статья с подробным описанием процесса создания подключаемого устройства на дешевом микроконтроллере?
Посмотри это.
Реклама
Эиком - электронные компоненты и радиодетали
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Схема измеряет пульс и выдает результат на выходе. Который надо подключить к pin 13 на LPT.
Ясно. Тут, как я понял, тоже всё происходит на стороне компа :)

Тогда советую всё-таки сделать на МК. Но лезть в дебри программной реализации USB я бы не советовал. Или для начала сделать автономное устройство, а интерфейс потом продумать. Короче варианты такие:
1. Программная реализация USB. Дешевый контроллер, в сети много примеров, но реализация сложнее.
2. Контроллер с аппаратным USB. Труднее достать, дороже, но нет проблем.
3. Преобразователь USB-UART. Дешевый контроллер + дорогой преобразователь + проще достать. По цене как второй пункт, но проблем тоже не будет.
Реклама
Грызет канифоль
Сообщения: 294
Зарегистрирован: Пт мар 11, 2011 08:51:55

Сообщение 3DRaven »

Чем сложнее первый вариант?
Не хотелось бы в начале своих разбирательств затрачивать значительных средств.
Какие этапы разработки будут присутствовать в первом варианте? Желательно поподробнее.
Кстати, автономное устройство меня полностью устроит! Если это проще то лучше описать этапы его разработки...что бы мне было на что ориентироваться. В быту оно гораздо удобнее, мне же не спорт лаборатория нужна. Я думал с интерфейсом проще.
Реклама
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Если автономное устройство подойдёт - не парьтесь с USB. Разве что ради интереса (кстати, вот только что человек готовится доступную статью написать http://we.easyelectronics.ru/electro-an ... dnaya.html).

А на деле - какие результаты отображать? Можно взять ATTiny2313 и 16-ти символьный LCD-дисплей. Первая ~50 рублей, новый дисплей ~150-180р. Можно хоть бегущую строку забацать, да и вообще смотрится супер. Большинство с поддержкой русских символов.

Какие этапы?
Первый, и самый важный: пощупайте контроллер. Для этого нужен будет он сам, программатор, штук 8 светодиодов, и мелочёвка. Научитесь прошивать его. Если программу будете писать сами (а придётся) прошивать надо будет иногда несколько раз в минуту.
Если вы программист, на освоение у вас много времени не уйдёт - максимум несколько дней. Главное разобраться с остальной "бытовухой" - программатор, подключение, как залить прошивку, как не залочить кристалл, среды и языки разработки и т.д.
Грызет канифоль
Сообщения: 294
Зарегистрирован: Пт мар 11, 2011 08:51:55

Сообщение 3DRaven »

Программы буду писать сам - это однозначно. "С" для меня вполне подходит. Исходя из ваших советов, буду делать автономное устройство.
Теперь конкретные вопросы:
1. Сред разработки и пр. много. Что посоветуете? Глаза разбегаются. Естественно остается привязка к линукс. Опишите полный комплект необходимых программ. Можно без названий, а "по назначению". Но лучше, конечно, конкретные названия. Может есть актуальная (старую я нашел какую то, но там чтото невнятное написано) статья по программированию микроконтроллеров в линуксе?
2. Есть LPT порт на компьютере. Какую схему программатора лучше взять для самосборки? Что бы была совместима с вышеспрошенными средствами разработки и была достаточно безопасной-удобной в использовании.
3. Есть ли совсем подробная, луше книжка...ну или серия статей "от и до" как сделать автономное устройство. Я прочел несколько, но кажется мне мало...может что присоветуете. Книга лучше. Еще хотелось бы услышать название книги по радиоэлектронике...что порекомендуете? Хочется не просто готовую схемку попользовать но и научится понимать как оно работает "электрически". По опыту знаю, что совет спеца "читай это" обычно указывает на классные книги...у меня так с математикой было :)
4. Какой контроллер посоветуете? Задача описана выше. Контроль пульса, порог, небольшие вычисления кривой-сплайна и производных по пульсу (на будущее), отображение пульса и первой производной пульса на LCD панельке. Контроллер должен быть недорогой и с перспективой на программную эмуляцию USB, совместно с решением вышеописанной задачи...если вдруг решусь делать USB-интерфейс.
5. Чем удобнее всего в линуксе развести печатную плату?
Друг Кота
Аватара пользователя
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Сообщение Satyr »

3DRaven писал(а): Везде рекомендуют разное, где то PIC контроллер за 20$, где то ATmega за 2. Не знаю, что выбрать.
Отсюда вопросы:
0. Какая разница между дорогими и дешевыми микроконтроллерами?
В функционале, который в твоей задаче требуется минимальный. Ну и в маркетинге.

Советую простой, дешевый, легко паяемый и очень простой в освоении at90usb162
Он с аппаратным USB. Возить с глюками програмных реализаций USB не советую никому, тем более новичку.
Друг Кота
Аватара пользователя
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Сообщение Satyr »

ploop писал(а): 2. Контроллер с аппаратным USB. Труднее достать, дороже, но нет проблем.
Ага. сложнее и дороже -))
Рублей на 30, есть в каждом 2м магазине.

Например тут. 79р http://www.terraelectronica.ru/get_pos. ... 632;349706;

Кончайте пугать народ баснями 5 летней давности.

p.s. есть у местного барыги с доставкой почтой 50р. Так что отмазы "...я из мухосранска, тут и лампочка ильича дефицит" как то не катят.
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

1. Сам пока пишу на ассемблере, поэтому из сред пользуюсь только удобным редактором - Geany. Для комппиляции и прошивки настроены хоткеи, поэтому контроллер зашивается буквально одним нажатием. Под си вообще проще: от vim'а до всяких Eclips, Code::Blocks, и т.д. В принципе что удобней, тем и пользуйтесь, что-либо посоветовать тут не могу, т.к. сам смотрел только со стороны.

2. Если есть LTP - это хорошо. Можно с помощью него прошить контроллер для USB-программатора :) Если решитесь - советую схему протосса http://prottoss.com/projects/AVR910.usb ... rammer.htm
С AvrDude работает отлично. Так же отлично работает этот программатор: http://easyelectronics.ru/skorostnoj-av ... llera.html Патченую AvrDude под линукс я собрал, могу дать.
Либо использовать программаторы чисто для LTP или COM - порта. Схем в интернете навалом. Но я пробовал только два вышеперечисленных.

3. Скиньте адрес в личку. Пришлю несколько книг.

4. Ну, что я подбиваю вас на AVR - вы уже поняли :) Может вам PIC понравится? Но тут я пас.
Если не трогать USB (или делать с отдельным преобразователем) ATTiny2313 хватит. Иначе AtMega8, AtMega88, может AtMega48... по ходу сами поймёте. Пока потренируйтесь помигать светодиодами на чём-нибудь, что не трудно достать.

5. Я пользуюсь Sprint Layout под вайном. Удобнее для ручной разводки не нашел. А так - KiCad. Вполне нормально работает, правда для маленьких проектов слишком заморочена. Если что есть мануал на русском по ней.
Грызет канифоль
Сообщения: 294
Зарегистрирован: Пт мар 11, 2011 08:51:55

Сообщение 3DRaven »

1. Сам обнаружил случайно плагин для Eclipse! Пользуюсь им как средой разработки давно, буду и для контроллеров использовать. Очень удобная штука, но памяти надо под нее много. Гиг минимум, иначе работать сложно с нормальным проектом...но это на java/с++. Не знаю как будет плагин в работе с контроллером, проверю. Нашел пару статей на сайте ibm про него.
2. Для схемы от протоса надо будет сначала собрать программатор на LPT, потом прошить и потом пользовать уже usb программатор? Патчить avrdude не хотелось бы...лучше уж из репозитория, стандартную...ковыряние в потрохах уже давно не веселит :)
3. Адрес выслал.
4. AVR меня полностью устроил. Есть все программные и аппаратные средства. Буду ковырять именно их. at90usb162 - это насколько подходит к моим задачам, что бы было сначала реализовано автономное устройство, а потом уже интерфейсное-усбишное? Если в пределах 100р, меня цена устраивает. Но для автономности желательно минимальное энергопотребление. Пока не сунулся вплотную...на берегу много вопросов что бы потом не жалеть.
5. Буду выбирать, отталкиваясь от вашего совета. Есть еще пара вариантов...понаставил, буду смотреть.
6. Для симуляции контроллера в линуксе что выбрать? Насколько я понимаю это важный этап разработки...или можно просто шить раз за разом и смотреть, что получилось? Вообще как устроен процесс отладки? Какие средства есть для симуляции электрических схем? В целом задачка такая - виртуально разработать, а потом собрать...так гораздо разумнее как мне кажется.

В первом приближении (пока изучаю вопрос контроллеров) попробую собрать схему пульсометра по инструкции, для подключения к LPT...заодно с программированием порта поковыряюсь и подготовлюсь к сборке программатора...эх, давно мечтал я о всем этом!
Друг Кота
Аватара пользователя
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Сообщение Satyr »

3DRaven писал(а): 2. Для схемы от протоса надо будет сначала собрать программатор на LPT, потом прошить и потом пользовать уже usb программатор? Патчить avrdude не хотелось бы...лучше уж из репозитория, стандартную...ковыряние в потрохах уже давно не веселит :)
Ну мучайся, возми At90usb**** - избавляя от кучит прочего геммороя, еще и ПРОГРАММАТОР НЕ НУЖЕН! с завода залит USB Bootloader. Т.е. схему просто собираешь, подключаешь к USB и по USBже и программируешь.
На компе видится как DFU Bootloader device, проги заливаются FLIPом с атмеловского сайта. Почитай есличо http://www.atmel.com/dyn/resources/prod ... oc7618.pdf

В суть USB, если нет большего желания, можешь так же не вникать. Под at90usb есть великолепная библиотека работы с USB в том числе с реализаций многих типовых USB интерфейсов - http://www.fourwalledcubicle.com/LUFA.php

А то адепты архаичного геморроя сейчас научат...
Грызет канифоль
Сообщения: 294
Зарегистрирован: Пт мар 11, 2011 08:51:55

Сообщение 3DRaven »

At90usb****
Получается программатор мне вообще никогда не понадобится?
Как быть с отладкой?
Для моей задачи эти контроллеры подходят хорошо?
Мне сейчас, судя по всему необходимо автономное устройство,
а усб заморочки дело второе. Автономное устройство и удобнее
будет в использовании.
Друг Кота
Аватара пользователя
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Сообщение Satyr »

3DRaven писал(а):At90usb****
Получается программатор мне вообще никогда не понадобится?
Как быть с отладкой?
Для моей задачи эти контроллеры подходят хорошо?
Нет, программатор не нужен в простом случае. Просто если есть программатор - можно лоадер из микросхемы стереть и освободить ~2kb флеша еще.
А для отладки просто программатор и не пойдет. Нужен внутрисхемный отладчик - девайс куда более редкий и дорогой, хотя какие то старые схемы и прошивки уже украли и в инете оно есть -))
На родной цены кусаются -))) http://www.electronshik.ru/card/jtag-em ... ice2-21307 Но чтука при серьезных разработках действительно необходимая. Но у тебя чтука простейшая. То, что творится в девайсе можешь понять отладочным выводом на консоль. в контролере есть COM Порт, который можешь развести и распаять для связи с компом. Туда можно принтом выводить какие то сообщения.

Для твоей задачи даже младший самый At90usb подходит с запасом.
По сути та же At90usb82 - это та же самая atmega48, что тут рекомендовали,только с аппаратным USB контроллером и только.
Последний раз редактировалось Satyr Сб мар 12, 2011 11:44:48, всего редактировалось 1 раз.
Грызет канифоль
Сообщения: 294
Зарегистрирован: Пт мар 11, 2011 08:51:55

Сообщение 3DRaven »

То есть процесс отладки будет "прошил-посмотрел".
А с симуляторами как? Вообще то аппаратный отладчик мне не нужен.
Достаточно и симуляции в линуксе с этим как?
Друг Кота
Аватара пользователя
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Сообщение Satyr »

3DRaven писал(а):То есть процесс отладки будет "прошил-посмотрел".
А с симуляторами как? Вообще то аппаратный отладчик мне не нужен.
Достаточно и симуляции в линуксе с этим как?
Да. прошил, и смотришь то, что в консоль кидаешь и по внешнему поведению девайса.
С JTAGICE отладка ничем не отличается от той же отладки программы, скажем, в ms визуал студио, только что тормознее -)))

Симуляция дело такое - можешь отладить программу, НО ессно без взаимодействия со всеми внешними компонентами типа датчиков.
Грызет канифоль
Сообщения: 294
Зарегистрирован: Пт мар 11, 2011 08:51:55

Сообщение 3DRaven »

Засел за чтение. Через некоторое время спрошу остальное...чует мое сердце в книгах, которые мне прислал ploop, есть большая часть ответов...книги супер!
Друг Кота
Аватара пользователя
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Сообщение Satyr »

3DRaven писал(а):Еще один вопрос. Как называется штука в которую можно воткнуть элементы не припаивая и посмотреть как оно будет работать? Что бы со схемами экспериментировать с разными.
Если знаешь с чем экспериментировать, лучше купить не просто тупо макетную плату с дырочками, а заготовку с тем что надои чуть доделать.
Например, такую http://cgi.ebay.com/ws/eBayISAPI.dll?Vi ... 0640083157
Грызет канифоль
Сообщения: 294
Зарегистрирован: Пт мар 11, 2011 08:51:55

Сообщение 3DRaven »

Возьму макетную плату...внушает мне больше доверия :)
Все же спрошу одну вещь что бы сразу знать.
Как преобразовать сигнал из аналоговой формы в цифровую (АЦП наверное).
Есть сигнал от 0 до 5В. Надо в контроллере иметь число этих вольт с плавающей точкой...
или хотя бы градации от 0 до 255 (0-5В деленные на градации).
Ответить

Вернуться в «Интеграция с ПК»