Brick Groove Machine 0.9.3
Firmware embarqué pour contrôleur/synthé Brick
 
Chargement...
Recherche...
Aucune correspondance
Référence du fichier usb_device.h

Interface de gestion du périphérique USB (OTG FS) — mode Device. Plus de détails...

#include "hal.h"
#include <stdbool.h>

Aller au code source de ce fichier.

Fonctions

void usb_device_start (void)
 Démarre la pile USB Device et force la ré-énumération.
 
bool usb_device_active (void)
 Indique si le périphérique USB MIDI est actif et prêt à transmettre.
 

Description détaillée

Interface de gestion du périphérique USB (OTG FS) — mode Device.

Ce module fournit une interface minimale pour contrôler la couche USB :

  • Démarrage et ré-énumération forcée du périphérique USB.
  • Vérification de l’état de disponibilité du lien USB MIDI.

Contraintes :

  • À appeler après halInit() / chSysInit().
  • Les callbacks (configuration endpoints, événements bus) sont définis dans usbcfg.c.

Documentation des fonctions

◆ usb_device_active()

bool usb_device_active ( void  )

Indique si le périphérique USB MIDI est actif et prêt à transmettre.

Renvoie
true si la couche USB MIDI est configurée et l’endpoint IN prêt, sinon false.

Indique si le périphérique USB MIDI est actif et prêt à transmettre.

Renvoie
true si la couche USB MIDI est initialisée et disponible.

◆ usb_device_start()

void usb_device_start ( void  )

Démarre la pile USB Device et force la ré-énumération.

Séquence typique implémentée côté usb_device.c :

  • usbDisconnectBus() pour forcer la reconnexion hôte,
  • temporisation courte,
  • usbStart(&USBD1, &usbcfg),
  • configuration de l’option NOVBUSSENS si nécessaire,
  • usbConnectBus() pour activer le pull-up DP.
Note
Indispensable sur certaines Nucleo où VBUS n’est pas câblé.

Démarre la pile USB Device et force la ré-énumération.

Effectue une séquence complète :

  1. Déconnexion logicielle du bus USB (simule un unplug).
  2. Délai de 1,5 s pour garantir la ré-énumération côté hôte.
  3. Démarrage du driver USBD1 avec la configuration usbcfg.
  4. Forçage du mode périphérique (désactivation de la détection VBUS).
  5. Connexion du bus (activation du pull-up DP).
Note
Cette procédure est nécessaire sur certaines cartes Nucleo où la broche VBUS (PA9) n’est pas connectée au contrôleur OTG FS.