paul Posted December 18, 2005 Share Posted December 18, 2005 Poate cineva sa ma lamureasca cum pot sa comand doua AT89C2051 cu un singur oscilator de 11,0592 MHz ?. Link to comment
mitescu Posted December 18, 2005 Share Posted December 18, 2005 Pai , ai acolo XTAL1 si XTAL2 care au urmatoarele functiuni:Xtal1 -Osc INXtal2 - Osc OUTDaca ai oscilator extern le ataci la Xtal1Daca il pui pe unul sa oscileze (Q intre Xtal1 si Xtal2), legi Xtal2 de la cel ce joaca rolul de oscilator , la Xtal1 la cel caruia ii trebuie osc. Link to comment
paul Posted December 18, 2005 Author Share Posted December 18, 2005 Multumesc pentru sfat.Am sa incerc. Link to comment
mitescu Posted December 19, 2005 Share Posted December 19, 2005 Am uitat sa-ti atrag atentia asupra un fapt:Daca utilizezi un microcontroler ca oscilator si iei semnalul de pe Xtal2 ptr celalat in Xtal1, ai grija ca traseul cu care duci semnalul "sa nu treaca pe la Paris sau Londra", vei avea probleme. Cat mai scurt si fara "zorzoane" Link to comment
paul Posted December 21, 2005 Author Share Posted December 21, 2005 Partea proasta este ca distanta dintre cele doua procesoare trebe neaparat sa fi de 1,5m !!!. Totusi am sa incerc cele sugerate de dvs. (am sa incerc sa utilizez unul sau doua "buffere", unul linga "Master CPU" iar celalalt linga "Slave CPU"). Dar numai dupa craciun. Va doresc din suflet un " CRACIUN FERICIT si un AN NOU MULT MAI BUN CA CEL CE SE VA TERMINA IN CURIND" !!!!!! Link to comment
pisoiu Posted December 21, 2005 Share Posted December 21, 2005 Oscilatoarele din procesoare sunt destul de sensibile, si daca mergi cu un traseu asa de lung mai mult ca sigur ca nu o sa iti functioneze. Incarcarea capacitiva care iti rezulta dintr-o conexiune pe o asemenea distanta o sa iti opreasca oscilatorul. Sa nu mai vorbim de imunitatea la zgomote induse din exterior si de faptul ca daca nu folosesti conexiuni ecranate, un cablu de genul asta o sa se comporte ca si o antena. De ce nu folosesti cate un cuartz pentru fiecare procesor? Din cate stiu eu, un cuartz e extrem de ieftin, mai ales valoarea asta a ta, care e pe toate gardurile. Orice artificiu te va costa mai mult (cabluri, buffere, etc...)/pisoiu Link to comment
paul Posted December 21, 2005 Author Share Posted December 21, 2005 Nu ar fi nici o problema sa utilizez doua crystale. Din pacate nu sunt sigur ca cele doua procesoare vor functiona sincron pe timp indelungat.Daca sunt comandate cu un singur oscilator, sincronizarea este asigurata. Link to comment
mitescu Posted December 21, 2005 Share Posted December 21, 2005 Fii sigur ca sincronismul nu iese din faptul ca folosesti alcelasi oscilator. Sunt o gramada de alte chestii care impiedica sincronizarea la reset. Ce te sfatui eu este ca in cazul in care ai comunicatie intre ele , sa faci sincronizarea soft. Asta cu ceasul este putin cam ...nelalocul ei. Singurul avantaj posibil din utilizrea unui singur oscilator este economia de un Quartz - vezi ce spunea pisoiu-.Daca nu ai comunicatie intre ele, trebuie sa aloci doua semnale (pinout-uri) pentru sincronismAcum eu nu stiu despre ce aplicatie este vorba, asa ca , ceea ce am spus este relativ si foarte general. Daca, in schimb ai probleme serioase, in cazul in care explici despre ce e vorba poate te mai ajutam.Succes si tie ,La multi ani !! Link to comment
mitescu Posted December 24, 2005 Share Posted December 24, 2005 Si pentru AVR-isti , un : Link to comment
paul Posted January 15, 2006 Author Share Posted January 15, 2006 Am incercat asa cum ati sugerat, dar a aparut o problama la care nu m-am gindit. In primul rind, pentru cine vrea sa-mi de o mina de ajutor, este vorba de un afisaj cu led-uri, realizat cu AT89C2051. Adresa site-ului unde poate fi gasit este: http://www.woe.de.vu/ poate intereseaza si pe alt cineva. Montajul merge frumos, este realizat cu componente destul de accesibile, dar are un mare dezavantaj : numarul maxim de matrice ce poate fi utilizat este de 11. Si chiar asa este, am testat. Partea proasta este ca eu am nevoie de 22 de matrici (exact dublu), iar modificarea programului MA DEPASESTE, din pacate. Si atunci am incercat sa fac "o smecherie". Programez deodata ambele EEprom-uri (merge sigur, am incercat) iar uC-urile separat dar cu acelasi program si la pornirea panourilor tin resetat al doilea uC pina cind semnalul ajunge la ultima coloana a primului afisaj. ACESTA ESTE MOTIVUL PENTRU CARE AM INTREBAT CUM SE POT COMANDA SINCTRON DOUA MICROCONTROLERE. Este adevarat ca se pot utiliza doua quart-uri. Am fost absolut sigur ca in timp vor aparea desincronizari intre cele doua afisaje (si asa este, am testat). Daca cele doua uC lucreaza cu acelasi semnal de tact, desincronizarea este imposibila, cel putin asa cred eu, pentru ca nu am reusit sa testez. Am facut conexiunea inter cele doua uC ca in schema atasata. La pornire totul este "OK". Ambele EEprom-uri avind acelasi program si cele doua uC functionind cu aceasi frecventa de tact, totul este foarte bine si frumos pina se termina mesajul. ACUMA "AM DAT CU BITA IN BALTA". Prinul afisaj incepe ca ruleze din nou prugramul si incepe sa afiseze textul stocat in EEpron, dar al doilea nu mai afiseaza nimic. Daca si al doilea uC are oscilator cu quart, totul merge bine dar dupa 5 ore de functionare deja se poate sesiza desincronizarea. Distanta dintre cele doua controlere este acuma de max. 10 cm. Banuiesc ca aceasta problema se intimpla din acuza softului dar nu stiu unde sa umblu ???. Link to comment
paul Posted January 15, 2006 Author Share Posted January 15, 2006 Acesta este programul in format".asm". Link to comment
mitescu Posted January 16, 2006 Share Posted January 16, 2006 Am vazut schema si am citit asm-ul. Singurele limitari pe care le ai sunt viteza (ceea ce nu este esential, pentru ca poti pune un quartz de 24M) si RAM-ul disponibil.Transmisia catre buffere (max-uri)este o transmisie standard SPI. Nu trebuie decat sa aloci memorie mai multa si sa faci transmisia pe cati digiti doresti. La alocarea memoriei se poate face un artificiu.MODULE equ 11 se poate dubla prin urmatoarea metoda: Pe masura ce transmiti (deci golesti ramul) poti converti urmatoarele caractere in zonele eliberate. Strobarea (incarcarea latch-urilor) facandu-se paralel nu apar fenomene neplacute (manjeli suprapuneri etc...).In concluzie nu este necesara utilizarea mai multor MC-uri , ajunge unul. Si asa cred ca cu unul MC-ul mai mult sta decat activeaza cu folos. Link to comment
paul Posted January 16, 2006 Author Share Posted January 16, 2006 In primul rind va multumesc Dle Mitescu ptentru bunavointa dvs.Am studiat si eu programul si am observat acel "11".Pot sa modific si sa reasamblez programul. Sa inteleg ca modificarea lui "11" in "22" sau "44" inseamna ca pot utiliza atitea matrice?Ce intelegeti dvs. prin "Pe masura ce transmiti (deci golesti ramul) poti converti urmatoarele caractere in zonele eliberate." ?, Asta inseamna ca trebe modificat ceva in program ?.Cu regret, va reamintesc ca programarea nu este punctul meu forte, din contra. Cu partea "hardware" ma mai descurc, lucrez destul de bine in Orcad dar in cea ce priveste programarea ....Va multumesc ! Link to comment
mitescu Posted January 16, 2006 Share Posted January 16, 2006 Nu neaparat este multiplu de 11Totusi daca vrei sa realizezi ceva trebuie sa si constientizezi ceea ce faci.Prin "eliberarea" ramului am inteles: RAM-ul este ocupat cu conversia caracterelor de la ascii la binar( ledurile de aprins) pe fiecare linie. Cand faci send pe linia SPI se si indexeaza caracterul de convertit si transmis. Faptul se concretizeaza in "golirea" (neutilizarea) locatiei anterioare, si deci ea poate fi utilizata la stocarea unui alt set de conversie (neasteptand terminarea sirului). Dar asta numai in cazul utilizarii RAM-ului.In ceea ce priveste viteza: daca ai prea multe caractere de transmis, efectul ar fi ca afisorul incepe sa "palpaie". Se ridica frecventa de la ceas la 24MHz, binenteles cu modificarea parametrilor de la UART, astfel incat comunicatia sa nu fie afectata.Si apropo de regrete, nimeni nu a stiut de la inceput totul, concluzie >> totul are un inceput. Depinde de fiecare.Mult succes !! Link to comment
Guest kor98 Posted January 16, 2006 Share Posted January 16, 2006 vezi dk trans se face ascr se pote urk la 56 lit Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now