nickita startcev (nicka_startcev) wrote,
nickita startcev
nicka_startcev

Category:

синяя хрень и УПШ

внезапно, вполпинка поднял "CDC ACM" на мелкой дешевой stm32f1 платке, которых до ковидобесия взял 6шт на 1000р.

"CDC ACM" - это как компорт, но круче компорта - просто канал передачи, частотами/скоростями-битностью-црц заморачиваться не надо (всё равно всё передается пакетами в пределах кадра на штатной для УСБ частоте)

при подключении к компу ругани в дмезге нет, /dev/ttyACM0 появляется, миником его приходовать умеет, эхо работает.

из неприятного - фактически там "<>fool speed</s> full speed" USB 1.1 (а не high speed ) и примерно 12 Мбит/с (а не 480 Мбит/с) канальной скорости (это до вычета всех накладных).

потратил примерно полдня (с учетом поиска платы, поиска программатора, поиска усб-шнурков), спасибо вполне адекватной libopencm3.

заодно перевел с сей на типа-плюсы всю инициализацию усб, поймав несколько некорректно инициализированных полей.

в планах - автоопределение наличия хоста на линии (на плате линия автодетекта с разъёма не разведена, но у усбхоста и у либы есть же всякие там статусы?). в планах - подумать как промерить какой пиковый cps получится при приёме данных из платы.

в планах - переделать пуллинг на прерывания - сходу почему-то не завелось.

в планах - генерить серийник в усб-дескрипторе из всяких уникальных пахучих меток кристалла (ну, чтоб тупо несколько экземпляров устройства и отличались, и была привязка к конкретной железке)

кстати, вопрос к уважаемым ребе и другим программистам: если устройство гонит мутный вал данных в "компорт" (точнее, не в ttyS или ttyUSB, а в ttyACM), а хост вообще не чешется забирать эти данные, то у драйвера крышу не сорвёт?

ps: что забавно, бинарник с тупым эхо - примерно 5к байт. а кучу лет назад сходный функционал на х86-ибм-пц у меня был где-то 17-100к байт.
Subscribe

  • x-fenua

    знакомый (бывший) околоигродельный художник-дизайнер (а в детстве программист) посоветовал глянуть юнити и https://defold.com/ . можете…

  • вопрос про игродвижки

    по максимуму хочу 1. андроид-линух-винда 2. одновременно и реалтайм и пошаг версию. как я понимаю, для пошаг нужно примерно только стопалку на каждые…

  • x-fenua

    а вот подумалось. а что мешает вот прям ща запоганить бяку и наколхозить нулевое приближение? накатать симулятор в стиле классических игрушек цивилки…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments