sofian Postat Octombrie 6, 2010 Autor Partajează Postat Octombrie 6, 2010 Scrie mai jos programul care trebuie sa il folosestiFree Windows Programming Software Winpic800 V.3.59incarci in program fisierul hex si dai programarehexul ar trebui sa contina tot ce trebuie sa se programeze corect(fuse,si config) Link spre comentariu
matzah Postat Octombrie 6, 2010 Partajează Postat Octombrie 6, 2010 deci nu schimb eu fuse-urile manual sau alte minuni inainte de programare. Mentionez ca cipul meu va fi default, luat de nou. Link spre comentariu
matzah Postat Octombrie 8, 2010 Partajează Postat Octombrie 8, 2010 n-am reusit programarea in winpic800 cu setarile default. Am suspectat probleme la brown out voltage. Doar asa a reusit programarea 100%. Inainte dadea eroare cand incerca sa programeze regiunea "config". In final insa oricum vad ca nu merge... am primit pana la urma glcd-ul raystar pe care vreau sa-l folosesc pentru : http://www.semifluid.com/?p=15insa scriind pe cip soft-ul fara bootloader (cu succes) n-am reusit sa afisez absolut nimic pe display. Inteleg ca proiectul a fost scris pentru ks0108 deci compatibil fiind cu controlerul folosit de raystar, ar fi trebuit sa mearga, chipurile. Display-ul are generator de tensiuni negative, am masurat, am reusit setarea contrastului, am gasit si in datasheet. PIC-ul a fost programat ok, folosind winpic800 si programatorul asta: http://www.foxdelta.com/products/art2003.htmsingura modificare facuta de mine in winpic a fost sa cresc vbor de la 2v la 4.8 volti. si sa dezactivez brown out reset. Doar asa am reusit programarea completa ok. Altfel primeam o eroare cand incerca sa scrie zona de "config" a softului. ideea e ca.. per total nu face nimic, nu stiu daca e de la microcontroller sau display (lipseste vreo librarie ceva). Maine am sa incerc sa masor pe osciloscop ce "iese" din pic. Sa fi trebuit programat altfel sau as mai avea nevoie de librarii diferite pt display? Link spre comentariu
matzah Postat Octombrie 8, 2010 Partajează Postat Octombrie 8, 2010 ce am mai incercat intre timp... sa inteleg ca atunci cand deschid un hex in winpic800, acesta va modifica singur setting-urile pentru ce e nevoie respectivului program. Implicit acei fuses sau zona config. eh, daca pur si simplu deschid hex-ul si scriu primesc urmatoarea eroare: error writting address 0x300006written : 0x0081 read :0x0085 daca sa zicem scop pic-ul si il introduc in montaj am un ecran gol. Masurand pe osciloscop, am ceva activitate pe pinii prin care comanda display-ul. Seamana cu programul SETI dar cu siguranta ce apare pe ecranul osciloscopului este semnal scos de pic si denota o oarece inteligenta. Mai mult daca incerc sa scurtcircuitez vreunul din pinii 5-6-7 ai pic-ului la masa (C1out, C2out) si alimentez asa montajul, pot vedea pe ecran textul ce trebuia afisat insa centrat prost, distorsionat etc. Daca desfac strapul de la masa al oricarui pin dintre astia am scurtcircuitat, montajul va mai merge asa cateva secunde ulterior revenind la ecranul gol. De asemeni se pare ca raspunde, masoara semnalul aplicat in intrare corect, doar ca se blocheaza ulterior, imaginea ramane fixa si nu se mai intampla nimic. De asemeni mentionez ca din pinii cristalului de 20Mhz am pus la masa 2 condensatoare de 10pf. Ar fi trebuit sa pun 22pf, ar face vreo diferenta? Link spre comentariu
Liviu M Postat Octombrie 9, 2010 Partajează Postat Octombrie 9, 2010 Din ce povestesti mai sus, in cazl in care n-ai probleme hard, PIC-ul pare incorect programat. Dupa parerea mea, punanad pinii 5 & 6 la masa activezi bucati din display (practic pui CS1 sau CS2 la masa). Ca tot ai osciloscop la dispozitite, poti verifica daca in montajul nemodificat CS1 sau CS2 (pinii 5 & 6 ai picului) isi schimba starea. Ca sa vezi daca cei 10 pF ajung (eu cred ca ajung, altfel nu fonctiona nimic), poti vedea daca oscilatorul... oscileaza (vezi ce se intampla pe pinii 9 & 10 ai picului). Link spre comentariu
matzah Postat Octombrie 9, 2010 Partajează Postat Octombrie 9, 2010 am masurat pe osciloscop si am obtinut cam asa: cs1 si cs2 isi schimba starea. Daca aliementez cu display si fara rezistente pull up catre +-ul alimentarii, am semnal dreptunghiular pe ele. Nu stiu daca e normal sau ar trebui pur si simplu sa le am comutate in 1 logic tot timpul. Masurand partea de oscilator... hmm, acum nu stiu dar tare am impresia ca ceva e putred pe acolo. Osciloscopul meu ar merge pana la 20mhz, insa tot ce vad pe ecran e o simpla linie deplasata pe alternanta pozitiva ce sta acolo la fel de frumos pe cum ar sta daca as masura o tensiune CC ordinara. Asa.. din cate stiam si eu din lumea necuvantatoarelor analogice.. un oscilator - oscileaza, ar trebui sa pot vedea asta pe ecranul osciloscopului. Noi probe cu rescrierea softului au dus in urmatorul comportament: Display-ul afiseaza aproape corect (nitel deplasat aiurea) atat textul cat si partea grafica dar doar daca alimentez in pulsuri montajul, adica aplic in pulsuri tensiunea de alimentare pana cand "nimeresc" varianta in care pe display apar ce spuneam mai pus. Ulterior, odata ce apar, informatiile stau afisate cam 3 secunde dupa care dispar si am iar un ecran gol. Suspectez ca in acest moment pic-ul se blocheaza. Am simulat in proteus schema insa a iesit la fel de interesant. Cand pornesc simularea, pe display vad niste pixeli aiurea, apoi se blocheaza executand in continuu erori gen adc conversion started before wait time has expired following previous conversion or channel change suspectez de asemeni ca asta se intampla si in cazul pic-ului in montajul real. ce nu inteleg este de ce? sunt unii ce au construit acest montaj si n-au avut problemele astea. mentionez ca am fizic varianta pic 18f2550-1/sp. problema tine de conversia a/d nu de display-ul folosit (cel putin asa cum ar zice proteus) pot programa cipul corect cu winpic si programatorul paralel folosind setarile default pe care le pune hex-ul incarcat DAR adaugand si LVP (bifez). Fara asta, winpic nu poate programa corect zona "config" de memorie. Cam asa arata optiunile folosite[attachment=1]winpic.jpg[/attachment]Am reusit sa fac in proteus, o simulare in care culmea.. montajul mergea intrucatva. Chiar daca se afiseaza relativ aiurea, intrarea merge, aparatul masoara, nu se blocheaza etc. Nu inteleg ce am facut de merge. Atasez si cele 2 variante de simulare (una merge alta nu) . Diferentele nu sunt notabile la nivel de componente (intr-una lipseste rezistenta din pinul mclr - este direct pus la plus, dar nu face diferenta). In ambele am incarcat acelasi hex. De asemeni scuzati faptul ca sunt facute cam din topor. [attachment=0]proteus.rar[/attachment] Link spre comentariu
Liviu M Postat Octombrie 9, 2010 Partajează Postat Octombrie 9, 2010 Sorry, din cod+poza cu winpic nu ma prind unde ar putea fi problema.Fisierele pentru proteus nu le pot vedea; daca le pui ca poze, incerc sa ma uit la ele. Link spre comentariu
matzah Postat Octombrie 9, 2010 Partajează Postat Octombrie 9, 2010 cred ca am descoperit problema.. eu am programat cu art2003, respectiv programatorul paralel ce foloseste low voltage programing (LVP). Problema e ca unul din pinii de date ce trimit semnal pentru lcd, este blocat dupa programare pe LVP si folosit pentru asa ceva. Implicit eu nu pot trimite semnal catre lcd prin acel pin si implicit o cauza posibila pentru problema mea. Trebuie sa incerc programare High Voltage Programing pe un port serial si sa caut o schema super simpla sa pot testa rapid teoria. Cred ca de aici deriva toata tarasenia.asa arata schema in isis (proteus). Cam asa arata display-ul in versiunea care "merge" . Desi textul din partea stanga este total aiurea si neinteligibil, partea de masurat semnal arata cat de cat inteligibil pe cat sa fie doar o eroare random. [attachment=0]Clipboard01.jpg[/attachment] Link spre comentariu
Liviu M Postat Octombrie 9, 2010 Partajează Postat Octombrie 9, 2010 Ai dreptate, daca folosesti LVP RB5 va avea functia PGM si nu mai poate fi folosit pentru altceva. Link spre comentariu
matzah Postat Octombrie 9, 2010 Partajează Postat Octombrie 9, 2010 bine macar ca mi-am dat seama de pe acum decat sa mai chinui bietul pic cu inca alte jdemii de scrieri esuate. un astfel de programator jdm ar merge pentru 18f2550? nu vad nici o problema teoretic, alimentarea o fac din sursa stabilizata separat. http://www.adelaida.ro/product_info.php?products_id=96 Link spre comentariu
Liviu M Postat Octombrie 9, 2010 Partajează Postat Octombrie 9, 2010 Nici eu n-am idee, da' am senzatia ca e "cunoscut" pe forum; cauta in topicurile cu "programator" in nume. Link spre comentariu
matzah Postat Octombrie 9, 2010 Partajează Postat Octombrie 9, 2010 pai am ajuns la el pentru ca tot pe forum am gasit cum ca s-ar putea. puiu a spus foarte clar ! 1. PIC-ul respectiv se poate programa cu programatoarele PICSTAR Plus, ICD2, ICD3, Promate II, PM3, REAL ICE2, pickit 2, pickit 3. 2. Toate aceste programatoare sunt suportate de MPLAB care este un soft free si in care se poate lucra in ASM sau C si care permite simularea. Softul este pe site-ul lui MICROCHIP. acum vine si intrebarea mea: de ce nu merge citit/scris 18F4550 cu un JDM ? pentru ca asta e AD-PIC01S. (cu driverul 2803)daca se face un soclu adaptor si se foloseste WinPic800 cred ca merge programat. chiar acum am pus un 18F2550 (4550 nu am) pe soclul existent in programator si merge scris. deci inteleg ca Stefan a scris un 2550 cu dracia celor de la adelaida, nu am inteles daca s-a scris corect si totul a fost ok. Treaba e foarte simpla. Stau in Galati. Orice programator JDM a carei schema am gasit-o fie foloseste vreun fel de buffer fie ceva mosfet-uri fie vreo alta componenta care n-o gasesc la magazin. Decat sa dau comanda de 2-3 piese mai bine iau programatorul astora, am prin cine comanda si nu voi plati curier si ma dreg asa. Link spre comentariu
unuldinei Postat Octombrie 29, 2010 Partajează Postat Octombrie 29, 2010 Treaba aici e ca nu vad un topic .. cum sa citesti un PIC . Asadar intrebare : Daca un PIC16F88 (preprogramat) imi da doar zerouri iar in DATA apar cateva locatii cu valori , aceleasi valori citite cu un JDM Programmer ,SO Win98 , ICprog si winpic800 ar putea fi protejat la citire ? Daca da , cam cum ? Sau care e directia in care sa caut felul in care sa citesc respectivul pic , va multumesc pentru orice idee buna! Mentionez ca totul e in scop pur educational , declar pe proprie persoana fizica raspunzatoare . Link spre comentariu
Vizitator CristiST Postat Octombrie 30, 2010 Partajează Postat Octombrie 30, 2010 Salut baietiGata, m-au lasat nervii, asa ca m-am hotarat sa ma fac de ras si sa intreb totusi pe cineva cu experienta PIC-urilor. Am hobby-ul asta de aproape 20 de ani si am facut pana acum sute de montaje, insa nu am mai lucrat niciodata cu microcontrolere pana acum vreo doua saptamani cand am facut un ceas cu PIC16F84 crezand ca nu-mi voi prinde urechile pe-acolo. Dar astrele mi-au fost potrivnice! Am citit toate tutorialele, forumuri si in general tot ce mi-a cazut in mana, dar degeaba. Nu reusesc sub nici o forma sa incarc in PIC-ul dusmanos un program pe care vi l-am atasat intr-un fisier word si tot acolo am pus schema ceasului, dar si a programatorului folosit. Softuri de programare am incercat si d-astea o gramada (IC-Prog, MPLAB, BASCOM AVR si inca vreo doua) dar si alte programele (Hex Editor, Flexhex) ce ar fi putut (spuneau unii) sa tranforme doc-ul ala in hex. Dar n-a vrut si pace. Nu stiu nici macar daca programatorul ala functioneaza cu IC-Prog-ul (ultimul soft folosit), cu atat mai mult cu cat in soft l-am setat drept JDM...Concret acum, rugamintea mea este sa-mi spuna cineva daca soft-ul ala este corect scris, cum sa transform doc-ul in hex, de ce setari este nevoie in IC-Prog pentru a-l incarca in PIC si bineinteles daca dracovenia de programator nu este cumva bun doar de pandativ. Deasemenea v-as mai ruga sa ma considerati tampit - atat de clar sa-mi explicati, fie pe forum fie pe mail.Multumesc inca de acum pentru ajutor si imi cer scuze pentru istoria romantata a experientei mele cu PIC-urile dusmanoase, dar e defect profesional. Sunt jurnalist. Link spre comentariu
puiu Postat Octombrie 30, 2010 Partajează Postat Octombrie 30, 2010 1. Ce programator ai folosit cu MPLAB?2. Softul tau nu este scris in ASM ci intr-un C. 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