Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Hi!
Sajna nálam nincs ilyen opció. A beolvasós trükk ok, csak mivan ha elfelejtem, meg miért kéne mindig azt is újra beírni. Ezt jól elbaltázták microchip-ék.
Lazán megoldható...hogy hogyan, azt a cikkek között megtalálod.
Hát nem csoda a telepítős sz@r... Már a példaprogramok se asm, minden C... És ez tök baromság szerintem... Lassan olyan lesz a mikrokontrolleres világ mint anno a PC-n volt hogy C64ben asm progizás és minden tuti volt. DOS se volt rossz PC-n, de jött a winfos, grafikus felület, ismétlések, átfedések C programok funkciói között, és a kutya se mondja meg hogy mi mit csinál, és főleg hol van a rejtett hiba elrejtve.... Tuti ez lesz PIC-en is. Csak az a legnagyobb baj hogy funkciójánál fogva a windows ugyan nem hibatűrő rendszer, de pl egy atomerőmű tele van pakolva mikrokontrollerekkel... És isten ments hogy rajtuk a program C-ben készült ASM legyen...
Van egy LCD kijelzom.A hatan van egy papir cimke.Ezen a cimken nagyon sok iras talalhato.A irja kb. igy>AC 162 BY1. LY8411-A(R); 08 20; D37607?????
Egyetértek!
Ezért én erősen keresem az asm32 (*.s) fájlokat, és ha találnál, vagy ha valaki talál, akkor azt nagyon szívesen venném!
Kettőt tervezek venni pénteken, ezért készülök elő.
PIC32MX360F512L-80I/PT PIC32MX320F128H-80I/PT Kénytelen vagyok váltani, mert egy gyors AD-t kell feldolgozni, valamint érdekelne mit tudnak! Vésztartaléknak veszek egy DSPIC33FJ256GP506-I/PT. (Ez így alig több 4000Ft-nál)
Azért nem olyan rossz a helyzet. Én pl előbb megtalálok egy hibát egy C programban mint asm -ben. Szerintem áttekinthetőbben lehet programozni C ben. De ismerem az asm előnyeit is, többen le is írták már. Segít a problémára fókuszálni, nem pedig azzal kell tökölni, hogy most hogy szorozzak össze két floatot. Vagy pl sztring műveletek. Szóval nem flémelni akarok, csak védem picit a C-t (mitagadás, a kedvenc programnyelvem, pc-n is)
Medve nagyon megköszönném ha küldenél egy linket. Előre is kössz!
Nekem is van pár kijelzőm. A legtöbbnek a hátulján van a papír. Sőt mindnek. És tele van írva az is kb úgy ahogy a tiéd. Van ilyen...
Esetleg valami konkrét kérdés? Látom ez volt az első hozzászólásod. De miért PICes témában kezded a pályafutásod?
Nincs baj a C-vel, az a baj, hogy az ASM32-t elfelejtették! Valahogy nem emlékeznek honnan jöttek!
Más kérdés, hogy próbálj meg C-ben órajelpontosan vezérelni egy AD 2MHz-es órajelét, fogadni és feldolgozni a csomagokat, eközben némi szinkronizációt is bedobni, két konverzió között(0,5usec)!
Nem a C-vel van a baj. Hanem a halmozott hibával. ASM-ben megírod a programot. Lefordítod, vagy jó vagy nem... DE ha van előtte egy C fordító, ami Asm-et csinál akkor jó a kérdés hogy ki hibázott? Te vagy a C fordító? Miért adnak ki mondjuk a C18-ból frissítést? Jelenleg 3.x a verziószáma... Hogy miért? Mert az 1.0 gondolom messze nem volt patent... Na akkor mi van az azzal készült programokkal? A válasz eccerű. Azok se nagyon patentek... Lesz esetleg 4.0? Akkor amit most csinálsz az se jó?
Sziasztok!
A következő problémám lenne : Van egy PicKit2 Starter kis égetőm illetve benne egy 16f690-es PIC, és szeretnék C-ben írni rá programot, tehát felraktam az MPLAB-hoz egy HI-TECH c fordítót (lite verzióban is, meg 45napos Pro vezióban is próbáltam), de hiába fordul le a megírt forráskód amikor feltöltöm a PIC-re akkor csak villannak egyet a ledek aztán semmi ... ill. ha benne van a while ciklus akkor még annyi se. A programozó amúgy biztosan jó mert Assembly-vel már használtam és úgy működik, és most is látszik hogy írja a PIC-et mégse történik semmi! Szoftveresen szimulálva is működik .. nem tudom hol lehetne elrontani? Az alábbi forrást próbáltam: #include __CONFIG(XT & WDTDIS & UNPROTECT); void main(void) { TRISC = 0b00000000; PORTC = 0b00000101; while(1) { PORTC = 0b00000101; }} Köszi előre a segítséget!!!
Nah hál istennek tárgytalan .... a Config sorból hiányzott az MCLRDIS .. mondjuk azt nemt tudom hogy MPLAB config bits táblát kitöltve ami felülítja ezt miért nem oldotta meg de mind1 ... megy!
Hát biztos volt már a kérdés, de mivel az az ICD2 megy sima nem megy-re több mint 500 találatot adott, ezért bátorkodom feltenni a kérdést, esetleg újra.
Mplab icd2-vel program üzemmód, release from reset, fut a progi villognak a ledek. Programot beégetem power up on wachdog off, ráadom az 5 voltot, nem megy. Kipróbáltam úgy is, hogy lehúztam menet közben az icd2 csatit (jó tudom ejnye bejnye), és rádugtam az 5V-ot és semmi. Visszadugtam az icd2-est és megy. Biztos triviális de mi a fenét felejtettem el már megint?
Nem irod, hogy hanyas PIC, de feltetelezem, hogy 16Fvalami, ott van egy PRG lab, amit foldre kell huzni a rendes mukodeshez, nem lebeghet.
Azt el sem merem kepzelni,hogy a MCLR nincs tapra huzva mondjuk egy 8.2K-val...
Mindamellett, hogy magam is megrogzott asmes bitfarago vagyok meg kell jegyezzem, hogy a koncepcio ami a magas szintu nyelvek mellett szol tobbek kozott, hogy nem kell mindig ujra tanulnod a processzort. Pl. Jol megtanultam anno a 14 bites PIC-eket, aztan 12 bitesben faragtam valamit, nem sok kulonbseg de mar zavaro, aztan a 18F 16 bites utasitas keszlete is egy kicsi kulonbseg volt. Ehhez kepest viszont az igazi 16 bites cuccok mar meroben elternek a hagyomanyos 8 bites csaladoktol, es akkor itt a 32 bites, kozben foglalkozom AVR-ekkel is mostanaban... C-ben ennyi elterest nem kell megtanulni - nyilvan vannak kulonbsegek, mas architektura, maskepp kell ezt vagy azt csinalni de alapvetoen kepes az ember elindulni egy vonalon es viszonylag keves szivassal megalkotni valamit az uj architekturan. Erre jon ra, hogy milyen sok elore elkeszitett konyvtar letezik - "ki a fenet erdekel", hogy az LCD hogy mukodik, rakapcsolom ahogy eloirjak es hasznalom az LCDinit es printf fuggveneket... Persze ez sem igaz igy, de kb ez a tendencia es valoszinuleg kevesebb befektetessel az a lib csinalja is amit neki csinalnia kell. Jomagam nem elleneznem a magas szintu nyelveket, csak ami nem megy a fejembe: MIERT C??? Ott az Ada amit kifejezetten hibat nem toleralo rendszerekben alkalmaznak - pl Airbus is ezt hasznalja csak es kizarolag es nem veletlen - emiatt pl Toulouse-ban az egyetemen az Ada oktatas az elsodleges, es C-t meg Javat meg Assembly-t csak immel-ammal oktatjak.
Ez egy 16F877-es, de régebben működött, de akkor átnézem a forrasztást
Az mlrc a tápra van kötve egy 10k-s ellenállással.
Csak valami beállítás gond lehet de vajon mi.
Ott valahol az RB4 korul (prg labnak is hivja az adatlap), azt kell direktben foldre kotni.
Olyan nincs, hogy prg alol elindul, de lekotve rola mar nem megy. Ilyenkor a programozo altal hasznalt labak valamelyikenek a jelszintje nem jo. De azert nezd meg egy leddel, hogy egyaltalan elindul-e.
Bocsanat, hogy bele illetlenkedem, de nem veletlen a PGM labra goondolsz? (avagy mas neven LVP)
Idézet: „(avagy mas neven LVP)” ....Amit illik letíltani.
Az nincs a földön, ez a Topi féle 0-tól a robotokig cikkből a tesztáramkör.
Visszatérve kicsit a PIC32-re, sokmindent kiderítettem, remélem nem bánjátok, ha megosztom.
Kemény kutató munkával(microchip oldalán van írva ) ráleltem a varázsszóra "MIPS Assembly Language". Heuréka, ez akkor egyezik a legtöbb proci asm nyelvével(32bites pentiumok stb.), és valóban. Sok találat van, csak keresni kell(google). Ebből is talán ez egyik gyöngyszem ez: - PIC32 Architecture and Programming - A C32 tartalmazza a MIPS Assemler fordítót, ezzel nincs gond, sőt C környezetben is lehet használni asm-ot, igaz még nem tudom hogyan... Hogy ez megoldódni látszik újabb gond akad, miszerint jó lenne az MPLAB szerkesztőjét rávenni, hogy oda tegye a progit, ahová én akarom. Valószínű ez is ott van a sorok között, de én sajnos még nem vagyok egy nagy angol szónok és ez még magyarul sem egyszerű, így lassan haladok. Ha netán ezt valaki jobban átlátná és megosztaná(csak nem annyival másképpen működik az előfordító, mint a többi PIC C-ben.), akkor annak örülnék. (boot terület, program terület, esetleg kezelési koncepció) Előre is köszi!
Mondom, ha le van tiltva az LVP, akkor nem érdekes hol van. Le van tiltva(konfig bitek)?
Ok, nem tudtam lekovetni az elozmenyeket, csak nem ertettem mi ez a PRG lab, azt hittem csak eliras - ugy hangzott szamomra hogy a celaramkor atmeny folyton program modba, az pedig ha VLP bit be van kapcsolva a konfigban konyen bekovetkezhet ha LVP lebeg - en erre asszocialtam.
Ha le van tiltva nem erdekes valoban... csak ha valami furcsasag van ezt azonnal ki szoktam probalni, nehogy az LVP lebegese okozzon meglepeteseket, es mit tudom en a programozo csak nem jol olvassa ki a konfig szot amibol arra kovetkeztetek az LVP OFF holott valojaban ON - neha a kezratetes modszer a legjobb
Megette a fene, ha a programozó rosszul olvas! :yes:
|
Bejelentkezés
Hirdetés |