Fórum témák
» Több friss téma |
Üdv!
Be kell állítani, hogy a board-ot a PICKit3 táplálja. A képen látható üzenet, nem hiba, csak figyelmeztet, hogy ha nem megfelelő PIC van csatlakoztatva akkor a PICKit3 más táfeszt adhat a PIC-nek és akkor az tönkremehet. Fejből most nem emlékszem, hogy az IDE-n belül hol lehet beállítani, mert azt nem igen használom. Viszont a külön programózó felületen az advanced menüpont alat találod a power settings fülön. Ennek az előhozásához be kell majd írnod a "microchip" jelszót, de ezt le is írja neked.
Köszönöm a segítséget! IDE beállítás:
1. Run > Set Project Configuration > Customize 2. Categories - PICkit 3 3. Option Categories - Power 4. Power target circuit from PICkit 3 checkbox kijelöl
Kíváncsiságból belekukkantottam a C30 leírásába. Mivel alapból (Large scalar/data model) minden változót a közeli "Near" címtartományba tesz a fordító, így deklarálásnál külön kell jelezni ha ettől eltérő igényeink vannak. Pl. a 10000 elemű 8-bites "buffer" tömb létrehozása a távoli "Far" címtartományban így történik:
char buffer[10000] __attribute__((far)); Ezenkívül persze még sok más attribútum van, amivel a változóinkat oda tesszük, ahova csak akarjuk, pl. egy konkrét címre: int gomb __attribute__((address(0x1f00))); Kis segédlet
Jajjj... elírtam!
Az alap a Small scalar/data model.
Sziasztok a watchdog-rol kérdeznék néhány dolgot, addig ok hogyha eléri az értéke a 255-öt akkor resetel de ha lefagy a programom akkor is fut a watchdog, vagy pl beteszek a programba egy 20s-os késleltetést, akkor is reset van? Szoval a programmal eggyüt fut vagy párhuzamosan a programmal? Flowban programozgatok de ez szerintem inkább ide tartozik illetve még egy kérdés, milyen parancsot kell beillesztenem c kodba hogy reseteljem a WDT számlálot?
Köszönöm: Kovács Közben megtaláltam a leírást ahol kitaglalták számomra is megfelelően igy már tiszta hogy párhuzamosan fut. A hozzászólás módosítva: Jan 16, 2014
Csak a program fut, a watchdog pedig hardveresen számlál. Igen, párhuzamosan.
Idézet: Igen. Ilyen esetben a késleltetést úgy kell megszervezni, hogy közben rendszeresen törlésre kerüljön a watchdog számlálója. „de ha lefagy a programom akkor is fut a watchdog, vagy pl beteszek a programba egy 20s-os késleltetést, akkor is reset van?”
Szia!
Ha flowcode-ban dolgozol, akkor szerintem nem kell foglalkozni a watchdog resetelésével, mert azt a program megoldja. Ha nem vagy benne próbáld ki. Elindítasz egy 20 másodperces késleltetést, és amikor végetért bekapcsolsz egy LED-et. A a flowcode reseteli a watchdog-ot akkor a LED bekapcsol.
Miért akarod Te resetelni, ha a program reseteli magától?
Na várjál, ugyanarrol beszélünk? Én a WDT számlálot szeretném saját magam resetelni hogy csak fagyáskor resetelje a PIC-et.
A WDT számlálóját törölni kell mielőtt eléri a 255-öt. Na most a flowcode (úgy emlékszem) kiszámolja, és be is illeszti a programba a WDT számláló törlést. Ha lefagy a program, nem törli a számláló értékét, eléri a 255-öt és reseteli a pic-et.
Hát ezt a hétvégén élesbe kiprobálom, azért is kérdeztem.
A WDT mihez képest számol, mennyi idő eg y lefutás pl 8NHz-en?
Köszönöm a tippeket. Megnézem mindet.
Üdv!
Sziasztok!
Egy kis segítséget szeretnék kérni ezzel a problémával kapcsolatban: http://www.hobbielektronika.hu/forum/topic_post_1565844.html#1565844 Köszönöm szépen előre is!
Sziasztok!
A 3,3V-os piceknél az 5V tolerant lábakra minden nélkül kapcsolhatok 5V-ot? Konkrétan egy TSOP1736 infra vevő jelét kötném rá, valamint egy PC tápegységet akarok kapcsolgatni vele. Bár a PC tápnál nem tudom hogy fog reagálni a táp. Elvileg alacsony szinten kapcsol be, magasan pedig ki. Nemtudom elég lesz-e neki, ha csak "elengedem" a lábat. Idézet: Igen, végtére is ezt jelenti.„A 3,3V-os piceknél az 5V tolerant lábakra minden nélkül kapcsolhatok 5V-ot?” Idézet: Én tennék oda egy felúzó ellenállást. (bár lehet, hogy a tápegység vezérlehető bemenetére már tettek...) „Elvileg alacsony szinten kapcsol be, magasan pedig ki.”
Sziasztok
Még mindig wdt problémám van, hogy tudom beállitani a WDT-t hogy nagyobb idövel számláljon?
Üdv!
A WDT-nek van egy osztója, azt kell beállítanod! Nem tudom, hogy neked milyen típusod van, de a 18F1320-ban a CONFIG2H regiszter 1-4.bit-je az, a 0. pedig a WDT-t enedélyezi.
16F690-em van és abban kellene. Egyszerüen nem találom sehol a beállitást, pedig nekem fel kéne tornásznom 1s-ig mert igy folyamatosan resetel. DS18b20 van rákötve ráadásul 2.
A hozzászólás módosítva: Jan 17, 2014
WDTCON regiszter. Amúgy pedig Google->16f690->első találat az adatlap->tartalomjegyzék->187. oldal->14.5-ös bekezdés. kb két perc volt megtalálni...
A hozzászólás módosítva: Jan 17, 2014
Az meg is van csak ezt nekem valahogy c kodba kéne tennem és betenni flowcode-ba.
Egy változónak tudsz adni értéket C-ben? Csak mert ugyan úgy kell...
ennek kéne így kinézni
De miért nem a FlowCode-os témában kérdezed ezt?
xx0x1111 <- ezt nem igazán értem? Mi ez a sok "x"? Ha azok olyan bitek, amiknek mindegy, hogy milyen értéket adsz, akkor ez így nem jó! Oda írj 0-át, ha binárisan adod meg. És ha jól tudom, akkor így kell megadni helyesen: option_reg = 0b00001111; vagy option_reg = 0x0f;
A hozzászólás módosítva: Jan 17, 2014
Azért mert feltettem a kérdést de senki nem válaszol.
Háls köszönet, müködik ahogy csak szertném.
Na! Csak össze hoztuk. Ha még ennél is hosszabb időt akarsz, akkor már a WDTCON-t is be kell állítanod.
|
Bejelentkezés
Hirdetés |