[ Brelak @ 06.12.2011. 22:08 ] @
Postovane kolege, na jednom projektu koji radim mikrokontroler AT89S52 treba da kontrolise rad relea (12VDC) ali mi to nikako ne uspeva, jednostavno mcu kao da nema dovoljno snage. Kada umesto na port, pinove prikljucim na izlaz 74HC14 invertora, sve radi bez problema. Mikrokontroler se napaja sa 5V. Zasto se to tako desava i sta da menjam?
[ Genie_1984 @ 06.12.2011. 23:20 ] @
Verovatno uC ne može da obezbedi dovoljno struje da bi tranzistor otišao u saturaciju...
Ovde imaš objašnjeno kako da vežeš rele na uC,kao i računanje potrebnih otpornosti (u zavisnosti od karekteristika upotrebnjenog tranzistora).

Pozdrav
[ shpiki @ 06.12.2011. 23:34 ] @
Cini mi se da je max struja na pinu cca 40mA, a to je i vise nego premalo za spulnu.
Moras na izlas staviti neki "buffer" (pod znacima navoda)... Moze ovako kako si stavio, sa BJT, moze sa nekim logickim MOSFETom, moze i npr. ULN2003, itd...
[ Brelak @ 06.12.2011. 23:41 ] @
Nisam ni mislio da rele direktno napajam sa kontrolera, on i tako radi na 12VDC. Dobra je ideja sa pull-up otpornikom! Hvala!
[ Genie_1984 @ 07.12.2011. 13:59 ] @
Obrati pažnju na to da su prilikom reseta (i paljenja) svi portovi uC na logičkoj 1 (kao što piše ispod druge slike),što će izazvati da se rele aktivira tom prilikom....zbog toga se ubacuje drugi tranzistor (ima funkciju invertora)....mada to ponekad ne smeta,sve zavisi od primene (npr ako rele nakon paljenja treba da ostane uključen)...

Pozdrav
[ Brelak @ 07.12.2011. 15:33 ] @
U pravu si, to može da bude problem mada meni ne smeta. Kad god sam imao problem sa tranzistorima ja sam koristio integrisane invertore ali sada ću definitivno ovu metodu da koristim!
[ branko_g @ 07.12.2011. 21:40 ] @
8051 derivati nemaju Push-Pull izlaz nego Open-Drain sa otporom prema VCC.
Ako je izlaz logicko "1" mogu da daju struju(Source) reda µA, a ako je 0, onda mogu da "prime struju(Sink) od 10-20mA.
Pogledaj uostalom Datasheet.

Zato stavi jos jedan tranzistor i napravi Darlington.