Емельянов Эдуард Владимирович (eddy_em) wrote,
Емельянов Эдуард Владимирович
eddy_em

Category:

Первое приближение к USB

Сегодня наконец-то у меня что-то небольшое получилось. Отсюда я скачал проект-заготовку (если точнее, то скачал отсюда, в оригинальной статье версия нерабочая).
После некоторых изменений и отключении USART и printf (первый мне не нужен, т.к. некуда подключать, а второй вешал систему, т.к. некуда выводить), получил это.

После сборки и прошивки (make && make load) светодиод замигал, а dmesg выдал
[181351.201294] usb 1-1: new full-speed USB device number 69 using xhci_hcd

В /dev/ появилось устройство /dev/bus/usb/001/069. Конечно, с ним пока ничего не поделаешь: использовать libusb я не хочу, т.к. есть вроде бы возможность "оформить" железяку как посредник USB→RS232, чтобы появилось устройство /dev/ttyUSBx, с которым уже можно было бы работать, как с обычным последовательным портом, безо всяких libusb. А это будет намного лучше: все равно для работы эта плата будет использовать USART, но для тестовых подключений — как раз USB (т.к. я не собираюсь таскать туда-сюда "железный" переходник USB→RS232, не для того дорогущий ARM покупался).

Итак, остается почитать спецификации: как должно себя идентифицировать устройство, чтобы система решила, что это — USB→RS232, а не какое-то "левое" устройство.
А потом — дело за малым: подрихтовать исходники (выбросить все ненужное и заменить жирную printf на самописную) и добавить своих функций.

P.S. Только вчера обнаружил "приятную неожиданность": на макетке распаяна STM32F103RBT6, а заказал я пяток STM32F103VBT6, у которых на 36 "ног" больше. Паять, конечно, замучаюсь, зато сколько можно железа лишнего навешать! Хоть пультик с LCD делай для возможности управления железом без компьютера (при всяких настройках, калибровках и т.п.).
Кстати, насчет LCD: надо будет и их штучки 3-4 заказать в следующий раз, когда буду термодатчики и всякую мелочевку заказывать (на фоне стоимости термодатчиков эти LCD — просто копеечные).
Tags: stm32, usb, железяки
Subscribe

  • А что, в С так нельзя?

    Пытаюсь передать в функцию цвет как массив. Функция такая: void Pattern_draw3(Img3 *img, Pattern *p, int xul, int yul, uint8_t colr[3]); И…

  • DHT22/DHT11 на STM32F103

    Добил шайтана! Сначала ожидал, что нужно будет полноценным захватом ШИМ пользоваться, но т.к. в протоколе неинформативная часть имеет постоянную…

  • Свеженькие железячки

    Получил сегодня с али ожидаемые железки, в т.ч. для восстановления моей файлопомойки. Во-первых, это блок питания на 16.8В, который я брал для…

promo eddy_em august 17, 2019 12:33 3
Buy for 10 tokens
Юра намедни напечатал корпус для хронометра. Для первого блина получилось неплохо: И еще немного фотографий:
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 0 comments