spinach Postat Iunie 24, 2008 Partajează Postat Iunie 24, 2008 Salutam cu respect,Se poate programa MC in regim de functionare , cu alimentare ? Adica sa nu decuplam nimic si sa putem programa ; cum o vad eu: pornim programarea , se opereste activitatea de la MC , se reprogrameaza , se reseteaza si apoi porneste in conditiile date in cod. Care ar fi legaturile si schema folosita ? Link spre comentariu
bogdan_ Postat Iunie 25, 2008 Partajează Postat Iunie 25, 2008 ce fel de uC?functie de model, poate poti pune un bootloader. Link spre comentariu
spinach Postat Iunie 25, 2008 Autor Partajează Postat Iunie 25, 2008 AtMega 32-16PU Link spre comentariu
bogdan_ Postat Iunie 25, 2008 Partajează Postat Iunie 25, 2008 pai poti pune un bootloader in el si sa downloadezi programul in uC pe seriala. vezi de exemplu: http://www.microsyl.com/ si acolo mega load. Link spre comentariu
wingless Postat Iunie 25, 2008 Partajează Postat Iunie 25, 2008 Sau chiar si fara BootLoader poti programa mc-ul in mod ISP (in system programming) In cazul asta iti trebuie un circuit extern un programator care poate fi simplu daca vrei sa legi programatorul la PC prin interfata seriala/paralela sau are o schema mai complicata si mai multe variante daca vrei sa legi programatorul pe port USB Trebuie sa ai o mufa prevazuta pe cablaj la mufa aceea cuplezi programatorul Cand dai comanda de programare programatorul reseteaza MCul deci ii opreste activitatea il programeaza si apoi lasa liber semnalul de reset si mc-ul isi reincepe activitatea. Nu trebuie oprita alimentarea nu trebuie scos integratul etc etc Cred ca orioce Atmel din familia AVR suporta ISP tot ce trebuie sa faci este sa ai acea mufa care s conecteaza la 6 pini ai integratului (2 pini alimentare 1 pin reset 1 pin ceas (SCK) 1 pin data_in 1 pin data_out ) Pe foaia de catalog pinii sunt VCC GND RESET SCK MOSI MISO Programul pe care il poti folosi pentru a descarca codul de pe calculator in integrat poate fi de exemplu PonyProg uite aici pagina wweb unde gasesti si niste sc heme electrice pt programator http://www.lancos.com/prog.html Bafta si spor Link spre comentariu
Vizitator Postat Iunie 25, 2008 Partajează Postat Iunie 25, 2008 Ce vrei tu nu se poate! In timp ce merge echipamentul tu vrei sa-i schimbi creierul?@#!! :smt021 Link spre comentariu
bogdan_ Postat Iunie 26, 2008 Partajează Postat Iunie 26, 2008 cum sa nu se poata....? eu fac asta mereu(cu bootloader).trebuie doar avut grija ca ceea ce comanda uC sa fie adus intro stare incat vreo comanda parazita sa nu strice ceva(de exemplu vreun reset sau ceva).daca folosesti un bootloader, poti avea de exemplu un semnal(sau un cod primit) care va trimite microcontrollerul catre adresa bootloaderului, asta dupa ce a aranjat perifericele. Link spre comentariu
wingless Postat Iunie 26, 2008 Partajează Postat Iunie 26, 2008 Subscriu, se poate sigur si eu fac asta:)Atentie mc-ul este tinut in starea de reset atunci cand programezi ISP. Cand progr cu bootloader nu cred ca e tinut in starea de reset. In starea de reset toti pinii sunt in stare de impedanta inalta HighZdeci daca aveti nevoie de iesiri digitale spre alte module asigurati-va ca aveti rezistente implicite pull-up / down dupa cum e cazul. Asta ca sa nu porneasca motoare, glitch-uri la servouri and stuff In rest no problem :)By the way unele mc-uri alea care suporta bootloader defapt suporta o instructiune cu care isi pot scrie singure memoria de program in timp ce merg. Deci se poate scrie un soft care se auto-configureaza si isi schimba buclele de decizie conditiile din bucle etc in functie de stimuli ... se autoprogrameaza ) Pana aici s-a ajuns sa poata mc-ul sa isi modifice singur programul:D (deasta e recomandata folosirea modulului de BrownOut de pe integrat sa il reseteze cand scade tensiunea sub cea minima de alimentare sa nu sara in stari ciudate sa inceapa sa execute instrucuini aiurea de ex sa isi modifice programul )Bafta cu programarea Link spre comentariu
spinach Postat Iunie 27, 2008 Autor Partajează Postat Iunie 27, 2008 Am citit ce ati scris , dar inca sint nelamurit , astfel: -varianta 1 de programare , fara a fi scos din placa dar cu alimentare decuplata (adica cuplam cu + , Gnd , Miso,mosi, r ,stk de la programator -varianta 2 ar fi sa folosim sursa de lucru din aplicatie , sa cuplam GND , miso, mosi ,r ,stk de la programator , sa avem ceva suplimentar in soft ;Am inteles bine ? -in ambele variante sa presupunem ca folosin intrarile respective pentru altceva ; cum le izolam ? rezistente , diode , ??? pentru ca semnalele de programare sa nu le depreciem ? Link spre comentariu
wingless Postat Iunie 29, 2008 Partajează Postat Iunie 29, 2008 Pentru varianta 1 de programare se poate folosi si alimentarea existenta deja fara problemeDaca pinii respectivi ii folosesti pentru a comunica cu un alt modul poti folosi intrarea ChipSelect a acelui modul pentru a-l dezactiva. De exemplu legi intrarea chipSelect cu resetul procesorului => cand procesorul va fi in reset chip_select al integratul;ui cu care comunica mc sa fie dezactivat asta depinde daca cghip select ete cu logica negata sau nuDaca pe pinii respectivi cuplezi butoane e bine ca butonul apasat sa nu cupleze direct masa la pinul mc-ului ci sa limitezi curentul printr-o rezistenta in serie cu pinul de semnal al butonului astfel incat sa poata si altii sa foloseasca pinul mc-ului. Trebuie dimensionate rezistoarele astefl incat divizoarele rezistive rezultate sa mentina semnalul in 0...0.3V pt 0 logic si 3...5V pt 1 logic valorile exact pentru praguri sunt in datasheetul mc-uluiCea mai eleganta solutie ar fi sa folosesti drivere de bus tristated pe care le poti dezactiva atunci cand mc-ul este in reset si astfel sa lasi bus-ul format din cele 3 linii sck miso mosi pt varianta 1 respectiv rxd txd pt varianta2 de programare. Din nou spun in varianta 2 cred ca mc-ul nu este in reset din moment ce executa un program(boot-loader-ul)Sunt multe vorbe e mai simplu decat pare :)Bafta Link spre comentariu
danzup Postat Iunie 30, 2008 Partajează Postat Iunie 30, 2008 Am citit ce ati scris , dar inca sint nelamurit , astfel: -varianta 1 de programare , fara a fi scos din placa dar cu alimentare decuplata (adica cuplam cu + , Gnd , Miso,mosi, r ,stk de la programator -varianta 2 ar fi sa folosim sursa de lucru din aplicatie , sa cuplam GND , miso, mosi ,r ,stk de la programator , sa avem ceva suplimentar in soft ;Am inteles bine ? -in ambele variante sa presupunem ca folosin intrarile respective pentru altceva ; cum le izolam ? rezistente , diode , ??? pentru ca semnalele de programare sa nu le depreciem ?Eu le programez intotdeauna in placa de aplicatie cu sursa pe care functioneaza ! (NU izolez nimic niciodata , doar deconectez daca am ceva sensibil pe iesire .)Pai asta e ideea programarii in sistem ( ! ) : il programezi acolo unde il folosesti , fara sa izolezi nimic ! Link spre comentariu
Vizitator Postat Iunie 30, 2008 Partajează Postat Iunie 30, 2008 ...Se poate programa MC in regim de functionare , cu alimentare ? Adica sa nu decuplam nimic si sa putem programa...In timp ce utilajul/masinaria/aparatul este in regim de functionare (in productie) nu poti sa-i schimbi firmware-ul. Pe perioada cat tu schimbi firmware-ul acel aparat este mort, nu isi mai indeplineste functia. Daca cineva stie vreo familie de microcontrollere la care firmware-ul sa fie "hot swapable" il rog sa-mi spuna si mie. Bineinteles ca se poate reprograma un microcontroller fara a fi scos de pe placa si fara sa-i tai alimentarea, dar asta este cu totul alta poveste, se cheama in circuit programming, si nu inseamna in regim de functionare. Majoritatea uC dar nu toate au facilitatea asta. Ca sa te lamuresti cum se face, ce si unde se leaga, citeste foaia de catalog de la microcontroller-ul respectiv pentru ca poate sa difere in functie de familia din care face parte. Link spre comentariu
deep-blue Postat Iulie 5, 2008 Partajează Postat Iulie 5, 2008 Depinde foarte mult de la caz la caz. Uneori poti lega cele 6 fire direct alteori trebuie sa le decuplezi (jumperi ?). Cel mai bine e sa fii prevazator cand proiectezi circuitul si sa nu legi iesirile altor circuite pe pinii de ICSP. Eu mi-am facut un obicei de a pune mufa ICSP inca de la inceputul proiectului (chiar si daca programam o singura data circuitul). Oricum ai face, ieisi in mai toate cazurile mai ieftin decat daca pui soclu la controler. Nici varianta cu bootloader nu e de neglijat. Doar ca daca se intampla ceva poti oricand sa te bazezi pe ICSP. Link spre comentariu
deep-blue Postat Iulie 5, 2008 Partajează Postat Iulie 5, 2008 Cel mai bine e cu poze ;). Link spre comentariu
Vizitator Paul Nadejde Postat Iulie 21, 2008 Partajează Postat Iulie 21, 2008 Am citit ce ati scris , dar inca sint nelamurit , astfel: -varianta 1 de programare , fara a fi scos din placa dar cu alimentare decuplata (adica cuplam cu + , Gnd , Miso,mosi, r ,stk de la programator -varianta 2 ar fi sa folosim sursa de lucru din aplicatie , sa cuplam GND , miso, mosi ,r ,stk de la programator , sa avem ceva suplimentar in soft ;Am inteles bine ? -in ambele variante sa presupunem ca folosin intrarile respective pentru altceva ; cum le izolam ? rezistente , diode , ??? pentru ca semnalele de programare sa nu le depreciem ?Nu ca ar fi bai da' se vede ca esti virgin la ISP. Asa ca ia' si downloadeaza BASCOM-ul, il gasesti tu pe net si apoi la Help au o sectiune supported programmers. Iti dau aia mura in gura, desi tre' sa fii atent la scheme, parca la unele era cam varza. DT006 (Sample electronic programmer) se cheama cablul, doua mufe, sarma si niste rezistente. Vezi ca nu prea lucreaza cu ceas mai mare de 8MHz (dai o bere). A, asta e unul din cele mai folosite cabluri pentru astea de la atmel. Merge cam cu toate programatoarele (softurile adica). 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