{"id":400,"date":"2025-04-02T07:25:47","date_gmt":"2025-04-01T22:25:47","guid":{"rendered":"https:\/\/drroot.page\/wp\/?p=400"},"modified":"2025-04-12T18:24:59","modified_gmt":"2025-04-12T09:24:59","slug":"raspberry-pi-pico-tinyusb-pio-usb-%e3%81%a7%e3%83%93%e3%83%ab%e3%83%89%e3%81%97%e3%82%88%e3%81%86%e3%81%a8%e3%81%99%e3%82%8b%e3%81%a8tusb_config-h%e3%81%8c%e8%a6%8b%e3%81%a4%e3%81%8b%e3%82%89","status":"publish","type":"post","link":"https:\/\/drroot.page\/wp\/?p=400","title":{"rendered":"Raspberry Pi Pico + TinyUSB + PIO-USB \u3067\u30d3\u30eb\u30c9\u3057\u3088\u3046\u3068\u3059\u308b\u3068pio_usb.h\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u554f\u984c"},"content":{"rendered":"<h1>Raspberry Pi Pico + TinyUSB + PIO-USB \u3067\u30d3\u30eb\u30c9\u3057\u3088\u3046\u3068\u3059\u308b\u3068pio_usb.h\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u554f\u984c<\/h1>\n<h2>\u6982\u8981<\/h2>\n<p>VsCode\u3067\u306fRP2040\u7cfb\u306e\u958b\u767a\u306b\u304a\u3044\u3066\u5c02\u7528\u306e\u62e1\u5f35\u6a5f\u80fd\u300cRaspberry Pi Pico\u300d\u3092\u5165\u308c\u308b\u3088\u3046\u8a00\u308f\u308c\u308b\u3002<br \/>\n\u4fbf\u5229\u306a\u306e\u3060\u304c\u305d\u306e\u307e\u307e\u7d20\u76f4\u306bpio usb\uff08\u6700\u521d\u304b\u3089\u3064\u3044\u3066\u308bUSB\u306e\u53e3\u3068\u306f\u5225\u3067GPIO\u4f7f\u3063\u3066USB\u558b\u3089\u305b\u308b\u3084\u3064\uff09\u3092\u3084\u308d\u3046\u3068\u3059\u308b\u3068\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u304c\u4f55\u51e6\u306b\u3082\u306a\u3044\u3002<br \/>\n\u3068\u3044\u3046\u304bVSCode\u62e1\u5f35\u3092\u4f7f\u3063\u305f\u5834\u5408\u306e\u307f\u3069\u3046\u3059\u308c\u3070\u3044\u3044\u304b\u308f\u304b\u3089\u306a\u3044\u3002<br \/>\n\u7d20\u76f4\u306bTinyUSB\u306eExample\u901a\u308a\u306b\u3084\u308d\u3046\u3068\u3057\u3066\u3082pio_usb.h\u304c\u7121\u3044\u3068\u304b\u8a00\u308f\u308c\u308b\u3002\u3053\u308c\u3092\u4f55\u3068\u304b\u3059\u308b\u3002<\/p>\n<p>\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u81ea\u4f53\u306f\u5927\u51e1\u4e0b\u8a18\u30d6\u30ed\u30b0\u8a18\u4e8b\u3092\u30d9\u30fc\u30b9\u306b\u3057\u3066\u3044\u308b\u3082\u306e\u3068\u3059\u308b\u3002<br \/>\n<a href=\"https:\/\/blueeyes.sakura.ne.jp\/2021\/02\/13\/3777\/\">https:\/\/blueeyes.sakura.ne.jp\/2021\/02\/13\/3777\/<\/a><\/p>\n<h2>\u89e3\u6c7a\u6cd5<\/h2>\n<h3>usb pio\u5165\u308c\u308b\u307e\u3067<\/h3>\n<p>\u307e\u305avscode\u62e1\u5f35\u304c\u843d\u3068\u3057\u3066\u304f\u308bpico-sdk\u306b\u306fUSB PIO\u6a5f\u80fd\u304c\u542b\u307e\u308c\u3066\u3044\u306a\u3044\u3002<br \/>\n\u5e78\u3044SDK\u958b\u767a\u30b5\u30a4\u30c9\u3082\u3053\u308c\u3092\u624b\u3063\u53d6\u308a\u65e9\u304f\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u65b9\u6cd5\u3092\u7528\u610f\u3057\u3066\u304f\u308c\u3066\u3044\u308b\u3002<br \/>\nsdk\u306f\u5fc5\u305a<code>~\/.pico-sdk\/sdk\/{\u30d0\u30fc\u30b8\u30e7\u30f3}<\/code>\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u3066\u3044\u3066\u3001tinyusb\u306f\u66f4\u306b\u305d\u306e\u4e0b\u306elib\/tinyusb\u306b\u3042\u308b\u3002\uff08Windows\u74b0\u5883\u3067\u3082\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u304b\u3089\u306a\u3089~\/\u3067\u98db\u3079\u308b\uff09\u3002<\/p>\n<pre><code>cd ~\/.pico-sdk\/sdk\/2.1.1\/lib\/tinyusb<\/code><\/pre>\n<p>\u305d\u3057\u305f\u3089\u305d\u306e\u5834\u6240\u3067\u4f9d\u5b58\u95a2\u4fc2\u306e\u7269\u3092\u53d6\u3063\u3066\u3053\u3055\u305b\u308b\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u53e9\u304f\u3002\u30ab\u30ec\u30f3\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092tinyusb\u76f4\u4e0b\u306b\u3057\u306a\u3044\u3068\u3044\u3051\u306a\u3044\u306e\u3060\u3051\u6ce8\u610f\u3002<\/p>\n<pre><code>python .\\tools\\get_deps.py rp2040<\/code><\/pre>\n<p>\u3053\u308c\u3067tinyusb\/hw\/mcu\u4ee5\u4e0b\u306braspberry-pi\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u4ee5\u4e0b\u4e00\u5f0f\u304c\u4fdd\u5b58\u3055\u308c\u308b\u3002<\/p>\n<h3>\u95a2\u9023\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u30ea\u30f3\u30af\u3059\u308b\u307e\u3067<\/h3>\n<p>\u3053\u306e\u6bb5\u968e\u3067\u7d20\u76f4\u306b\u30d3\u30eb\u30c9\u3057\u3066\u3082\u4e0a\u624b\u304f\u3044\u304b\u306a\u3044\uff08\u524d\u8ff0\u306e\u30d8\u30c3\u30c0\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u554f\u984c\u304c\u6e67\u304f\uff09\u3002<br \/>\n\u305d\u3053\u3067\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306eCMakeLists\u306b\u3042\u308b\u30bf\u30fc\u30b2\u30c3\u30c8\u30ea\u30f3\u30af\u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3059\u308b\u3002<\/p>\n<pre><code>target_link_libraries(your_target_name\n        pico_stdlib tinyusb_pico_pio_usb tinyusb_host tinyusb_board)<\/code><\/pre>\n<p>\u3053\u3053\u3067tinyusb_pico_pio_usb\u3092\u8ffd\u52a0\u3059\u308b\u306e\u304c\u30dd\u30a4\u30f3\u30c8\u3002\u3053\u306e\u8a18\u8ff0\u306fpio_usb.h\u3092\u30a4\u30f3\u30af\u30eb\u30fc\u30c9\u5148\u306b\u6307\u5b9a\u3057\u3066\u3044\u308btinyusb\/hw\/bsp\/rp2040\/family.cmake\u5185\u306b\u30e9\u30a4\u30d6\u30e9\u30ea\u5b9a\u7fa9\u304c\u3042\u308b\u3002<br \/>\n\u3067\u3082\u3063\u3066tinyusb_board\u306ftinyusb\u306b\u5fc5\u9808\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3001tinyusb_host\u306f\u30db\u30b9\u30c8\u3055\u305b\u305f\u3044\u5834\u5408\u306b\u5fc5\u8981\u306a\u8a18\u8ff0\u3002\u30c7\u30d0\u30a4\u30b9\u306a\u3089tinyusb_device\u3002<br \/>\n\u3053\u308c\u3067Cmake\u3092\u751f\u6210\u3057\u306a\u304a\u3057\u3066\u30b3\u30f3\u30d1\u30a4\u30eb\u304c\u901a\u308c\u3070OK\u3002<\/p>\n<h3>\u4f59\u8ac7<\/h3>\n<p>pico sdk\u306b\u5165\u3063\u3066\u308bTinyUSB\u306fPICO_DEFAULT_PIO_USB_DP_PIN\u30de\u30af\u30ed\u3067\u30c7\u30d5\u30a9\u30eb\u30c8\u306eUSB DP\u30d4\u30f3\u309220\u306b\u8a2d\u5b9a\u3057\u3066\u308b\u304b\u3089\u6ce8\u610f\uff08DM\u306fDP+1\u306a\u306e\u306721\uff09<br \/>\n\u304a\u308c\u306f\u3053\u308c\u306b\u6c17\u4ed8\u304b\u305a\u4e00\u751f0\/1\u30d4\u30f3\u3092\u7e4b\u3044\u3067\u52d5\u304b\u306d\u3047\u52d5\u304b\u306d\u3047\u3068\u30ad\u30ec\u6563\u3089\u304b\u3057\u3066\u3044\u305f<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Raspberry Pi Pico + TinyUSB + PIO-USB \u3067\u30d3 &hellip; <a href=\"https:\/\/drroot.page\/wp\/?p=400\">\u7d9a\u304d\u3092\u8aad\u3080 <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,2],"tags":[],"class_list":["post-400","post","type-post","status-publish","format-standard","hentry","category-it","category-2"],"_links":{"self":[{"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=\/wp\/v2\/posts\/400","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=400"}],"version-history":[{"count":1,"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=\/wp\/v2\/posts\/400\/revisions"}],"predecessor-version":[{"id":401,"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=\/wp\/v2\/posts\/400\/revisions\/401"}],"wp:attachment":[{"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=400"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=400"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/drroot.page\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=400"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}