Демо-программа для взаимодействия с программой VUSB-CONSOL.
Программа для связи микроконтроллера с компьютером на основе библиотеки Ollopa. Работает стабильно!
Предлагается демо-проект, показывающий возможность обеспечить двухстороннюю передачу данных между компьютером и микроконтроллером. Проект построен на основе библиотеки Rick Richard, сделанной для BASCOM-AVR. Никаких изменений в библиотеку swusb.LBX и в файл swusb-includes.bas не вносилось. Целью проекта было проверка надежности виртуального USB интерфейса и получение максимальной производительности, а также отработка приемов программирования для дальнейшего использования в реальных устройствах.
Исходные материалы проекта: - компилятор BASCOM-AVM версий начиная 1.11.9.3. Важно, чтобы он поддерживал длинные цепочки переименования и вычисления констант; - библиотека для Bascom swusb.LBX; - компилятор PureBasic 4.41. Годится демо-версия; - библиотека для PureBasic HID_Lib for PureBasic 4.41.exe; - демо-проекты на сайтах http://www.powerbasic.com/, http://www.purebasic.ru/, http://www.mcselec.com/; - справочная информация http://www.asc-development.ru/. Для облегчения процесса отладки рекомендуется использовать загрузчик Megaloader http://www.microsil.com. готовые файлы для прошивки прилагаются. Он позволяет быстро заменить программу через UART. Программируемые биты: BOOTSZ1=1, BOOTSZ0=0, BOOTRST=0 (стартовый адрес=1E00H(3C00H), размер=1024слов)
Программа "VUSB_CONSOL"
Для отладки устройств с виртуальным USB интерфейсом разработана консольная программа, позволяющая принимать данные и отправлять сообщения в текстовом и числовом виде. Передаваемые числовые данные могут заданы как HEX-код или десятичное число. Предусмотрено три поля ввода данных, которые преобразуются в выбранную форму и передаются нажатием соответствующей кнопки. Цифры передаются только в виде четырехбайтного числа. Длина передаваемой строки может составлять от 1 до 8 символов. Принимаемые данные представляются в виде четырехбайтного числа.
Другие прерывания использовать нельзя! Тем не менее: можно полноценно использовать таймеры, АЦП, UART Как работает: - передает каждые полсекунды четыребайтовое число в ПК; - принимает 8 байт и тут же печатает в COM-порт эти данные как текст, как HEX-код первых четырех байт, как четырех байтовое число соответствено тому как оно было отправлено из компьютера - ВНИМАНИЕ! вывод в COM-порт происходит только по факту приема данных. Это регулируется специальным флагом. - работает таймер, мигая лампочкой на линии PORTB.2
Виртуальный USB не требует драйверов и работает стабильно. Проверял: ОС находит устройство подключенное в любой USB порт даже через разветвитель (HUB).
Автор - Михаил Кулиш.
|