diff options
| author | hathach <[email protected]> | 2025-02-12 11:28:16 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2025-02-12 11:28:16 +0700 |
| commit | 87adc63226a59e6c2602b1bc453ced77d44fedba (patch) | |
| tree | 1e47a80bfab09dbac47312b4242939df03ec7796 /examples/host/bare_api/src/main.c | |
| parent | b41f5eadb3143d0bfaf211d9bc84c95e5d623c29 (diff) | |
| parent | 5afcfb7522c4fd8b50512cfb277d8a3ccdbc5453 (diff) | |
Merge branch 'master' into fork/atoktoto/midihost
# Conflicts:
# hw/bsp/rp2040/family.cmake
# src/class/midi/midi.h
# src/class/midi/midi_device.c
# src/device/usbd_control.c
# src/host/hcd.h
# src/host/usbh.c
# src/host/usbh.h
Diffstat (limited to 'examples/host/bare_api/src/main.c')
| -rw-r--r-- | examples/host/bare_api/src/main.c | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/examples/host/bare_api/src/main.c b/examples/host/bare_api/src/main.c index 51cab2de0..f582f4f5a 100644 --- a/examples/host/bare_api/src/main.c +++ b/examples/host/bare_api/src/main.c @@ -1,4 +1,4 @@ -/* +/* * The MIT License (MIT) * * Copyright (c) 2019 Ha Thach (tinyusb.org) @@ -23,17 +23,14 @@ * */ -/* This example current worked and tested with following controller - * - Sony DualShock 4 [CUH-ZCT2x] VID = 0x054c, PID = 0x09cc - */ - #include <stdlib.h> #include <stdio.h> #include <string.h> -#include "bsp/board.h" +#include "bsp/board_api.h" #include "tusb.h" +#include "class/hid/hid.h" // English #define LANGUAGE_ID 0x0409 @@ -65,7 +62,15 @@ int main(void) printf("TinyUSB Bare API Example\r\n"); // init host stack on configured roothub port - tuh_init(BOARD_TUH_RHPORT); + tusb_rhport_init_t host_init = { + .role = TUSB_ROLE_HOST, + .speed = TUSB_SPEED_AUTO + }; + tusb_init(BOARD_TUH_RHPORT, &host_init); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } while (1) { @@ -410,10 +415,11 @@ static int _count_utf8_bytes(const uint16_t *buf, size_t len) { } static void print_utf16(uint16_t *temp_buf, size_t buf_len) { + if ((temp_buf[0] & 0xff) == 0) return; // empty size_t utf16_len = ((temp_buf[0] & 0xff) - 2) / sizeof(uint16_t); size_t utf8_len = (size_t) _count_utf8_bytes(temp_buf + 1, utf16_len); _convert_utf16le_to_utf8(temp_buf + 1, utf16_len, (uint8_t *) temp_buf, sizeof(uint16_t) * buf_len); ((uint8_t*) temp_buf)[utf8_len] = '\0'; - printf((char*)temp_buf); + printf("%s", (char*)temp_buf); } |
