„ATtiny85“ mikrovaldiklio lustas yra prieinama ir galinga alternatyva kitiems „Arduino“ mikrovaldikliams, ypač kai norite sumažinti savo projektą. Mikroschemoje yra 8 kaiščiai, iš kurių šeši yra I / O (įskaitant atstatymą) kaiščiai ir du yra maitinimo kaiščiai. Bet kaip jį užprogramuoti, nes jis neturi USB sąsajos, kaip ir kitos mikrovaldiklių plokštės? Taigi šiame straipsnyje aš supažindinsiu jus su „ATtiny85“ programavimo procesu iš „Arduino IDE“, naudodamas „Arduino Uno“. Iš esmės mes naudosime „Arduino UNO“ kaip „ ATtiny85“ programuotoją.
Komponentai, reikalingi ATtiny85 programavimui
- „Arduino UNO“
- ATtiny85 IC
- LED
- 220 omų rezistorius
- Bandomoji Lenta
- Šuolių laidai
ATtiny85 mikrovaldiklio lustas - įvadas
„Atmel“ „ATtiny85“ yra didelio našumo, mažos galios 8 bitų mikrovaldiklis, pagrįstas išplėstine RISC architektūra. Ši mikrovaldiklio mikroschema turi 8 KB ISP „flash“ atmintį, 512B EEPROM, 512 baitų SRAM, 6 bendrosios įvesties / išvesties linijas, 32 bendrosios paskirties darbo registrus, vieną 8 bitų laikmatį / skaitiklį su palyginimo režimais, vieną 8 bitų greitą laikmatis / skaitiklis, USI, vidiniai ir išoriniai pertraukikliai, 4 kanalų 10 bitų A / D keitiklis, programuojamas budėjimo laikmatis su vidiniu osciliatoriumi, trys programinės įrangos pasirenkami energijos taupymo režimai ir derinimo „WIRE“, skirtas derinti lustą. „ATtiny85“ kištukas pateiktas žemiau:
Dauguma lusto įvesties / išvesties kaiščių turi daugiau nei vieną funkciją. Peržiūrėkite toliau pateiktą lentelę, kad sužinotumėte apie kiekvieno kaiščio „ ATtiny85“ kaiščių aprašymą.
Smeigtukas Nr. |
PIN vardas |
Smeigtuko aprašymas |
1 |
PB5 (PCINT5 / ADC0 / dW) |
PCINT5: kaiščių keitimo pertraukimas 0, šaltinis5 RESET: iš naujo nustatyti kaištį ADC0: ADC įvesties kanalas 0 dW: derinti WIRE I / O |
2 |
PB3 (PCINT3 / XTAL1 / CLKI / ADC3) |
PCINT3: kaiščių keitimo pertraukimas 0, šaltinis3 XTAL1: kristalo osciliatoriaus kaištis1 CLKI: išorinio laikrodžio įvestis ADC3: ADC 3 įvesties kanalas |
3 |
PB4 (PCINT4 / XTAL2 / CLKO / OC1B / ADC2) |
PCINT4: kaiščių keitimo pertraukimas 0, 4 šaltinis XTAL2: 2 kristalų osciliatoriaus kaištis CLKO: sistemos laikrodžio išvestis OC1B: laikmatis / skaitiklis1 palyginkite B atitikties išvestį ADC2: ADC įvesties kanalas 2 |
4 |
BND |
Įžemintas kaištis |
5 |
PB0 (MOSI / DI / SDA / AIN0 / OC0A / AREF / PCINT0) |
MOSI: SPI pagrindinių duomenų išvestis / vergo duomenų įvestis DI: USI duomenų įvestis (trijų laidų režimas) SDA: USI duomenų įvestis (dviejų laidų režimas) AIN0: Analoginis lygintuvas, teigiamas įėjimas OC0A: laikmatis / skaitiklis0 palyginkite „Match A“ išvestį AREF: išorinė analoginė nuoroda PCINT0: kaiščių keitimo pertraukimas 0, šaltinis 0 |
6 |
PB1 (MISO / D0 / AIN1 / OC0B / OC1A / PCINT1) |
MISO: SPI pagrindinių duomenų įvestis / vergo duomenų išvestis DO: USI duomenų išvestis (trijų laidų režimas) AIN1: Analoginis lygintuvas, neigiamas įėjimas OC0B: laikmatis / skaitiklis0 palyginkite B atitikties išvestį OC1A: laikmatis / skaitiklis1 palyginkite „A“ išvestį PCINT1: kaiščių keitimo pertraukimas 0, šaltinis 1 |
7 |
PB2 (SCK / USCK / SCL / ADC1 / T0 / INT0 / PCINT2) |
SCK: nuoseklaus laikrodžio įvestis USCK: „ USI Clock“ (trijų laidų režimas) SCL: „ USI Clock“ (dviejų laidų režimas) ADC1: ADC įvesties kanalas 1 T0: laikmatis / skaitiklis0 laikrodžio šaltinis INT0: išorinis pertraukimas 0 įvestis PCINT2: kaiščių keitimo pertraukimas 0, šaltinis 2 |
8 |
VCC |
Maitinimo įtampos kaištis |
1 žingsnis: „Arduino Uno“ konfigūravimas kaip IPT:
Kadangi „ATtiny85“ yra tik mikrovaldiklis, reikia užprogramuoti ISP (sistemoje programavimą). Taigi, norėdami užprogramuoti „ATtiny85“, pirmiausia turime sukonfigūruoti „Arduino Uno“ kaip ISP, kad jis veiktų kaip „ATtiny85“ programuotojas. Tam prijunkite „Arduino Uno“ prie nešiojamojo kompiuterio ir atidarykite „Arduino IDE“. Po to eikite į Failas> Pavyzdys> ArduinoISP ir įkelkite „Arduino“ ISP kodą.
2 žingsnis: „ATtiny85“ programavimo grandinės schema:
Visa „ ATtiny85“ programavimo su „Arduino Uno“ schema pateikta žemiau:
Teigiamas šviesos diodo kaištis yra prijungtas prie „ATtiny85 IC“ 0 kaiščio per 220Ω rezistorių, o GND kaištis - prie IC Visi jungtys pateikti toliau pateiktoje lentelėje:
ATtiny85 kaištis |
„Arduino Uno“ kaištis |
Vcc |
5V |
BND |
BND |
2 kaištis |
13 |
1 kaištis |
12 |
0 smeigtukas |
11 |
Atstatyti |
10 |
3 žingsnis: „ATtiny85“ programavimas naudojant „Arduino IDE“:
Norėdami užprogramuoti „ATtiny85“ su „Arduino IDE“, pirmiausia turime pridėti „ATtiny85“ palaikymą prie „Arduino IDE“. Norėdami tai padaryti, eikite į Failas> Nuostatos ir pridėkite žemiau esančią nuorodą papildomų lentų tvarkyklės URL ir spustelėkite „Gerai“.
Po to eikite į „ Tools“> „Board“> „Board Manager“ ir ieškokite „attiny“ ir įdiekite naujausią versiją.
Įdiegę ją, lentos meniu galėsite pamatyti naują įrašą pavadinimu „Attiny25 / 45/85“.
Dabar eikite į Failas > Pavyzdžiai> Pagrindai ir atidarykite „Blink“ pavyzdį.
Keiskite PIN kodą iš LED_BUILTIN į 0.
Dabar grįžkite į „ Tools“ -> „Board“ ir pasirinkite „Attiny25 / 45/85“, tada pasirinkite „ ATtiny85“ dalyje Tools> Processor.
Dabar eik į priekį ir įkelk kodą. Jei mirksi LED, prijungtas prie „Attiny85 IC“ 0 kontakto, kodas sėkmingai įkeltas.
Taip galite užprogramuoti „ ATtiny85“ mikrovaldiklio lustą naudodami „Arduino IDE“ ir „Arduino Uno“. Veikiantis vaizdo įrašas pateiktas žemiau. Jei turite klausimų, palikite juos komentarų skiltyje. Taip pat galite paskelbti savo technines užklausas elektronikos forume, kad gautumėte geresnių įžvalgų.