Fórum témák
» Több friss téma |
Azt hiszem a hiba nem a kódban volt, hanem az eepromban. Kezdetben 0xFF az értéke minden bájtnak. Átírtam 0-ra és most jó.
Mar ne is haragudj, de a program nem az elkepzelesunk, hanem az utasitasaink szerint mukodik. Amit irtal, az eloszor kiolvassa a float erteket (az eefloat valami uj tipus?) majd modositja, es visszairja. Ezutan kijelzi a modositott erteket. Ebbol nem tudod meg mi tortent az eeprom irasakor. Ugye ugy szoktuk, hogy programozaskor inicializaljuk az EEPROM tartalmat is. Nalad ez nem tortent meg, tehat a kiolvasott float erteke nem hasznosithato. Mellesleg ez a float tarolasi mod uzemkepes, en is szoktam hasznalni. Probald meg a programodat az MPLAB szimulatorjaval vegignezni, es ott latni fogod mi tortenik.
Nagyon szépen köszönöm. Holnap kipróbálom.
Köszi, de már megoldottam. Működik. Amúgy meg ez csak egy példaprogram volt.
Sziasztok, én most egy embert keresnék, aki segítene nekem leellenőrözni egy NYÁK-ot, amin egy PIC van, pár meghajtó IC vel, szerintem a panel jó, de örülnék annak , ha valaki ezt megerősítené.
Köszi!
Sziasztok! 18F es szériánál a ha bankváltásra van szükség, elegendő csak a BSR regisztert írogatni, vagy kötelező használni az Access, és Banked jelzéseket az utasítások után? Esetleg elmagyarázná nekem valaki, hogy melyiket mikor kell/érdemes használni? 16F es szériánál megy a lapozás, de 18F en nem próbáltam még, csak most szükség lenne rá... Köszi! (18F4550)
Az Access cimzesi modnal figyelmen kivul hagyja a BSR regisztert, es igy nem kell azt beallitani pl ha PORTx / LATx / TRISx stb (tehat a SFR-ekhez) akarsz hozza ferni. Aoznkivul a 0-s lap also felehez is hozza fersz mindenhonnan barhogy is van a BSR allitva. Ezt a lapot arra szokas hasznalni, hogy:
1. Megszakitasbol hozza lehet ferni a terulethez anelkul, hogy a BSR-t piszkalni kellene, ezaltal, hogy a BSR-t el kellene menteni a tobbi kontextus informacioval 2. A leggyakrabban hasznalt valtozokat is ide lehet tarolni, hogy nem kell lapozgatni ezek eleresehez 3. Nehanyan atmeneti tarolonak is hasznaljak -- tehat a lapozgatos memoriabol MOVFF-el atmozgatjak ide az adatot ameddig sok szamitast kell elvegezni es a legvegen vissza mozgatjak. Ez hasonlo, mintha regiszter alapu architekturaval dolgozna az ember
Köszi, egyébként LCD menü szöveg táblázatokat szeretnék letárolgatni csak kicsi a hely az access bank részben, mivel a bootloader a felét lefoglalja... Tehát ha elhelyezem a táblázatot egy másik memórialapon, akkor ugrás elött, csak a BSR-t beállítom és kész? (assemblyben programozok)
Access vagy Banked választása azt mondja meg, hogy az adott utasítás az ACCESS BANK-ok, vagy a BSR-rel kiválasztott lapot használja.
A BSR beállítása pedig arra szolgál, hogy a sok memórialap közül kijelölje azt, amelyikre a Banked utótagú utasítások vonatkoznak.
Nem tudom mit ertesz ugras elott, de kezdem azt hinni a program memoriara gondolsz most. Az access es BSR az adat memoriara (RAM) vonatkozik. Na mindegy, ha csak egyetlen bank kell neked, plusz az access terulet, akkor eleg a program elejen egyszer beallitani a BSR-t...
Köszönöm! Így már világos!
Es miert a RAM-ban tarolod, miert nem a programmemoriaban? Siman hozzafersz a TBLRD+ utasitassal, ennel egyszerubb megoldas valoszinuleg nem is letezik...
Beallitod a tablazat kezdocimet 24 biten es kesz. Irsz ra egy makrot es annyi.
Szia!
Ezek a szövegek, táblázatok változnak? Ha nem, akkor célszerűbb a program memóriában tárolni őket, az adatokat pedig a tblrd utasítással kiolvasni és aztán átadni egy karakter kííró rutinnak. Így csak azt kell RAM -ban tárolni, melyik táblázatot kell használni a táblázat elemének kíírásakor.
Sziasztok! Egy kis segítségre lenne szükségem. Fel kellene programoznom egy 16F84A PIC-et.
A WinPic Programot használnám erre a célra. Építettem egy egyszerű JDM-es PIC égetőt ami működik is.A kód adott így azzal nem kellett vesződnöm.Fel is tudom programozni vele a PIC-et viszont ahhoz,hogy az áramkör megfelelően működjön amibe beépítem, állítólag 4MHz-es órajelet kell beállítanom a WinPic-ben. Ezt hol tudom beállítani? Ha marhaságot kérdeztem akkor bocs, abszolút kezdő vagyok PIC ügyben. Válaszokat előre is köszönöm! Üdv: Jostee
A Configban XT az oszcillator beallitas. Ezzel a 4 MHz kvarchoz hasznalhato a PIC.
Köszönöm a gyors válaszod és a segítséged!
Üdv
Sziasztok!
Tudna valaki segíteni hogy MPLAB alatt a "Message[305]" hibakód mitől van? Fordítás után (helyett... ) kapom ezt az üzenetet. Tehát a kód le sem fordul. Egy 2 programlapos F648A val szenvedek. Köszi
Ha az assemblertől kapod, akkor nem hibaüzenet, hanem figyelmeztetés. A címzés s bitje nincs definiálva, tehát az alapértelmezést használja.
A hozzászólás módosítva: Szept 4, 2012
Szia!
Error - hibajelzés és nem keletkezik HEX állomány. Message - Üzenet, felhívja valamire a figyelmet, ami kérdéses lehet. Készül HEX állomány. 305 Using default destination of 1 (file). Ha nem tetszik, hogy felsoroja, az ErrorLevel -305 -tel kikapcsolhatod, az ErrorLevel +305 -tel pedig újra be lehet kapcsolni. A hozzászólás módosítva: Szept 4, 2012
Szerinted létezik Error 305 hibakód?
Ezt ugye menyusnak írtad? A hozzászólás módosítva: Szept 4, 2012
Szia!
Igen, Menyusnak szántam. Bocsánat.
Szia!
Azt kezdtem magyarázni, hogy a szám előtti szöveget (is) értelmezni kell. Ha súlyos hiba történt fordítás közben, akkor a szöveg Errror .... Ha csak figyelmeztetés akkor Warning, ha csak üzenet, akkor Message... Tehát: Message[305] Using default destination of 1 (file). Megfejtése: Egy utasításnál nem adtad meg, hova kerüljön az eredmény. Ez lehet, hogy nem okoz hibát, de az is lehet, hogy hibás működéshez vezet. A hex ettől még elkészült. pl.: movf Valtozo Ha csak a STATUS,Z -t vizsgálod utána, akkor jó, ha az értékét szeretted volna felhasználni, akkor hibás. A hibakezelés egy kalap alatt kezeli a három típust: ld. ErrorLevel. MpLab / MpAsm
Sziasztok. Az érdekelne, ha egy pic. ad-jével mérném a saját tápfeszültségét, hogyan teszem? Mi a referencia?
A legtöbb (talán mindegyik?) AD referenciájaként kiválasztható belső 600mV referencia. Ilyenkor egy 1:10 feszültségosztót használhatsz a bemenetre.
A hozzászólás módosítva: Szept 4, 2012
Ugye a Vref nem lehet kisebb mint a merendo fesz, tehat csak azt kapod, hogy a teljes tapnal kapsz 0x3FF erteket az AD leolvasasrol. Persze van megoldas, ha pl a Vref=2,56 V. es az AD bemenetre pedig VDD/2 feszt kapcsolsz egy osztoval. Igy egy osztas 10 mV lesz. Igy az AD 1000 ertekenel 5 volt a tap. A Vref olcson eloallithato egy TL431 IC-vel, es egy ellenallas valamint egy poti segitsegeve, amit a beallitaskor kalibralsz. Viszont figyelni kell arra, hogy a VDD nem lehet 5,12 voltnal nagyobb.
A másik lehetőség: a referencia feszültség megmérése, a tápfeszhez viszonyítva. Ehhez nem kell osztó... A PICCOLO projektben[/url] például az Analóg perifériák c. lapon a 2. listában mutatok erre példát PIC18F14K50 esetére (3,3 V-os tápfeszre).
A linket most nem tudom betenni, mert a fórummotor mindig a webáruházba akar linket generálni! A hozzászólás módosítva: Szept 4, 2012
Köszönöm. a 3,3v-ra gondoltam.
Sziasztok
Egy olyan kérdésem lenne hogy lehetséges e, hogy a pic-et tudom programozni de nem csinálja azt amit szeretnék??? Ugyan ilyen pic ugyan ugy felprogramozva pedig müködik (12f629). Ja és még annyit hogy már teszteltem és akkor még müködött csak elfüstölt a kimeneteken 1-1 fet-et. Tudom kezdö kérdés de nagyon érdekel hogy most vegyek ujjat vagy csak a panelommal van baj. Felteszek egy kapcsolást rolla hogyan is van bekötve. |
Bejelentkezés
Hirdetés |