Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Próbáld meg MPLAB alatt törölni utána programozni.
Sokszor az Mplab jobb, mint a pickit2 program.
Na ez probléma, mert a MPLAB nem akarózik használni, mert 4.3V mér és panaszkodik rá
De be tetem egy új 12F629-et és ugyan az Pedig ez eredetileg teljesen üresnek kel lennie, mert új
Megkérnélek hogy próbáld meg átgondoltan megfogalmazni, és helyesen leírni a mondandód, mert a hozzászólásaidból külföldinek tűnsz, pedig nem vagy az.
Restelem de fogalmazásból nem jeleskedtem annyira az iskolában
De törekedni fogok, rá remélem sikerül Idézet: Föltehetőleg az MPLAB szerzői elolvasták az adatlapot, amelyben le van írva, hogy a törlés és az írás művelet minimum 4,5 V-os tápfeszültség mellett végezhető. (lásd 12.7 táblázat D132. sora!) Adj neki nagyobb tápfeszültséget! „MPLAB nem akarózik használni, mert 4.3V mér és panaszkodik rá”
Szia!
Az olyan típusoknál, amiben az OSCCAL és a BAND GAP értékeket a program memória vagy a konfigurációs szó tartalmazza, a hex állományt úgy töltsük a PICKit2 programozóba, hogy a kontroller már csatlakoztatva van a programozóhoz. A betöltés a kontrollerből olvassa ki ezt a két értéket. - Tedd be a 12F629 -et a programozóba, Erase. - Töltsd be a hex -et. A programozó ki szeretné olvasni a PIC-ből a Band Gap és az OSCCAL étékeket. -Ha már nincs meg a valódi érték, a Program memória legutolsó utasításába írj be 0x3400 (retlw 0) - Programozd be... Mivel a hex állomány a kódvédelmet aktivizálja, a programozás utáni ellenőrzés hibás lesz...
üdv
a kérdésem a következő lenne, két pic-el próbálkozom , még előte nem csináltam hasonlót és elakadtam. egy 16f84-es kövület és egy 16f873A I/SP -m van , 5.5 volton 9 mA -t küldök rá és nem moccan meg, feltételezem, hogy az oszciállátor lesz, de nem tudom működik-e Vdd-re megy a kraft , meg 2 db 27 pf-es kondi van az osc.-ra dobva , az mclr -re pedig megy a Vdd -ről a kraft, nem értem mér nem megy, a 16f873-masnál mind2 Vss levan földelve , megpróbáltam megmérni az osc.-kat 2 4mzh-s és egy 20-as, úgy, hogy egy kondit akartam feltölteni vele és megméri multiméterrel , hogy feltöltötte-e (áramerősség méréssel) , de nem nagy sikerrel. nem tudom ,hogy rossz osc.-ket vettem-e? , mert állítólag csak cmos/ttl szabványúak a megfelelőek :S de nem tudom azok-e , annyi van ráírva , hogy yic4.0000d0 , yic4.0000f8 , meg ez 20-al , szana szét mértem multiméterrel meg hasonlók, de nem értem mér nem tetszik neki :S a program egy példaprogram átalakítva szóval csak bekapcsol egylábat és annyi szóval .... :S ha valakinek van 5lete .... megköszönném
Szia
Sikerült a leírtak alapján megcsinálni de a OSCCAL paraméter változtatást a progi intézte De ha én szeretném ezt manuálisan csinálni akkor hogy tegyem ezt?
Helló!
Csatold a programot, amit beleégettél, kapcsolási rajzot, fényképet. Mivel égetted? Égetés tuti?
Szia!
Egy kérdés: Oszcillátorod van vagy Quartz-od? - Ha oszcillátor: Az oszcillátor kém tokja méretben megfelel egy 14 lábú IC -nek. A 14. láb a +5V, a 7. a föld, a 8. a kimenete. A 8. -os multiméterrel feszültséget mérve kb. 2.5V-ot kellene mérni. Ahhoz, hogy a 16F873A külső órajelről járjon, az oszcillátor típusát 4MHz -nél XT -re, 20MHz-nél HS -re kell állítani. Nem kellenek a kondenzátorok, az oszcillátor kimenete a OSC1 (9. láb) -ra menjen, a 10. -re nem megy semmi. - Ha Quartz: Kellenek a kondenzátorok, a kvarcot a 9. és a 10. lábak közé kell bekötni. Az oszcillátor típusát 4MHz -nél XT -re, 20MHz-nél HS -re kell állítani. Ne kapcsolj a kontrollerre csak 4.00 V és 5.00V közötti tápfeszültséget
Szia!
Ahogy írtam az ilyen (band gap értéket a configurációs szóban, az osccal értéket a programtár végén tároló) típusok esetén a legjobb megoldás, ha a hex importálása előtt csatlakoztatjuk a kontrollert, felismertetjük a típust a család kiválasztásával. Csak eztán importáljuk a programot. Az import kiolvassa az adatokat a kontrollerből. Ha így csinálojuk, a gyári adatok megmaradnak. Még egy megoldás: az első programozás előtt olvasd ki a pic tartalmát. Jegyezd fel a konfigurációs szó felső két bitjét, a programtár utolsó szavát. Ha bármi történik, ezeket az adatokat vissza fogod tudni állítani.
Köszönöm most is tanultam értékes információk
Üdvözletem mindenkinek.
Van egy robot vezérlőm PIC16F887-el, minden láb kivezetve, stb müködik. A probléma a következő: az UART-ja foglalt, mivel rajta van egy usb - ttl átalakító. Ezt nem bonthatom meg. Viszont szükségem lenne egy bluetooth-ra. Amit kinéztem, az egy ilyen bluetooth modul lenne. http://www.sparkfun.com/commerce/product_info.php?products_id=158 Ez UART-ra csatlakozik, viszont úgy oldanám meg a kommunikációt, mint ezen a forum thread-en írták http://www.microchip.com/forums/m531423-print.aspx A lényege az lenne, hogy van 1 láb amin a PIC16F887 tud generálni external interruptot, alacsony vagy magas-ra váltás esetén. És arra rákötném a BT modul Tx pinjét, és amikor jön a start bit, tulajdonképpen ahogy a forumban is volt, leprogramoznám a bitek lekérdezését, és ugyan így a küldést is. A kérdésem az lenne, hogy ez így megoldható-e? Válaszotokat előre is köszönöm.
Egy biztos, hogy megoldható olyan PIC-el is a bluetoot kezelése, amiben nincs soros port. Keress rá a szoftveres soros kommunikáció megoldásokra.
Esetleg ha tudsz keress olyan modult ami képes SPI vagy I2C adatátvitelre mert így szinte bármelyik kimeneten tudsz majd adatokat küldeni és fogadni.
Hello mindenki!
Egy kis segítségre lenne szükségem USB beállítása terén egy PIC18F4550-hez! A Microchip CDC Firmware-t szeretném használni ehhez csak annyi a probléma, hogy nem C18-on hanem SDCC-n. Találtam egy oldalt ahol le van írva, hogy hogyan lehet átkonvertálni SDCC-be a fájlokat és meg is csináltam már mindent de most elakadtam. :S A probléma az, hogy minden lefordulna gond nélkül de a következő hiba üzeneteket kapom: Idézet: „ > "sdcc.exe" -mpic16 -p18f4550 main.c message: using default linker script "C:\Program Files\gputils\lkr\18f4550.lkr" error: missing definition for symbol "_ProcessIO", required by "main.o" error: missing definition for symbol "_USBDriverService", required by "main.o" error: missing definition for symbol "_usb_stat", required by "main.o" error: missing definition for symbol "_usb_device_state", required by "main.o" error: missing definition for symbol "_usb_active_cfg", required by "main.o" error: missing definition for symbol "_UserInit", required by "main.o" error: missing definition for symbol "_USBCheckBusStatus", required by "main.o" error: missing definition for symbol "_CDCTxService", required by "main.o" > Process Exit Code: 1 > Time Taken: 00:01 ” Körbenézelődtem de csak annyit találtam, hogy talán szükség lenne a clib.lib nevű fájlra a fordításhoz de amennyire tudom ez meg C18-hoz van. Szerintetek lehetséges, hogy mégis ezt kéne használnom? Köszi a válaszokat előre is!
Valamivel tovább vár, talán 500ms-nak felel meg. Megtaláltam a regfile-okat és kipróbáltam a 89c420-ast. Akkor teljesen megváltozott a várakozási ideje, még sok is lett. Sajnos nekem csak 89c430 és 89c450-esem van Még végigpróbálgatom az összes regfile-t, hátha az egyik jó lesz.
Helló, helló!
Nem is tudom, hol kezdjem... PIC programozással szeretnék foglalkozni. Ami lényeges: Ezeket a dolgokat szeretném megvalósítani: 1. Timer készítése 2. Egy 10 bites analóg-digitális konvertert. Olyat, amelyik leolvassa egy potenciométeren levő feszültséget, és annak megfelelően inicializálja egy portjának a kimeneteit. (azt tovább 7szegmenses kijelzőre küldöm, vagy másként használom fel a szükségnek megfelelően) 3. Egy PWM vezérlés, az AD konverter értéke alapján. 4. Hosszabb távon: egy napelemes rendszer vezérlése (megfelelő léptetőmotorral, a deklináció és óraszög - vagy csak óraszög (egyelőre) követéséhez) Nincs szándékomban USB-s vagy más PC-s alkalmazásokban használni PIC-et Kb. 2 hete tanulmányozom a PIC típusokat, programozási nyelveket, "égető"áramköröket Tanulmányoztam a PIC-ek struktúráját, működését. Tanulmányoztam az Assembler programozónyelvet, hogy ismerjem a felmerülő alapvetőbb kérdéseket. A PICBasic pro nyelvet választottam programozói környezetnek, mivel programoztam Visual Basic-ben, ez ismerős számomra. Ahol elakadtam, (szégyen-nem szégyen, bevallom) lassan a kétségbeesés környékez, anyagilag az égetőáramkör a probléma, tekintettel a JDM vagy LPT porton megvalósítható programozók egyszerűsége és ára ill. az USBs programozók ára közti különbségek miatt. Mivel a két heti tanulmányozás alatt olvastam, hogy a JDM-ek egyáltalán nem biztonságosak, és hogy "a PICKit2-t válaszd, vagy az LPT-st", különben ... A PICKit2-t (sajna) (legalábbis egyelőre) nem tudom megengedni magamnak. Az LPT-s égetőknél láttam az Oshon féle égetőt. Ez a többszáz oldalas tanulmányozás/fórumolvasás után ideális is volna, tekintettel, hogy viszonylag egyszerű, könnyen/olcsón el tudnám készíteni. Azt nem tudom eldönteni, hogy ha írok PICBasic-ben egy programot (.pbp) és kompillálom hexába, azt az Oshon "Parallel port PIC programmer" programjával át tudom-e küldeni a mikrokontrollerbe? Vagy azzal (Oshon) csak a saját IDE-s Compilerével készített példákat és szimulációkat tudom felhasználni? A PICBasik Compilerében (a Microcode Studio-ban) beállítottam az Oshon Compilert, létre is hozza a HEX file-t, de annak a formátuma Soros porton működik csak, vagy LPT-n is használható?? A példaprogramokban mindenik elején ott áll, hogy "Ensure that a serial cable is connected to your PC and development board". Rengeteg dolgot átolvastam, sok mindent nem értek még, s tudom, hogy még legalább annyit kell még tanuljam, hogy valamihez érdemben nekifoghassak. De gondoltam, leírom ezt a pár sort, talán kapok némi segítséget a továbbiakhoz... Köszönöm előre.. ( ) (???)
Nem lehet, hogy valami fájl nincs beincludolva? Pl. main.h nincs a main.c-be?
Alapvetően a hex fájl az szabványos formátum, vagyis ha egy program készít neked egy hex fájlt kimenetként, akkor azt bármelyik másik programból tudod égetni/szimulálni, ami tud hex fájlt olvasni. Tehát igen, elkészíted bármelyik fordítóval a hex fájlt, és utána az Oshon programjával meg beégeted a kontrollerbe.
Véleményem szerint a legrosszabb nyelvet választottad. Én is VB-ben voltam otthon PC-n, de eszembe nem jutott a PIC kapcsán. A kezdő lépéseket Assemlerben érdemes megkezdeni, majd a C.
Az oshon egy jó égetőáramkör. A hex állományokat egyformán kezelik a programozó programok, mindegy milyen porton kezelik az égető áramköröket. Viszont manapság az LPT-s égetőprogramok elavultak a PC-khez képest, ezért kevés ami jól működik és sajnos hardveresen is gondok vannak a PC portokkal, kivéve a sorost, ha van(nem JDM-el!). Nézz fel az oldalamra, ott bővebben is írok erről.
Ez jól hangzó válasz azt hiszem (nekem, meg lehet a hozzám hasonlóknak), akik akarunk haladni a technikával, de nem feltétlenül a legújabb PC-s technikákkal.
Mert lehet, a "pénztárca" sem utolsó szempont... S meg lehet oldani (mondjuk ideiglenesen) egy USB-> LPT átalakítóval Azt nem sikerült kiderítenem, hogy mi az előnye egy LPTs égetőnek egy sorossal szemben (az elektronika hasonló egyszerűségét tekintve), az Oshonról különben csak jót olvastam. Bocs watt! a hozzászólásodat utólag olvastam
Kösz, watt! "Jártam" már ott.
Azt hiszem az elektronika "komplexítása" ijesztett el a sorosnál azt hiszem. (kezdésnek...) Tehát nem magával a soros porttal van a baj??? Visszanézek Idézet: Ha ez kérdés volt, akkor a válasz: NEM! Az USB-LPT vagy USB-RS232 konverterek felborítják az időzítést. A működő USB-s programozóknál (pl. PICkit2) a külső áramkör (mikrovezérlő) szabja meg az időzítést, nem a PC.„meg lehet oldani (mondjuk ideiglenesen) egy USB-> LPT átalakítóval” Idézet: Pl. a laptopomon van LPT port, de nincs soros port. Ez elég nyomós érv... „Azt nem sikerült kiderítenem, hogy mi az előnye egy LPTs égetőnek egy sorossal szemben” Ha komolyabb terveid vannak, érdemes lesz egy PICkit2 klónba beruházni. Házilag is megépíthető, de az E-bay kínálatában készen is találsz $22 körüli áron. Nem csak programozóként, hanem logikai analizátorként és kommunikációs eszközként (UART tool) jól használható.
Az USB-Soros átalakítók nem működnek sajnos. A soros porttal nincs semmi baj, ha megfelelően van illesztve hozzá az égető. Van egy újabb COM-os égetőm, ami tökéletesen működik a programom által kezelt PIC-ekkel.
Egy C18-ra fejlesztett, meglehetősen bonyolult programcsomagot nem hiszem, hogy érdemes SDCC-vel próbálgatni. Van C18 fordító Linux-hoz is (ha esetleg ez volt az SDCC használat oka).
Úgy tudom egyébként, hogy találhatók SDCC-hez is kész USB mintapéldák, konkrétan CDC ACM is. Ha ragaszkodsz az SDCC-hez, talán érdemesebb egy ilyet előkeresni.
[/quote]Pl. a laptopomon van LPT port, de nincs soros port.[/quote]
Fordítva még hallottam
???
Megnézem. Azt hiszem kezdésnek maradok az általad bemutatott LPT-snél. Tetszik, ahogyan leírtad. Meg amiket elmondtam...
Pedig vannak ilyenek, igaz tényleg elég ritka.
|
Bejelentkezés
Hirdetés |