Программа Сервисный Центр
0

USB Generic HID Framework с открытым исходным кодом для Atmel AVR и Windows. Часть 2 - ПО микроконтроллера, приложения для Windows


Часть 1 – Аппаратная часть Программное обеспечение нашего проекта, как для микроконтроллера, так и для ПК с ОС Windows, условно разделяется на два типа: базовое ПО, с помощью которого пользователь может протестировать все функции и проверить работу программы демонстрационное ПО, показывающее, как использовать основные команды USB и функции для работы с периферией, подключенной к микроконтроллеру AVR. Помните, что предоставляемое ПО (прошивка) не оптимизировано с целью сокращения объема кода, т.к. помимо всех команд, которые используются интерфейсом USB, присутствует еще некоторые определения и отладочная информация. Поэтому рекомендуется, при дальнейшем применении данной USB HID структуры и разработке пользовательских приложений, ненужный для пользовательского приложения код удалить. Это, в свою очередь, позволит применить как стек LUFA, так, если потребуется, и нашу библиотеку функций для микроконтроллеров AVR ATmega8. Програмное обеспечение для микроконтроллера разработано в среде AVR Studio 5. Базовое ПО микроконтроллера Базовое программное обеспечение для микроконтроллера обрабатывает ивыполняет 6 основных USB команд. Пять из них действуют одновременно, и как для демонстрации работы программной структуры, и как средство регрессивного тестирования, чтобы убедиться, что USB HID структура функционирует корректно. Они выполняют пять основных операций: получение 1 пакета данных от Host, проверка содержимого пакета; получение 1 пакета данных от Host, проверка содержимого пакета и ответ Host-устройству 1 пакетом данных; получение 1 пакета данных от Host, проверка содержимого пакета и ответ Host-устройству 128 пакетами данных; получение 128 пакетов данных от Host, проверка содержимого пакета и ответ Host-устройству 1 пакетом данных; получение 128 пакетов данных от Host, проверка содержимого пакета и ответ Host-устройству 128 пакетами данных. USB Generic HID стек настроен на работу с 64-байтными пакетами данных. Это означает, что в самом экстремальном тесте мы получаем 8 КБайт данных от Host-устройства (128 пакетов) и затем отвечаем Host-устройству – передаем 8 КБайт данных. Протокол USB HID очень прост и представляет собой механизм для получения 64-байтных пакетов данных от Host-устройства и отправки 64-байтных пакетов данных к Host-устройству. Шестая USB команда предназначена для реализации операции «живой» отладки по USB интерфейсу. В программе микроконтроллера имеется функция, которая позволяет отправить строку с отладочной информацией. Эта строка имеет фиксированную длину и хранится в кольцевом буфере. Отладочная информация передается Host-устройству при получении специальной команды отладки. Как вы знаете, встроенная оперативная память микроконтроллера ограничена, поэтому мы можем обрабатывать одну команду в один момент времени, следовательно, отладочный механизм не подходит для слишком объемных отладочных сообщений. Но не смотря на это он предоставляет удобный способ считывания «живых» значений переменных и наблюдения за ходом выполнения программы. Так как функции отладки занимают определенный объем оперативной памяти микроконтроллера, пользователю предоставляется возможность включения и выключения отладки во время компиляции проекта при помощи директивы «USB_DEBUG». Демонстрационное ПО микроконтроллера Демонстрационная программа микроконтроллера намного проще, она реализует выполнение двух USB команд и отладку. Первая команда предназначена для чтения текущего статуса кнопок, светодиодов и потенциометра, и передчи этой информации к Host-устройству. Вторая команда позволяет управлять состоянием светодиодов. Для кнопок и светодиодов программа опирается на готовые функции программного стека LUFA. Кроме того, имеется уже готовый код для считывания значений АЦП, к которому подключен потенциометр. Хотя в базовую программу заложено намного больше возможностей, демонстрационная программа реализует часто применяющиеся на практике функции. Приложение для ОС Windows Программные приложения для компьютера разработаны на Си в среде Visual Studio 2010. Базовое ПО для компьютера предоставляет пользователю Windows-интерфейс, с помощью которого можно вызвать все 5 доступных команд USB и отслеживать отладочную информацию, поступающую от микроконтроллера. Приложение также обеспечивает автоматическую обработку подключения и отключения устройства по USB. Когда пользователь выбирает тест, приложение отсылает шаблон данных по интерфейсу USB к микроконтроллеру и проверяет ответные данные от него.
USB Generic HID Framework с открытым исходным кодом для Atmel AVR и Windows. Часть 2 - ПО микроконтроллера, приложения для Windows
Демонстрационное приложение позволяет пользователю взаимодействовать с аппаратной частью в режиме реального времени. Можно включать/выключать светодиоды, отслеживать состояние кнопок и наблюдать в графическом представлении положение потенциометра.
USB Generic HID Framework с открытым исходным кодом для Atmel AVR и Windows. Часть 2 - ПО микроконтроллера, приложения для Windows
Демонстрационное видео Загрузки Файлы проектов (Visual Studio 2010, AVR Studio 5.0) – скачать Часть 3 – USB Generic HID библиотека коммуникационных функций и ее использованиеНа английском языке: USB Generic HID Open Source Framework for Atmel AVR and Windows. Part 2 - ATmega32U4 Firmware, Demonstration Firmware, Windows Applications

По материалам сайта www.rlocman.ru

 
 
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
 
Обратная связь

Наши партнеры

 

Опросы

Есть ли справедливость в жизни?
Конечно есть, уверен!
Вроде как должна быть, но...
Затрудняюсь ответить...
Какая справедливость? О чем Вы?
Эх.., нет правды на свете!

 

Облако тегов

Требуется для просмотраFlash Player 9 или выше.

Показать все теги
 

Календарь публикаций

«    Декабрь 2016    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
 

Архив новостей

Декабрь 2016 (1)
Ноябрь 2016 (42)
Октябрь 2016 (34)
Сентябрь 2016 (38)
Август 2016 (34)
Июль 2016 (36)
 
Наверх Сервисные мануалы Даташиты Ремонт LCD, ЖК телевизоров LG Samsung Скрипт программы "Сервисный центр"