Forum: Mikrocontroller und Digitale Elektronik Funktastatur: tinyUSBBoard + NRF24L01


von Kai M. (bitboy)


Lesenswert?

Hallo zusammen,

ich bin gerade dabei eine Funktastatur zu bauen. Da mir die Teensy 
Boards zu teuer sind, hab ich mich auf die Suche nach einer Alternative 
gemacht die günstig ist und gleichzeitig auch den Modus "Boot-Keyboard" 
unterstützt.

Gefunden hab ich dabei das tinyUSBBoard, dass auch schonmal hier 
diskutiert wurde und auf V-USB basiert.
Beitrag "Kritiken tinyUSBboard Platine"

Zum Programmieren verwende ich die Arduino IDE.

Als Bibliothek für das Funkmodul verwende ich: 
https://github.com/dparson55/NRFLite

Nun das Problem: Implementierungen eines V-USB Keyboards sehen eine 
deaktivierung von timer0 vor. Leider ist dieser bei Arduino für 
sämtliche "Zeitfunktionen" wie Delays, millis, micros verantwortlich. 
Und genau diese werden in der Lib zum steuern des Funkmoduls gebraucht.

Frage daher: Wie kann ich das am Besten lösen? Ist das Board überhaupt 
dafür geeignet oder gibt es hier eine günstige Lösung die Leichter zu 
verwenden ist?

Quellcode kann ich bei bedarf natürlich zur Verfügung stellen, es 
enthält aber im Prinzip hab ich erstmal nur Beispiele von V-USB und dem 
Empfang zusammenkopiert. Getrennt scheint es soweit zu funktionieren. 
Also wahlweise ENTWEDER Tastatur oder Funkempfang. beides gleichzeitig 
klappt wenn überhaupt mal nur kurz und sehr zufällig.

von c-hater (Gast)


Lesenswert?

Kai M. schrieb:

> Nun das Problem: Implementierungen eines V-USB Keyboards sehen eine
> deaktivierung von timer0 vor.

Tja, wenn man USB auf einem dafür eigentlich nicht geeigneten und nicht 
dafür gedachten µC in Software emulieren will, ist das naturgemäß mit 
gewissen Kompromissen verbunden...

Der Verzicht auf das Arduino-Gedöhns ist da leicht zu verschmerzen...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.