Sari la conținut
ELFORUM - Forumul electronistilor

Atmel AT89C2051


paul

Postări Recomandate

  • Răspunsuri 28
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • paul

    16

  • mitescu

    7

  • nicu_stef

    4

  • pisoiu

    1

Top autori în acest subiect

Am incercat sa assamblez, deocamdata fisierul originaj "laufschr.asm", cu "Pro-Studio 6.04" descarcat de la http://www.Batronix.com, si imi da eroarea asta (Eroare.jpg). Daca incerc sa modific acel (-1),cred ca nu va mai functiona programul cum trebe.

AVR Studio de la Atmel su are suport pt. AT89C2051, sau nu stiu eu?

Rau e sa fi prost!

Link spre comentariu

Pai , registrul B are 8 biti. Daca valoarea MODULE-1 este mai mare decat 255/8 atunci este normal sa-ti dea eroare.Presupun ca ai pus mai multe module (ce "arunca" valoarea de mai sus peste 255). Solutia este sa faci counterul pe doi octeti (din ram) eventual sa lucrezi cu registrii alternativi. Am mai spus :"Totusi daca vrei sa realizezi ceva trebuie sa si constientizezi ceea ce faci". Nu se poate sa vrei sa faci modificari fara sa stii ceea ce faci. Nu vreau sa fiu rau, dar mi-am amintit o replica dint-un film:"Nu se poate sa ingenunchezi in mijlocul autostrazii si sa scapi cu viata."Asa ca (totusi) trebuie sa studiezi prg-ul si sa faci adaptarile corespunzatoare. Nu spune nimeni ca este usor, dar tot ca o replica dintr-un film spune:"Ce nu te omoara te intareste"Incearca si vezi logica programului, dupa care, vezi ce trebuie sa modifici ( counterul de module, stack-ul de la buffer etc..) ca sa te incadrezi in cerinte.Pentru probleme punctuale (fixe) , oricand !!Mult succes !

Link spre comentariu

Aveti perfecta dreptate.Dar eu am assamblat fisierul ORIGINAL, dat de realizator, fara sa fac nici o modificare. Logic vorbind ar fi trebuit sa iasa bine. Tocmai pentru ca stiu ca nu ma pricep la programare, nici nu am incercat sa fac modificarea programului, incercind sa rezolv problema "hardware". Nici in ruptul capului nu inteleg de ce face figura cu opritul. Daca pe celui de al doilea uC il reserez, o porneste din nou. Primul (care are oscilatorul cu quartz merge perfect). Am "lins" toata documentatia (referitoare la oscilator) data de producator si nu am gasit nimic in neregula.Pacat ca restul mi-a reusit foarte bine, inclusiv reprogramare de la distanta cu un "modem" pe 433 MHz, realizat de mine.Oricun, VA MULTUMESC!

Link spre comentariu

hai salut!am aruncat o geana la batronix, compilatorul este C, in principiu ar trebui sa stie si asembler dar nu se stie,am gasit pe google fisierul asm de care zici, la site-ul indicat nu am reusit sa dau de el.ideea era ca acum ceva ani am folosit 8051 si aveam un compilator antic de la metalink (asm51.exe sub 60k dimensiune),compilat cu el zice '0 errors', daca vrei ti-l trimit pe mail,ruleaza sub dos si e de prin 94.sau cauti un compilaror mai modern pt familia 8051.

Link spre comentariu

asm-ul pare identic,bin-ul iese putin mai mic, cu 3 octeti.prima diferenta:daca te uiti in listing la linia 94 este un apel la adresa 027F, in bin-ul tau apelul este pt adr 0281, si rutina apelata este acolo.mai sap maine.baftaideegaseste o discheta de boot win9x sau dos, ai nevoie doar de command.com pe earulezi asm51 direct din dischetaPS: in asm am adaugat o linie cu definitiile pt port, registri etc $mod32

Link spre comentariu

am fost curios si am sapat,bin-urile sunt identice, codul iese putin mai mic pt ca un compilator respecta o instructiune de salt relativ iar celalalt o transforma in salt absolut (care e pe 3 octeti si nu pe 2).face asta de doua oride unde ai luat MAX7219? ai dat 8EUR pe bucata?

Link spre comentariu

MAX-urile se pot procura de la Capodimonte.

http://www.capodimonte.ro/catalog.php (au si reclama pe forum).

Se mai pot procura si de la Comet http://www.comet.srl.ro/main/index.html dar timpul de livrare este ceva mai mare.

Sunt cam scumpe, este adevarat, dar nu ai nevoie de alte componente pentru a comanda matricea de led-uri.

 

Nu stiu ce naiba sa mai fac cu afisajele mele?

Incerc, dar deocamdata nu prea reusesc, sa adaun la sfirsitul programului o instructiune de reset-are a microcontrolerului.

Daca dupa ce ruleaza textul, stocat in Eeprom, ii dau un Reset (hardware) reporneste din nou si afiseaza iar fara probleme textul pina la capat dar se opreste iar. Este vorba doar de al diolea afijaj. Primul care are oscilatorul cu quartz, functioneaza normal.

Link spre comentariu

Am incercat sa assamblez fisierul original "laufschr.asm" cu Asm51, dar mie imi da 50 error. Poate ca nu am facu ceva bine?Am mers in directorul "Asm51" (c:\asm51) si am scris comanda: "asm51 laufschr". A facut treaba dar mia dat 50 de erori?

Link spre comentariu

AM REUSIT !!! sa gasesc "hiba". Eepromul din al doilea afisaj sa modificat (partea proasta e ca nu stiu DE CE?). Nestiind ce sa mai fac, am zis sa schimb Eeprom-urile intre ele. SURPRIZA !!! , primul afisaj a inceput sa faca figurile pe care le facea al doilea. Am reprogramat Eepromul cu acelas text care este stocat si in al doilea si acuma totul e OK!.Al doilea microcontroler ruleaza cu semnalul de tact primit da la primul prin intermediul celor doua buffere 74LS04. Am sa-l las sa functioneze continu pina miine sa vedem cum va fi cu sincronizarea.Va tin la curent.

Link spre comentariu

este vina mea pt cele 50 de erori,pentru acest compilator trebuie adaugat fisierul cu definitiile porturilor, bitii din porturi, registrii etc-este un fisier separat mod31 sau mod32 -trebuie inclus in asm la inceputul programului cu comanda $mod31 sau32daca te uiti in asm.ul de la mine este imediat sub caseta de inceputfisierul mod32 am uitat sa-l pun in zip, drept pentru care o sa-l pun acumsucces in continuare

Link spre comentariu

Multumesc pt. ajutor. Asa merge bine. Oricum vreau sa incerc sa modific programul ca sa pot afisa si caractere romanesti. Sa vedem ce o sa iasa?Am lasat afisajele sa functioneze incontinu pina azi si nu a aparut nici un pic de desincronizare (lucrind cu aceasi frecventa de tact, teoretic nici nu avea cum sa se desincronizeve). Dar de multe ori teoria e una iar "praftica" alta.Merci mult, inca o data !

Link spre comentariu

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 cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări