VHODNO-IZHODNE ENOTE
Ta poglavje predstavlja osnovne vhodno-izhodne (V/I) enote mikrokrmilnikov, s posebnim poudarkom na mikrokrmilniku ATmega328P, ki je vgrajen v razvojno ploščo Arduino UNO. ATmega328P omogoča tri skupine I/O vrat (angl.: port: PORTB, PORTC in PORTD). Vse te enote in njihove priključke lahko uporabljamo kot vhodne funkcije ali pa kot izhodno. Če priključek uporabljamo kot vhod, to pomeni, da lahko s tem priključkom odčitamo napetostni potencial, ki je na tem priključku. Lahko si predstavljamo, da v tem primeru tak priključek uporabljamo kot volt-meter. V kolikor želimo napetostni potencial na priključku krmiliti (t.j. programsko nastaviti), moramo priključek nastaviti na izhodno funkcijo. To funkcionalnost lahko nastavimo v registru DDRx, v Arduino IDE okolju pa s funkcijo pinMode(5, OUTPUT) (če gre za priključek številka 3 in izhodno funkcijo). Za natančne tehnične podrobnosti so zanesljivi viri podatkov ATmega328P in dokumentacija Arduina [@ATmega328P_Datasheet_2016]. Bolj natančna shem V/I priključka je prikazana na [@fig:Atmega328_IOpin_ctrl].
{#fig:Atmega328_IOpin_ctrl}
Izhodne enote
Pregledeali in v SimulIDE smo naredili nekaj primerov
- Arduino UNO pinout - ATmega328
- izhodne enote (primer blink)
- nastavitev z registri (PORTB = 0b00100000) , DDRD… PINB
-
največji tok (source, sink)
- primer uporabe s 7-segmentnim LED displayem (CA, CC)
Uporaba DAC-a
- primer… ESP32
-
analogWrite(11, 123) - za Arduino UNO
- … PWM -> RC člen -> sledilnik napetosti -> tranzistor kot emitorski sledilnik.
PWM
- krmiljenje moči na LED
- za krmiljenje MOTORJA potrebujemo -> TR
- induktivna bremena potrebujejo diodo proti napajanju,
Viri in literatura