Vizitator calin17us Postat Februarie 9, 2010 Partajează Postat Februarie 9, 2010 Buna... Eu sunt incepator in acest domeniu ....dar vreau sa invat... Ditre cei care stiti mai multe ..va rog sa imi dati un sfat in legatura cu problema care o am... AM inteles ca I/O din avr am doar 20 mA si pt a aprinde un punct din matrice am nevie de 50 mA.... NU mai stiu ce sa fac....daca veti vreun sfat va rog Schita in proteus este in arhiva .... am codul acesta....: .NOLIST ; Don't list the following in the list file .INCLUDE "m8def.inc" ; Import of the file .LIST ; Switch list on again .org 0 rjmp RESET ;reset handle rjmp RESET rjmp RESET ;* Delay ;* Register variables .def T1 = r1 ;lower registers .def T2 = r2 .def temp= r16 ;higher register ;* Defines ;* Code longDelay: clr T1 ;T1 used as delay 2nd count clr T2 ;T2 used as delay 3d count delay1: dec T2 brne delay1 dec T1 brne delay1 dec temp ;temp must be preset as brne delay1 ; delay master count ;dec r3 ;brne delay1 ;dec r4 ;brne delay1 ;dec r5 ;brne delay1 ret ;* Walk 8 LEDs on PORTB back and forth, reading data from Flash memory ;* Register variables .def LEDdata = r0 ;Flash memory load register ;* Code RESET: ldi temp, low(RAMEND) ;point stack in RAM out SPL, temp ser temp out DDRB, temp ;set PORTB i/o's as outputs init: ldi ZL, LOW(tabel*2) ;set Low memory pointer ldi ZH, HIGH(tabel*2) ;set High memory pointer ;* Main program loop: lpm ;load data from Flash into r0 out PORTB, LEDdata ;set data on PORTB ldi temp, 10 rcall longDelay ;wait 10 x 49.3 msec = approx. 0.5 sec inc ZL lpm ;check data at this moment mov temp, LEDdata cpi temp, '#' ;if # reached in memory, breq init ; -> restart + reset memory rjmp loop ;flash or walk LEDs ;* Data ;* 8 + 8 bits data sits in Flash like this ;* set '#' at end for walking LEDs .cseg tabel: .db 0b00000001,0b00000010 ;data 0, 1 .db 0b00000100,0b00001000 ;data 2, 3 .db 0b00010000,0b00100000 ;data 4, 5 .db 0b01000000,'#' ;data 6, 7 Edit by ole: ai un avertisment de la mine in ceea ce priveste ceea ce scrii la sectiunea Atmel. la urmatorarea abatere vor incepe sa dispara subiectele fara avertisment! Motivul: scrie mare ATENTIE LA FORMULAREA TITLULUI!!! De ce trebuie 100 de semne de exclamare? Nu esti pe messenger. Vreau disciplina! Link spre comentariu
Laci Postat Februarie 9, 2010 Partajează Postat Februarie 9, 2010 ULN2003 este un array de tranzistoare NPN! de aia nu-ti merge, leaga COM-ul la GND si invertesti semnalele.Tot trebuie sa pui ceva rezistente de limitare de curent pentru leduri, si ca sfat pentru viitor, cand faci simulari nu pune si regulatorul ca n-are rost, pui numai ce vrei sa simulezi. Link spre comentariu
Vizitator calin17us Postat Februarie 10, 2010 Partajează Postat Februarie 10, 2010 AM pus com la gnd si tot nu am pe ieesire nika...am inversat si intrarile in uln si tot nu mereSi inca ceva nu ar trebuii sa am un semnal de intrare pe pinii 11,12,14 din uln2003Ar trebui sa am un semnal de iesire pe pinii pd4,pd5,pd6 de la atm.., eu ar trebui cred sa trimit pe un pin o valoare de 5 biti pentrua putea selecta coloana...cum fac asta...? Link spre comentariu
Laci Postat Februarie 10, 2010 Partajează Postat Februarie 10, 2010 Na bine si tu acuma, pai daca nu ai semnal de la atmega ce vrei... Link spre comentariu
Vizitator calin17us Postat Februarie 10, 2010 Partajează Postat Februarie 10, 2010 ce fel de semnal sa ii trimit...ca nu stiu.. Link spre comentariu
sofian Postat Februarie 10, 2010 Partajează Postat Februarie 10, 2010 Ca sa aprinzi o coloana pe pin1 de la hc595 trebuie sa ai +5v (1 logic)ptr asta trebuie sa incarci in registru (hc595) care coloana vrei sa o aprinzi si dupa aia sa dai in uln2003 care leduri sa se aprindadin programul ta nu vad nici o bucla de 8 bit ptr a incarca hc595,deci nu are cum sa mearga Link spre comentariu
nana Postat Februarie 14, 2010 Partajează Postat Februarie 14, 2010 Deci ai grija ca ULN e un array de darlington catre masa comuna adica in mom in care deschizi ULN acela trage prin conexiune tensiunea la masa !!! nu e array de tranzistori... asta in cazul in care vrei sa folosesti schema in aplic reala. Proteusul interpreteaza doar ca si un simplu tranzistor acel circuit dar daca tu nu ai semnale pe bazele tranz de comanda atunci nu o sa ti se parinda in veci acel afisaj. Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum