<?xml version="1.0" encoding="UTF-8"?>        <rss version="2.0"
             xmlns:atom="http://www.w3.org/2005/Atom"
             xmlns:dc="http://purl.org/dc/elements/1.1/"
             xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
             xmlns:admin="http://webns.net/mvcb/"
             xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
             xmlns:content="http://purl.org/rss/1.0/modules/content/">
        <channel>
            <title>
									Пользовательские USB HID дискрипторы. - STM32				            </title>
            <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/</link>
            <description>Обсуждение вопросов, посвященных программированию микроконтроллеров, разработке электроники и не только.</description>
            <language>ru-RU</language>
            <lastBuildDate>Sat, 06 Jun 2026 11:26:04 +0000</lastBuildDate>
            <generator>wpForo</generator>
            <ttl>60</ttl>
							                    <item>
                        <title>НА: Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2232</link>
                        <pubDate>Thu, 14 Sep 2023 03:54:05 +0000</pubDate>
                        <description><![CDATA[Таких понятных книг я не встречал никогда.Заметил там ошибку, но это пустяк, можно проверить на практике.6.5.1.1. Элементы короткого типа11 — 4 байта. Обычно книги пишут извиняюсь &quot;на от****...]]></description>
                        <content:encoded><![CDATA[<p>Таких понятных книг я не встречал никогда.<br />Заметил там ошибку, но это пустяк, можно проверить на практике.<br />6.5.1.1. Элементы короткого типа<br />11 — 4 байта. <br />Обычно книги пишут извиняюсь "на от****сь". Главное чтоб заказчику понравилось максимально научным языком.</p>]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>stm</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2232</guid>
                    </item>
				                    <item>
                        <title>НА: Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2231</link>
                        <pubDate>Thu, 14 Sep 2023 02:02:21 +0000</pubDate>
                        <description><![CDATA[]]></description>
                        <content:encoded><![CDATA[451
<p> </p>]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>stm</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2231</guid>
                    </item>
				                    <item>
                        <title>НА: Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2230</link>
                        <pubDate>Wed, 13 Sep 2023 07:50:30 +0000</pubDate>
                        <description><![CDATA[Не успел пока посмотреть, но здесь должна быть вся информация:

.]]></description>
                        <content:encoded><![CDATA[<p>Не успел пока посмотреть, но здесь должна быть вся информация:</p>
450
<p>.</p>]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>Aveal</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2230</guid>
                    </item>
				                    <item>
                        <title>НА: Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2229</link>
                        <pubDate>Wed, 13 Sep 2023 04:02:16 +0000</pubDate>
                        <description><![CDATA[Report Size 0111 01 nnUnsigned integer specifying the size of the reportfields in bits. This allows the parser to build anitem map for the report handler to use. For moreinformation, see Sec...]]></description>
                        <content:encoded><![CDATA[<p>Report Size <br />0111 01 nn<br />Unsigned integer specifying the size of the report<br />fields in bits. This allows the parser to build an<br />item map for the report handler to use. For more<br />information, see Section 8: Report Protocol.</p>
<p>Это оказывается в битах, а не в байтах<br />0x75, 0x08, // REPORT_SIZE (8)<br />означает передачу 8 бит<br />Как это использовать я ещё не знаю, но думаю это важный параметр.</p>]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>stm</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2229</guid>
                    </item>
				                    <item>
                        <title>НА: Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2228</link>
                        <pubDate>Wed, 13 Sep 2023 03:13:01 +0000</pubDate>
                        <description><![CDATA[Очень хорошую статью нашёэто 0xA1,0x01, // COLLECTION (Application)имеет 3 части 0хА0х10х010хА -- означает, что это коллекция(без понятия что за коллекция, может коллекция приборов)После бук...]]></description>
                        <content:encoded><![CDATA[<p>Очень хорошую статью нашёл<br />https://electronics.stackexchange.com/questions/68141/where-do-i-lookup-values-for-building-a-usb-hid-descriptor<br />Например это <br />0xA1,0x01, // COLLECTION (Application)<br />имеет 3 части <br />0хА<br />0х1<br />0х01<br />0хА -- означает, что это коллекция(без понятия что за коллекция, может коллекция приборов)<br />После буквы 0хА единица означает, что длина равна 1 байт.<br />Наверное длина описания данного типа, то есть следующий байт.<br />Следующий байт 0x01 означает, что тип коллекции это Application.</p>
449]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>stm</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2228</guid>
                    </item>
				                    <item>
                        <title>НА: Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2227</link>
                        <pubDate>Wed, 13 Sep 2023 01:49:09 +0000</pubDate>
                        <description><![CDATA[]]></description>
                        <content:encoded><![CDATA[448]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>stm</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2227</guid>
                    </item>
				                    <item>
                        <title>НА: Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2226</link>
                        <pubDate>Wed, 13 Sep 2023 01:30:04 +0000</pubDate>
                        <description><![CDATA[Например здесьже написано, что первым байтом должен идти размер дискриптора, но я это вижу далеко не всегда----------------Все дескрипторы имеют общий формат. Первый байт указывает длину дес...]]></description>
                        <content:encoded><![CDATA[<p>Например здесь https://codeby.net/threads/usb-flash-chast-1-ustrojstvo.77263/<br />Так же написано, что первым байтом должен идти размер дискриптора, но я это вижу далеко не всегда<br />----------------<br />Все дескрипторы имеют общий формат. Первый байт указывает длину дескриптора, а второй – его тип.<br />----------------</p>
446]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>stm</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2226</guid>
                    </item>
				                    <item>
                        <title>НА: Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2225</link>
                        <pubDate>Wed, 13 Sep 2023 01:14:46 +0000</pubDate>
                        <description><![CDATA[0x95  Размер REPORT_SIZE не должен превышать wMaxPacketSize. Меньше — можно.]]></description>
                        <content:encoded><![CDATA[<p><span>0x95  </span>Размер REPORT_SIZE не должен превышать wMaxPacketSize. Меньше — можно.</p>]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>stm</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2225</guid>
                    </item>
				                    <item>
                        <title>НА: Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2224</link>
                        <pubDate>Wed, 13 Sep 2023 01:01:10 +0000</pubDate>
                        <description><![CDATA[Нашёл совпадения.Например 0x85 это наверное ID репорта.0x09 это производитель наверное0x75 это REPORT_SIZEREPORT_SIZE в этом коде равен 8 байт, но на самом деле репорт больше, почему?0x95 Ма...]]></description>
                        <content:encoded><![CDATA[<p>Нашёл совпадения.<br />Например 0x85 это наверное ID репорта.<br />0x09 это производитель наверное<br />0x75 это REPORT_SIZE<br />REPORT_SIZE в этом коде равен 8 байт, но на самом деле репорт больше, почему?<br />0x95 Максимальное количество передаваемых данных. Или просто количество передаваемых данных, не знаю.<br />итп<br />Последние 2 бита первого байта могут меняться в зависимости от длины передаваемых байт.</p>
<p>Вот подобной информации мне не хватает.</p>]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>stm</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2224</guid>
                    </item>
				                    <item>
                        <title>Пользовательские USB HID дискрипторы.</title>
                        <link>https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2223</link>
                        <pubDate>Tue, 12 Sep 2023 23:34:37 +0000</pubDate>
                        <description><![CDATA[Не знаю даже что спросить, всё непонятно.С помощью простого USB HID я управлял курсором мыши.По этому видеопомощью функции USBD_HID_SendReportВо первых правильно ли он делает?Здесьчеловек го...]]></description>
                        <content:encoded><![CDATA[<p>Не знаю даже что спросить, всё непонятно.<br />С помощью простого USB HID я управлял курсором мыши.<br />По этому видео https://www.youtube.com/watch?v=B3Umr0YlR0w<br />С помощью функции USBD_HID_SendReport<br />Во первых правильно ли он делает?<br />Здесь https://www.youtube.com/watch?v=qgda0Zbjmgs человек говорит что репортами нельзя управлять.<br />Он на основе прерываний делает, слишком замудрил с уроком, мне надо без прерываний сначала.<br />--------------------------<br />Непонятно для чего нужны эти шестнадцатеричные цифры в десктипротах.<br />0x15, 0x01<br />Здесь https://habr.com/ru/articles/551720/ пишут:<br />Если «значение» равно 1 (один байт) то записано будет 0x15, 0x01. Для двухбайтного значения 0x1234 будет записано 0x16, 0x34, 0x12 — значение записывается от младшего к старшему. Ну и до кучи число 0x123456 будет 0x17, 0x56, 0x34, 0x12.<br />----<br />То есть если написано 0x15, 0x01<br />то значение здесь только цифра 0x01?<br />А 0x15 служит для описания этого значения?<br />Число 0x15 это 0001 0101,<span style="font-size: 12pt"><strong> состоит из 8 ми бит,</strong> <strong>что означает каждый из этих бит?</strong></span><br />И я видел дискрипторы, где эти шестнадцатеричные цифры идут не парами, а по одиночке.<br />----------------------------<br />Здесь https://radiokot.ru/circuit/digital/pcmod/63/ написано, что <br />Каждое USB устройство имеет один дескриптор устройства длиной 18 байт.<br />---<br />У каждого дескриптора число байт должно быть определённого размера или это только у дескриптор устройства так?<br />----------------------------<br />Читал, что в каждом дескрипторе первым байтом должно идти общее количество байт в дескритпоре, но я встречал примеры, где первым байтом шли другие параметры.<br />Например https://microtechnics.ru/stm32cube-usb-custom-hid-sozdanie-deskriptorov-ustrojstva/<br />Как дискриптор определит где заканчивается один репорт и начинается другой когда нет длины каждого репорта?</p>
<pre contenteditable="false">0x85, 0x01, // REPORT_ID (1)
0x09, 0x01, // USAGE (Vendor Usage 1)
0x15, 0x00, // LOGICAL_MINIMUM (0)
0x25, 0x01, // LOGICAL_MAXIMUM (1)
0x75, 0x08, // REPORT_SIZE (8)
0x95, 4, // REPORT_COUNT (4)
0xb1, 0x82, // FEATURE (Data,Var,Abs,Vol)
0x85, 0x01, // REPORT_ID (1)
0x09, 0x01, // USAGE (Vendor Usage 1)
0x91, 0x82, // OUTPUT (Data,Var,Abs,Vol)
//--------------------------------------------------
0x85, 0x02, // REPORT_ID (2)
0x09, 0x02, // USAGE (Vendor Usage 2)
0x75, 0x08, // REPORT_SIZE (8)
0x95, 4, // REPORT_COUNT (4)
0x81, 0x82, // INPUT (Data,Var,Abs,Vol)</pre>
<p>Даже я здесь не разберу где они начинаются и заканчиваются.</p>]]></content:encoded>
						                            <category domain="https://microtechnics.ru/community/stm32/">STM32</category>                        <dc:creator>stm</dc:creator>
                        <guid isPermaLink="true">https://microtechnics.ru/community/stm32/polzovatelskie-usb-hid-diskriptory/#post-2223</guid>
                    </item>
							        </channel>
        </rss>
		