Первая интеграция ATmega8A с ПК
- СЦБист
- Это не хвост, это антенна
- Сообщения: 1337
- Зарегистрирован: Сб июн 09, 2012 02:14:11
- Откуда: ХАРЬКОВ
Первая интеграция ATmega8A с ПК
Решил создать эту ветку для тех людей которые желают увязать микроконтроллер с ПК.
Сам долго мечтал об этой реализации, но никак не мог воплотить ее в жизнь по нехватке знаний
в программировании COM порта. После приобретения некоторых знаний в области С++ и WinAPI
наконец-то воплотил это в жизнь.
В данном случае увязка ПК происходит с МК ATmega8A.
Программа для работы с COM портом консольная. Будет время постараюсь ее сделать визуальной
на том же WinAPI .
В программе предусмотрена возможность управлять 3 объектами управления и просматривать
состояние 80 объектов контроля.
В данном случае объектами управления являются светодиоды, но это могут быть и светодиоды
оптронов.
Во вложении находятся файлы для прошивки ATmega8A и сама программа для работы с COM портом.
Если будут какие-то вопросы, то пишите в личку, постараюсь ответить что к чему.
Схему увязки выложу на днях.
https://yadi.sk/d/SgrYioezs5QBz
https://yadi.sk/d/hdXlG27Rs5QMd
https://www.youtube.com/watch?v=wToDbX5lSaA
Сам долго мечтал об этой реализации, но никак не мог воплотить ее в жизнь по нехватке знаний
в программировании COM порта. После приобретения некоторых знаний в области С++ и WinAPI
наконец-то воплотил это в жизнь.
В данном случае увязка ПК происходит с МК ATmega8A.
Программа для работы с COM портом консольная. Будет время постараюсь ее сделать визуальной
на том же WinAPI .
В программе предусмотрена возможность управлять 3 объектами управления и просматривать
состояние 80 объектов контроля.
В данном случае объектами управления являются светодиоды, но это могут быть и светодиоды
оптронов.
Во вложении находятся файлы для прошивки ATmega8A и сама программа для работы с COM портом.
Если будут какие-то вопросы, то пишите в личку, постараюсь ответить что к чему.
Схему увязки выложу на днях.
https://yadi.sk/d/SgrYioezs5QBz
https://yadi.sk/d/hdXlG27Rs5QMd
https://www.youtube.com/watch?v=wToDbX5lSaA
Последний раз редактировалось СЦБист Сб май 28, 2016 15:49:01, всего редактировалось 6 раз.
- Реклама
Re: Первая интеграция ATmega8A с ПК
Про библиотеки функций ничего не слышали?СЦБист писал(а):Сам долго мечтал об этой реализации, но никак не мог воплотить ее в жизнь по нехватке знаний в программировании COM порта. После приобретения некоторых знаний в области С++ и WinAPI наконец-то воплотил это в жизнь.
То что вам нужно, решается довольно быстро даже на бейсике при минимальной затрате усилий.
Файлы для МК есть, а вот программы для ПК в архиве не наблюдается.СЦБист писал(а):Во вложении находятся файлы для прошивки ATmega8A и сама программа для работы с COM портом.
- СЦБист
- Это не хвост, это антенна
- Сообщения: 1337
- Зарегистрирован: Сб июн 09, 2012 02:14:11
- Откуда: ХАРЬКОВ
Re: Первая интеграция ATmega8A с ПК
там есть ссылкаМурик писал(а):[qe]Файлы для МК есть, а вот программы для ПК в архиве не наблюдается.
Мурик писал(а):[q
То что вам нужно, решается довольно быстро даже на бейсике при минимальной затрате усилий.
.
мне уже нечего не нужно. то что хотел - то сделал.
при чем тут библиотечные функции ? В С++ нету библиотеки для работы с COM портом.
Re: Первая интеграция ATmega8A с ПК
Для плюсов есть и не одна. Зачем было изобретать велосипед писать очередную?
- СЦБист
- Это не хвост, это антенна
- Сообщения: 1337
- Зарегистрирован: Сб июн 09, 2012 02:14:11
- Откуда: ХАРЬКОВ
Re: Первая интеграция ATmega8A с ПК
Мурик писал(а):Для плюсов есть и не одна.
название в студию.
именно для работы с COM портом.
- Реклама
Re: Первая интеграция ATmega8A с ПК
Что касается Windows, то большинство так называемых "библиотек" для работы с COM портами это жалкие обертки над WinAPI.
Самая сложная задача - это получить список портов имеющихся в системе. Эту задачу можно решить чтением ветки реестра "HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM" или использовать SetupAPI. Первый способ проще, второй сложнее, но дает больше информации (полный путь к устройству который можно использовать при вызове CreateFile и Friendly Name которое можно отобразить в диалоге выбора порта).
Получив в результате HANDLE остальные задачи не представляют сложностей.
Самая сложная задача - это получить список портов имеющихся в системе. Эту задачу можно решить чтением ветки реестра "HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM" или использовать SetupAPI. Первый способ проще, второй сложнее, но дает больше информации (полный путь к устройству который можно использовать при вызове CreateFile и Friendly Name которое можно отобразить в диалоге выбора порта).
Получив в результате HANDLE остальные задачи не представляют сложностей.
- СЦБист
- Это не хвост, это антенна
- Сообщения: 1337
- Зарегистрирован: Сб июн 09, 2012 02:14:11
- Откуда: ХАРЬКОВ
Re: Первая интеграция ATmega8A с ПК
<windows.h> не является стандартом ++
Re: Первая интеграция ATmega8A с ПК
Тут можно было-бы долго спорить что входит в "стандартный" "Ц++" а что не входит - но трата времени определённо не является ни вашей ни чьей-либо ещё целью. Ну кроме хронофагов. По существу, к примеру, Библиотека Библиотек boost http://www.boost.org/doc/libs/1_40_0/do ... ports.html чем не [почти что] стандартный Ц++? Понятное дело, что в борьбе со всяким фреймворком львиная доля времени уходит чтобы запихать фреймворковы телеса в прокрустово ложе наших представлений о работе нашей программки + надёжно примотать тесёмочками и изолентой оному фреймворку все щупальца дабы не выползали из ушей и ноздрей програмки когда ни попадя. Но это плата за универсальность. Минимализм-же рождает решения мало кому-нибудь ещё полезные кроме автора. Но то всё лирика - оставим её лирикам.СЦБист писал(а):В С++ нету библиотеки для работы с COM портом.
По существу-же я, как опенсорсник с дореволюционным стажем, всякое начинание безвозмездно поделиться плодами трудов своих вижу исключительно положительным фактом биографии пациента! Достаточно положительным, чтобы перевесить всякое желание язвить в его сторону на тему "отсутствия научной новизны" и "концептуального несовершенства очередной модели велисипеда". В этом ключе рекомендую завести аккаунт на каком нибудь портале для совместной разработки ПО с открытым кодом и публиковать проекты там. Надёжнее, может кто присоединится помогать, да и история разработки с возможностью отката в случае ошибок экономит массу времени. Придется разобраться с программами-системами контроля версий - но оно того стоит. В общем самые модные парни с района, вроде как сейчас на GitHub околачиваются - но сам git как по мне, при всей очевидной мощности и гибкости, с точки зрения обычного человека может казаться поделием в достаточной степени человеконенавистническим. Тогда подберите что-нибудь с mercurial - у него система комманд погуманнее, ИМХО. Удачи!
Одновременным нажатием LIGHT и POWER, РП Sangean ATS-909X (ver 1.29) превращается в ATS-909XR! 
- СЦБист
- Это не хвост, это антенна
- Сообщения: 1337
- Зарегистрирован: Сб июн 09, 2012 02:14:11
- Откуда: ХАРЬКОВ
Re: Первая интеграция ATmega8A с ПК
Опять ничего не понял )))))))
Кстати велосипед никто не изобретал. Я написал приложение под свои критерии.
Кстати велосипед никто не изобретал. Я написал приложение под свои критерии.
- СЦБист
- Это не хвост, это антенна
- Сообщения: 1337
- Зарегистрирован: Сб июн 09, 2012 02:14:11
- Откуда: ХАРЬКОВ
Re: Первая интеграция ATmega8A с ПК
Может кого-то заинтересует
https://www.youtube.com/watch?v=GbqnlOGh-38
https://yadi.sk/d/oYs9DoUYsWEvV
https://www.youtube.com/watch?v=GbqnlOGh-38
https://yadi.sk/d/oYs9DoUYsWEvV
- СЦБист
- Это не хвост, это антенна
- Сообщения: 1337
- Зарегистрирован: Сб июн 09, 2012 02:14:11
- Откуда: ХАРЬКОВ
Re: Первая интеграция ATmega8A с ПК
Собственно схема лабораторной установки
- Вложения
-
- Безымянный.JPG
- (185.89 КБ) 517 скачиваний
- Reloader
- Мучитель микросхем
- Сообщения: 451
- Зарегистрирован: Сб фев 26, 2011 14:38:42
- Откуда: Новочеркасск
Re: Первая интеграция ATmega8A с ПК
Посмотрел схему.
Аффтару было бы неплохо обратить внимание на V-USB
Аффтару было бы неплохо обратить внимание на V-USB
Выпрямите спину и уберите левую руку от лица.
Мой Youtube канал
Мой Youtube канал
- СЦБист
- Это не хвост, это антенна
- Сообщения: 1337
- Зарегистрирован: Сб июн 09, 2012 02:14:11
- Откуда: ХАРЬКОВ
Re: Первая интеграция ATmega8A с ПК
вопрос стоял COM порта. вопрос решен.Reloader писал(а):Посмотрел схему.
Аффтару было бы неплохо обратить внимание на V-USB
если есть притензии по поводу схемы, то выкладывайте ...
- Reloader
- Мучитель микросхем
- Сообщения: 451
- Зарегистрирован: Сб фев 26, 2011 14:38:42
- Откуда: Новочеркасск
Re: Первая интеграция ATmega8A с ПК
Никаких претензий.СЦБист писал(а): если есть притензии по поводу схемы, то выкладывайте ...
V-USB позволяет поднимать виртаульный COM порт на том же самом микроконтроллере
не нужна материнская плата с COM портом и MAX232
Вот и всё.
Выпрямите спину и уберите левую руку от лица.
Мой Youtube канал
Мой Youtube канал
Re: Первая интеграция ATmega8A с ПК
Почему конкретно V-USB ? В сети об программной эмуляции USB достаточно скептические отзывы ( сам не пробовал, честно ). Тот же эффект, только более стабильно работающий, можно получить на специальном преобразователе, напр., FT232Reloader писал(а):V-USB позволяет поднимать виртаульный COM порт
- Reloader
- Мучитель микросхем
- Сообщения: 451
- Зарегистрирован: Сб фев 26, 2011 14:38:42
- Откуда: Новочеркасск
Re: Первая интеграция ATmega8A с ПК
Приведу всего 2 примера программной эмуляции USB :Jack_A писал(а):В сети об программной эмуляции USB достаточно скептические отзывы
1) UsbAsp
2) AVR 910 Protoss
Проверенно годами
Бесспорно, работает выше всяких похвал, но есть "НО"Jack_A писал(а):можно получить на специальном преобразователе, напр., FT232
Увеличивает размер устройства
и цена в 2 раза больше микроконтроллера
Выпрямите спину и уберите левую руку от лица.
Мой Youtube канал
Мой Youtube канал
- КРАМ
- Друг Кота
- Сообщения: 25261
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Первая интеграция ATmega8A с ПК
Последним логическим шагом будет отказ от виртуального COM (CDC USB) в пользу HID USB. Для сбора данных и управления - самое то.
0,5 Мбит/с и никаких проблем с портами.
0,5 Мбит/с и никаких проблем с портами.
- СЦБист
- Это не хвост, это антенна
- Сообщения: 1337
- Зарегистрирован: Сб июн 09, 2012 02:14:11
- Откуда: ХАРЬКОВ
Re: Первая интеграция ATmega8A с ПК
[/quote]Reloader писал(а):[q
MAX232
Вот и всё.
она не такая уж и дорогая. где-то 40-50 центов. дороже мега 8
зачем в быту 0,5 Мбит/с ? достаточно и ком порта.
- КРАМ
- Друг Кота
- Сообщения: 25261
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Первая интеграция ATmega8A с ПК
Дело не в 0,5 Мбит/с. Дело в УДОБСТВЕ HID-USB. Не нужно открывать порты, автоматически определяется устройство и можно автоматически запускать ПО.СЦБист писал(а):зачем в быту 0,5 Мбит/с ? достаточно и ком порта.
К тому же COM порты уже трудно найти в компьютерах.



