Control Surface main
MIDI Control Surface library for Arduino
Loading...
Searching...
No Matches
USBMIDI_Adafruit_TinyUSB.hpp
Go to the documentation of this file.
2#include <Settings/NamespaceSettings.hpp>
3
4#include <Adafruit_TinyUSB.h>
5
7
10 void begin() {
11#if defined(ARDUINO_ARCH_MBED) && defined(ARDUINO_ARCH_RP2040)
12 // Manual begin() is required on core without built-in support for TinyUSB such as mbed rp2040
13 TinyUSB_Device_Init(0);
14#endif
15 backend.begin();
16 }
18 MIDIUSBPacket_t packet {};
19 if (TinyUSBDevice.mounted())
20 backend.readPacket(packet.data);
21 return packet;
22 }
23 void write(MIDIUSBPacket_t packet) {
24 if (TinyUSBDevice.mounted())
25 backend.writePacket(packet.data);
26 }
27 void sendNow() {
28 if (TinyUSBDevice.mounted())
29 backend.flush();
30 }
31 bool preferImmediateSend() { return false; }
32
33 Adafruit_USBD_MIDI backend;
34};
35
#define END_CS_NAMESPACE
#define BEGIN_CS_NAMESPACE
T data[N]
Definition Array.hpp:33