Zapewne, niezliczone płytki rozwojowe mikrokontrolerów wyposażone w złącze USB trafiły na strony projektów i tutoriali Electroschematics. Chociaż w dzisiejszych czasach naprawdę łatwo jest zbudować własną płytkę rozwojową z interfejsem USB, znacznie łatwiej jest po prostu kupić tego typu płytki gotowe, z wbudowanymi sterownikami. Ten artykuł nie będzie traktował o płytkach rozwojowych z mikrokontrolerami, zamiast tego przedstawimy płytkę ATtiny85 USB Mini Development Board od Digispark ™!
W Digispark działa bootloader „micronucleus tiny85” w wersji 1.02, projekt open source: oryginalnie napisany przez Bluebie: . Bootloader to kod, który jest wstępnie zaprogramowany na Twoim Digisparku i pozwala mu działać jako urządzenie USB, dzięki czemu może być programowany przez Arduino IDE (Digispark używa Arduino IDE 1.6.5+).
Powiązane produkty: Development Kits and Tools
Features of the Digispark/Digispark-Compatible ATtiny85 USB Mini Development Board
Płytka rozwojowa oparta na ATtiny85 jest podobna do Arduino, ale tańsza i mniejsza (oczywiście nieco mniej wydajna). Dzięki całej masie shieldów rozszerzających funkcjonalność i możliwości korzystania z dobrze znanego Arduino IDE, płytka ta jest świetnym sposobem na rozpoczęcie przygody z elektroniką mikrokontrolerów.
- Wsparcie dla Arduino IDE 1.0+ (OSX/Win/Linux)
- Zasilanie przez USB lub zewnętrzne źródło
- Pokładowy regulator 5V
- Wbudowany-w USB
- 6 pinów I/O
- 8k pamięci Flash (około 6k po bootloaderze)
- I2C i SPI (vis USI)
- PWM na 3 pinach (więcej możliwości z programowym PWM)
- ADC na 4 pinach
- Dioda LED zasilania i dioda LED Test/Status
Zazwyczaj ta płyta jest dostarczana w pełni zmontowana z wypalonym bootloaderem.wypalonym bootloaderem. Ponieważ bootloader jest już wypalony, diody LED zaczną migać po włączeniu zasilania, ale musisz zainstalować odpowiedni sterownik przed pierwszym programowaniem. Więcej szczegółów dostępnych tutaj: http://digistump.com/wiki/digispark/tutorials/connecting
(Digispark-Compatible ATtiny85 USB Mini Development Board)
Opis układu Digispark/Digispark-.Compatible ATtiny85 USB Mini Development Board
(Circuit Diagram of the ATtiny85 USB Mini Development Board)
Głównym interfejsem płytki jest złącze USB MICRO. Płytka może być zasilana z tego interfejsu USB lub z odpowiedniego zewnętrznego źródła poprzez 3-pinowe złącze J2 (5V/GND/VIN). Wbudowany regulator napięcia 5V jest zbudowany wokół U1 (78L05). D1 jest diodą LED zasilania, a D2 jest diodą LED testu/stanu. Diody D3-D5 są dodane dla całkowitej ochrony interfejsu USB. D3 to zwykła dioda Schottky’ego, a pozostałe (D4-D5) to 36V diody zenera. Wreszcie IC1 (ATtiny85) jest głównym mózgiem mini płytki rozwojowej. Łącznie (6) pinów I/O układu IC1 (P0-P5) jest dostępnych poprzez 6-pinowe złącze J1. Przypisanie pinów złącza J1 jest pokazane poniżej:
* Zauważ, że z tych 6 połączeń, 2 (4&5) są zarezerwowane dla USB tylko wtedy, gdy twój program aktywnie komunikuje się przez USB. W przeciwnym razie możesz użyć wszystkich 6, nawet jeśli programujesz przez USB!
Attiny 85 jest 8-bitowym mikrokontrolerem CMOS o niskim poborze mocy, opartym na ulepszonej architekturze RISC AVR. Wykonując wydajne instrukcje w pojedynczym cyklu zegara, ATtiny 85 osiąga przepustowość zbliżoną do 1 MIPS na MHz, pozwalając projektantowi systemu na optymalizację zużycia energii w stosunku do szybkości przetwarzania. Attiny 85 oferuje 8 tys. bajtów programowalnej pamięci Flash, 128/256/512 bajtów EEPROM, 256 bajtów SRAM, 6 linii I/O ogólnego przeznaczenia, 32 rejestry robocze ogólnego przeznaczenia, jeden 8-bitowy timer/licznik z trybami porównawczymi, jeden 8-bitowy szybki timer/licznik, uniwersalny interfejs szeregowy, wewnętrzne i zewnętrzne przerwania, 4-kanałowy, 10-bitowy przetwornik ADC, programowalny Watchdog Timer z wewnętrznym oscylatorem oraz trzy wybierane programowo tryby oszczędzania energii. Port B jest 6-bitowym dwukierunkowym portem I/O z wewnętrznymi rezystorami podciągającymi (wybieranymi dla każdego bitu). Bufory wyjściowe Portu B mają symetryczną charakterystykę wysterowania z wysoką zdolnością pochłaniania i źródłem. Jako wejścia, piny Portu B, które są zewnętrznie podciągnięte do niskiego poziomu, będą źródłem prądu, jeśli rezystory podciągające są aktywowane. Piny Portu B są trójstanowe, gdy stan resetowania staje się aktywny, nawet jeśli zegar nie jest uruchomiony. Ponadto, Port B służy również do obsługi różnych funkcji specjalnych ATtiny 85. Pin reset (pin 1) może być również używany jako (słaby) pin I/O.
ATtiny z USB Boot Loader: Tips & Tricks for DIYers
- DIYers budujący płytkę rozwojową podobną do tej, i szukający aplikacji, które można dodać przez USB bez zewnętrznego programatora, V-USB wydawał się oczywistym wyborem dla dodania USB do ATtiny85. Jednakże istnieją pewne wyzwania związane z tworzeniem bootloadera dla ATtiny85. Rzuć okiem na ten artykuł: http://www.embedded-creations.com/projects/attiny85-usb-bootloader-overview
- V-USB jest projektem firmy Objective Development Software GmbH, mającym na celu wprowadzenie podstawowej obsługi USB do dowolnego mikrokontrolera. A najlepsze jest to, że jest to opensource. Kod jest w pełni dostępny na licencji GPL. Jest to bardzo dobrze udokumentowany projekt i ma dobre forum. W skrócie, V-USB jest programową implementacją urządzenia USB o niskiej prędkości dla mikrokontrolerów AVR® firmy Atmel, umożliwiając zbudowanie sprzętu USB z prawie każdym mikrokontrolerem AVR®, nie wymagając żadnego dodatkowego układu. Czytaj więcej: https://www.obdev.at/products/vusb/index-de.html
- Tutaj można znaleźć dobrze napisany przewodnik dla początkujących dotyczący rozszerzonego programowania ATtinys z Digisparkiem: https://digistump.com/wiki/digispark/tutorials/programming