ATTiny85 als USB Eingabegerät - AZ-Delivery

Ciao e benvenuto al nostro post sul blog di oggi.

 

Coloro che siedono sul PC sanno molto il problema: ci sono una varietà di programmi, e ogni programma offre una varietà di scorciatoie da tastiera. Grazie alle scorciatoie da tastiera, le funzioni utilizzate di frequente dovrebbero essere più veloci da eseguire.

Questo funziona abbastanza bene anche per le cose di tutti i giorni come "copia" e "incolla", ma ci sono anche scorciatoie da tastiera che richiedono un po 'più di acrobazie delle dita, o combinazioni che vengono raramente utilizzate, e quindi rapidamente dimenticate.

Ora ci sono ATTiny85 la possibilità di utilizzare un microcontrollore come dispositivo di input USB. Così il modulo può inviare comandi da tastiera che ho impostato sul mio PC - per esempio, quando si preme un pulsante.

Quindi voglio ottenere alcuni pulsanti MOLTO robusti per eseguire alcune scorciatoie da tastiera con il mio pugno (come ad esempio Alt-F4 per chiudere un programma). Inoltre, ho un vecchio pulsante del piede da una tastiera - ideale per attivare "push-to-talk".

Chiunque usi le istruzioni EBook ad ATTiny85 è certamente consapevole del più grande ostacolo del progetto:

Il piccolo modulo non funziona esattamente come si è abituati da un nano o Uno. Dopo aver collegato, il modulo entra in modalità di programmazione solo per pochi secondi. Durante questo periodo, il codice può essere caricato.

In primo luogo, è necessario assicurarsi che il nostro modulo viene riconosciuto e visualizzato in Gestione periferiche di Windows. Per fare questo, premiamo il tasto Windows e R per "run" (non sarebbe bello avere un pulsante in più per esso?), e nella finestra "Esegui" inseriamo il comando "devmgmt.msc" a "Open:" (non sarebbe bello se questo farebbe questo a una macro?).

Ora, quando il modulo è collegato, ci dovrebbe essere una voce "libusb-win32 dispositivi" con la voce "Digispark Bootloader".

 

Se il modulo viene visualizzato come "Periferica sconosciuta", assicurarsi che siano installati i driver più recenti. Questi possono essere trovati a: https://github.com/digistump/DigistumpArduino/releases/download/1.6.7/Digistump.Drivers.zip

Assicurati inoltre che il link per il modulo Digistump sia stato aggiunto in "File" -> "Preferenze" per "URL aggiuntivi di Gestione Consigli di amministrazione" (http://digistump.com/package_digistump_index.json).

Ora possiamo controllare tramite il gestore del consiglio di amministrazione se il pacchetto per "Digistump AVR Boards by Digistump" è installato o, se necessario, reinstallare:

 

Passiamo ora all'accumulo. Io uso un semplice pulsante, e collegare GND a GND, e S a uno dei 6 pin dell'ATTiny. Naturalmente, è possibile selezionare più pulsanti o altri sensori a volontà.

I 6 pin ci offrono le seguenti opzioni:

Tutti i pin possono essere utilizzati come I/O digitali.
Pin 0 x I2C SDA, PWM 
Pin 1 x PWM 
Pin 2 x I2C SCK, Analog In
Pin 3 x Analogico In (utilizzato anche come USB quando collegato tramite USB)
Pin 4 x PWM, analogico (utilizzato anche come USB quando connesso tramite USB)
Pin 5 - Analog In

 

Come esempio di questo post, ho scritto il seguente schizzo:

 

 

#include "DigiKeyboard.h"
Int buttonPin = 0; Qui il pulsante è collegato

Vuoto Installazione() {   PinMode (Modalità pin)(buttonPin, Input);   digitalWrite (Scrittura digitale)(buttonPin, alto);
}

Vuoto Ciclo() {   DigiTastiera.sendKeyStroke (invioKeyStroke)(0);   Se (digitalRead (Lettura digitale)(buttonPin) == Basso){     DigiTastiera.sendKeyStroke (invioKeyStroke)(KEY_R , MOD_GUI_LEFT); Combinazione vittorie e azioni     DigiTastiera.Ritardo(50); Attendere un breve periodo di tempo     DigiTastiera.println("devmgmt.msc"); Gestione dispositivi di chiamata     DigiTastiera.Ritardo(1000);   }
}

Ora posso aprire Gestione dispositivi in Windows con il semplice tocco di un pulsante.

Naturalmente, ci sono innumerevoli modi per usarlo in pratica. Ad esempio, è possibile utilizzare i pulsanti del piede per passare da un programma all'altro o per salvare una scena di gioco eccezionale utilizzando shadowplay. Gli streamer dal vivo possono comodamente creare un pannello di controllo a più pulsanti per passare da una scena all'altra o disattivare il microfono.

 

Spero che il contributo di oggi vi abbia portato nuove idee e augurate a tutti un bel fine settimana.

Il tuo Markus Neumann

 

 

 

 

 

 

Projekte für anfänger

7 commenti

Knusi

Knusi

Guten Tag. Ich bin ein wenig spät, ich weis. Ich werde es mal ausprobieren, klingt nach Spass.

Hier noch ein paar Tips:
Windows key + R for “run” (wouldn’t it be nice to have an extra button for it?)
Ja, den gibt es, in Windows 10 kann man die Windowstaste kurz drücken und dann den Befehl, wie bei “run” direkt eingeben.

enter the command “devmgmt.msc” at “Open:” (wouldn’t it be great if this would do this to a macro?).
Ja auch das geht mit Windows 10, schneller: rechtsklick auf das Startmenu und es öffnet sich ein Menu mit allem was der Admin so braucht.

Bernd Albrecht

Bernd Albrecht

@ Daniel:
Zunächst meine Frage: Haben Sie alles nachgemacht und ausprobiert, was dort beschrieben ist. Insbesondere die Frage, ob der Treiber für ATTiny 85 Digistump mit https://github.com/digistump/DigistumpArduino/releases/download/1.6.7/Digistump.Drivers.zip schon installiert ist und die Arduino IDE das Board bereits kennt (“Datei” → “Voreinstellungen” bei “Zusätzliche Boardverwalter-URLs”, der Link für das Digistump Modul hinzugefügt wurde (http://digistump.com/package_digistump_index.json).
Haben Sie sich das eBook zum ATTiny angeschaut?
Was haben Sie an dem Sketch nicht verstanden? Mit der Zeile
DigiKeyboard.println(“devmgmt.msc”);
wird Text einschließlich gesendet.
Tragen Sie hier einfach „&“ zwischen den Klammern ein.
Die Besonderheit beim ATTiny ist, dass der Micro Controller erst eingesteckt wird, wenn die Arduino IDE beim Programm upload nach dem Kompilieren dazu auffordert.

Daniel

Daniel

Hallo
möchte den attini85 als usb Tastertur programmieren sodass ich mit einem & Zeichen einem Programm das & Zeichen als mute Befehl zuweisen kann können sie mir dafür die codezeilen schicken bin Anfänger auf dem gebiet vielen dank im vorraus.

bernard

bernard

impossible to buy ebook in english for atiny85
!!!
only deutsh and italiano

MarkusO

MarkusO

Hallo!
Diese Anleitung habe ich befolgt, auch die eures eBook. Digistump-Treiber etc. installiert … nur der Attiny85 wird nicht erkannt. Woran könnte es liegen? Mein Win7 arbeitet mit allen Arduino-kompatiblen Boards gut zusammen.
Danke für einen Hinweis.
Markus

Markus Neumann

Markus Neumann

Hallo RalfK,
Vielen Dank für den Hinweis.
Das eBook finden Sie unter https://www.az-delivery.de/products/digispark-kostenfreies-e-book.
Ich habe im Beitrag einen Link zum eBook hinzugefügt.

RalfK

RalfK

Wo finde ich die Doku dazu? (Es heist: Wer der Anleitung in unserem eBook zum ATTiny85 gefolgt ist…)

Lascia un commento

Tutti i commenti vengono moderati prima della pubblicazione