Требуется на микроконтроллере К1921ВК01Т (отладочная плата MBS-К1921ВК01Т) реализовать работу USB периферии. Устройство на базе микроконтроллера К1921ВК01Т (device) должно определяться в операционной системе компьютера (host) как так называемый Virtual COM Port.
Мотивация работы в том, что пример от производителя ОАО "НИИЭТ" отсутствует, а он нужен. Примеры Virtual COM Port для других популярных контроллеров существуют, то есть в работе нет никаких "ноу-хау". Пример реализации Virtual COM Port есть в стандартной USB библиотеке от ST en.stsw-stm32121.zip.
Обязательные требования:
В операционных системах семейства Windows должна обеспечиваться работа со стандартным драйвером usbser.sys. В операционных системах на основе ядра Linux должна обеспечиваться работа со стандартным драйвером cdc-acm.
Обработка данных в микроконтроллере должна идти по прерываниям от USB периферии.
Наличие интерфейсных функций на приём и на передачу:
* Функция "приём данных от хоста" вызывается автоматически при наличии хотя бы 1 байта данных в буфере на приём. Она должна предоставлять пользователю буфер данных и его длину, предполагать в себе место для написания произвольного пользовательского кода для обработки данных.
* Функция "передача данных хосту" вызывается по необходимости пользователем. Она принимает в качестве аргумента буфер и его длину.
* Обе функции должны поддерживать работу с буферами от 1 до 256 байт (включительно).
Опциональные требования:
Возможность (интерфейсные функции) передавать в ОС на уровне дескриптора пользовательский текст в полях Manufacturer, Product, Part Number.
Возможность (интерфейсные функции) установить пользовательский VID/PID до начала какого-либо общения с host.
Устройство представляется хосту, как композитное (составное) устройство и эмулирует работу 2х или более Virtual COM Ports на одном микроконтроллере.
Чистый минималистичный код, оформление кода по внутренним правилам компании.
Важна работа кода с компилятором среды IAR for ARM 7.30.
Неплохо, если будет работа кода с компиляторами/средой GCC и Keil µVision.
Тестирование будет проводиться на системах Windows 7 (архитектура x64), Debian Jessie Linux 3.16 (архитектуры x64, armhf), Cubian Linux 3.4 (миникомпьютер cubieboard2 архитектура armhf). На компьютере (host) необходимо продемонстрировать работу устройства с терминальной программой (PuTTY, screen), отправку байт, приём эхо-ответов.
Ссылки на материалы:
Документация к микроконтроллеру К1921ВК01Т
download.ximc.ru/TO_K1921... Документация к отладочной плате MBS-К1921ВК01Т
download.ximc.ru/technica... Официальный пример реализации USB для микроконтроллеров STM32 с сайта компании ST
download.ximc.ru/en.stsw-... Срок выполнения 1 месяц.
Вознаграждение 35000 65000 руб. Точнее определяется после собеседования и согласования по срокам и выполнением требований.
Контактные данные для связи:
Жулябина Ольга (zhulyabina@physics.msu.ru)