Sicherlich haben es unzählige Mikrocontroller-Entwicklungsboards mit USB-Anschluss auf die Projects and Tutorials Seiten von Electroschematics geschafft. Obwohl es heutzutage wirklich einfach ist, eigene Entwicklungsboards mit USB-Schnittstelle zu bauen, ist es viel einfacher, diese Art von Boards einfach fertig zu kaufen, mit integrierten Treibern. In diesem Artikel geht es nicht um Mikrocontroller-Entwicklungsboards, sondern um das ATtiny85 USB Mini Development Board von Digispark ™!
Auf dem Digispark läuft der „micronucleus tiny85“ Bootloader Version 1.02, ein Open-Source-Projekt: ursprünglich von Bluebie geschrieben: . Der Bootloader ist der Code, der auf dem Digispark vorprogrammiert ist und es ihm ermöglicht, als USB-Gerät zu fungieren, so dass er von der Arduino IDE programmiert werden kann (der Digispark verwendet die Arduino IDE 1.6.5+).
Verwandte Produkte: Development Kits und Tools
Merkmale des Digispark/Digispark-kompatiblen ATtiny85 USB-Mini-Entwicklungsboards
Das ATtiny85-basierte Mini-Entwicklungsboard ähnelt dem Arduino, ist aber günstiger und kleiner (natürlich etwas weniger leistungsfähig). Mit einer ganzen Reihe von Shields zur Funktionserweiterung und der Möglichkeit, die bekannte Arduino IDE zu verwenden, ist dieses Board ein großartiger Einstieg in die Mikrocontroller-Elektronik.
- Unterstützung für die Arduino IDE 1.0+ (OSX/Win/Linux)
- Stromversorgung über USB oder externe Quelle
- Onboard 5V-Regler
- Eingebauter-in USB
- 6 I/O Pins
- 8k Flash Speicher (ca. 6k nach Bootloader)
- I2C und SPI (vis USI)
- PWM auf 3 Pins (mehr möglich mit Software PWM)
- ADC auf 4 Pins
- Power LED und Test/Status LED
Normalerweise wird dieses Board komplett montiert mit vorgebranntemgebrannten Bootloader ausgeliefert. Da der Bootloader bereits gebrannt ist, beginnt die LED auf der Platine beim Einschalten zu blinken, aber Sie müssen den entsprechenden Treiber vor der ersten Programmierung installieren. Weitere Details sind hier zu finden: http://digistump.com/wiki/digispark/tutorials/connecting
(Digispark-kompatibles ATtiny85 USB Mini Development Board)
Schaltungsbeschreibung des Digispark-/Digispark-.Kompatibles ATtiny85 USB Mini Development Board
(Schaltplan des ATtiny85 USB Mini Development Board)
Hauptschnittstelle des Boards ist der USB MICRO Anschluss. Das Board kann über diese USB-Schnittstelle oder über eine geeignete externe Quelle über den 3-poligen Anschluss J2 (5V/GND/VIN) mit Strom versorgt werden. Der 5V Onboard-Spannungsregler ist um U1 (78L05) herum aufgebaut. D1 ist die Power-LED und D2 ist die Test-/Status-LED. Die Dioden D3-D5 sind für den vollständigen Schutz der USB-Schnittstelle vorgesehen. D3 ist eine gewöhnliche Schottky-Diode, und die übrigen (D4-D5) sind 36-V-Zenerdioden. IC1 (ATtiny85) schließlich ist das Master-Gehirn des Mini-Entwicklungsboards. Insgesamt (6) E/A-Pins von IC1 (P0-P5) sind über den 6-poligen Anschluss J1 verfügbar. Die Pinbelegung des Steckers J1 ist unten dargestellt:
* Beachten Sie, dass von diesen 6 Anschlüssen 2 (4&5) nur für USB reserviert sind, wenn Ihr Programm aktiv über USB kommuniziert. Ansonsten können Sie alle 6 Anschlüsse nutzen, auch wenn Sie über USB programmieren!
Der ATtiny 85 ist ein stromsparender CMOS 8-Bit Mikrocontroller, der auf der AVR Enhanced RISC Architektur basiert. Durch die Ausführung leistungsfähiger Befehle in einem einzigen Taktzyklus erreicht der ATtiny 85 einen Durchsatz von annähernd 1 MIPS pro MHz, wodurch der Systementwickler den Stromverbrauch gegenüber der Verarbeitungsgeschwindigkeit optimieren kann. Der Attiny 85 bietet 8K Bytes systemintern programmierbaren Flash, 128/256/512 Bytes EEPROM, 256 Bytes SRAM, 6 Allzweck-E/A-Leitungen, 32 Allzweck-Arbeitsregister, einen 8-Bit-Timer/Counter mit Vergleichsmodi, einen 8-Bit-Hochgeschwindigkeits-Timer/Counter, eine universelle serielle Schnittstelle, interne und externe Interrupts, einen 4-Kanal-10-Bit-ADC, einen programmierbaren Watchdog-Timer mit internem Oszillator und drei per Software wählbare Stromsparmodi. Port B ist ein bidirektionaler 6-Bit-E/A-Port mit internen Pull-up-Widerständen (für jedes Bit ausgewählt). Die Ausgangspuffer von Port B haben symmetrische Treibereigenschaften mit hoher Sink- und Source-Fähigkeit. Als Eingänge sind die Pins von Port B, die von außen nach unten gezogen werden, Stromquellen, wenn die Pull-up-Widerstände aktiviert sind. Die Pins von Port B sind dreistufig, wenn eine Reset-Bedingung aktiv wird, auch wenn die Uhr nicht läuft. Darüber hinaus dient Port B auch den Funktionen verschiedener Sonderfunktionen des ATtiny 85. Der Reset-Pin (Pin 1) kann auch als (schwacher) I/O-Pin verwendet werden.
ATtiny mit USB Boot Loader: Tipps &Tricks für Heimwerker
- Diejenigen, die ein Entwicklungsboard wie dieses bauen und nach Anwendungen suchen, die über USB ohne ein externes Programmiergerät hinzugefügt werden können, schien V-USB die offensichtliche Wahl zu sein, um USB zum ATtiny85 hinzuzufügen. Allerdings gibt es einige Herausforderungen bei der Erstellung eines Bootloaders für den ATtiny85. Werfen Sie einen Blick auf diesen Artikel: http://www.embedded-creations.com/projects/attiny85-usb-bootloader-overview
- V-USB ist ein Projekt der Firma Objective Development Software GmbH, um eine grundlegende USB-Unterstützung in jeden Mikrocontroller zu bringen. Und das Beste daran: Es ist Open Source. Der Code ist vollständig unter der GPL verfügbar. Es ist ein sehr gut dokumentiertes Projekt und es gibt ein gutes Forum. Kurz gesagt, V-USB ist eine reine Software-Implementierung eines Low-Speed-USB-Geräts für Atmels AVR®-Mikrocontroller. Damit ist es möglich, USB-Hardware mit fast jedem AVR®-Mikrocontroller zu bauen, ohne dass ein zusätzlicher Chip benötigt wird. Read more: https://www.obdev.at/products/vusb/index-de.html
- Hier finden Sie eine gut geschriebene Anfängeranleitung zur erweiterten Programmierung von ATtinys mit Digispark: https://digistump.com/wiki/digispark/tutorials/programming