Fórum témák
» Több friss téma |
Fórum » PIC programozás
Klikkelj rá a gugli fordítóra és szavanként fordítsd le az asm ben ami a kijelzéshez tartozik .... ezután már csak mplabbal át kell fordítanod hex be és már készen is van....
A hozzászólás módosítva: Aug 13, 2014
Üdv mindenkinek!
18F4520 PIC -kel szeretnék a soros vonalon kommunikálni. ( Pc - ből adatot küldeni a PIC-nek (Pl. egy led felkapcsolása ) a változást a PIC küldje vissza a PC-nek. ) A soros vonal működtetésérő MŰKÖDŐ leirást nem találok. ( A pic programozási leirások a soros vonal kezelése előtt abbamaradnak, vagy az van írva, hogy folytatás következik ....) Ha valakinek volna ötlete ( használható leírás helyéről ) vagy saját tapasztalata amit megosztana velem azt megköszönném.l
Szükséged lesz egy illesztő áramkörre a két, vagy több PIC közé (kivéve, ha egy nyáklapon vannak!) illetve a PC közé. A PIC-ek közé a legjobb választás az RS485 illesztő, pl. SN75176 vagy hasonló (felfűzhető több slave, távolra elvihető stb.). A PC felé ha RS232 felülettel akarsz csatlakozni a COM-ra, akkor egy MAX232 kell a másik USART kimenetre(két USART kimenettel rendelkező PIC szükséges). Ha a PC-t is RS485 vel akarod használni, akkor a PC-re egy RS485 illesztőt tehetsz USB-re, vagy a COM-ra egy RS232-RS485 illesztőt. Ha a PC lesz a Master, akkor a PIC-ek csak akkor kommunikálhatnak, ha a PC működik és irányítja a forgalmat. Ha a PIC-ek között akarsz kommunikációt PC-től függetlenül, akkor az egyik PIC-et kell kinevezned Master-nek és a PC Slave lesz. Ekkor a PC csak akkor szólhat bele, ha a Master megszólítja.
Gondolom a huzalozás nem okoz problémát, jó esetben az A és B vonalakat be kell kötni lánc szerűen és a két végét le kell zárni 120ohm-al. Ekkor jön a programozás, el kell dönteni, hogy milyen protokoll szerint akarsz kommunikálni. RS485 esetében a MODBUS ajánlott, mert kiforrott, egyszerű "gyors" és biztonságos. A PC felé használhatod ezt külön szálon, címzés nélkül RS232-n keresztül is, de más megoldás is szóba jöhet, csak a CRC ellenőrzést érdemes használni, akár azt, amit a MODBUS használ, ha már egyszer ott van. Ha a PC-t is RS485-el használod, akkor csak a MODBUS marad. A MODBUS-ról sok leírás található a neten, ezzel érdemes kezdeni, ha így döntesz. Persze saját protokollt is írhatsz...
Ezen az oldalon ismertetem az általam összeállított API függvények használatát. Egy kicsit búvárkodni kell a picula_usart.h és picula_usart.c állományokban a megértéséhez.
Az USB elnevezés a leírásban ne zavarjon meg, az én kártyámon van egy USB-UART átalakító is, ezért a PC oldaláról egy virtuális soros port látszik. A PIC szempontjából ez közömbös, szoftveresen minden ugyanígy kellene akkor is, ha RS232 felületre csatlakozna.
Nem kell egyből a mély vízbe ugrani.
- Egy-egy karakter vétele kapcsolgatja a LED -et. Ekkor lehet használni a fordítók könyvtárában levő UART kezelő függvényeket, hiszen a feldolgozás rövidebb idő alatt megtörténik, minthogy beérkezne a következő karakter. - Ha bonyolultabb a vezérlés: Körforgó buffer mind a vételi mind az adandó karaktereknek. Megszakításos kiszolgálás a vételre és az adásra. Két eljárás kell még: az egyik kiveszi a soron következő karaktert a vételi bufferből (és jelzi, ha nincs mit kivenni), a másik egy karaktert beír az adó bufferbe, engedélyezi az adási megszakítást (várakozik, ha nincs hely). A megsuakítási rutinban a vevő kérését kiszolgáló rutinnak pontosan egyszer ki kell olvasnia a RCSTA regisztert, le kell kezelnie a hibákat és pontosan egyszer ki kell olvasnia az RCGER -et. Az RCIF jelzőbitet az RCREG kiolvasása törli. Náhány hibát csak a vevő kikapcsolásával és újrabekapcsolásával lehet törölni, de az RCREG -et is ki kell olvasni. Az adó kezelése hasonló, a TXREG írása törli a TXIF -et. HA nincs több adandó karakter, az adási megszakítást tiltani kell.
Sziasztok!
18f4520-at programozok, de nem úgy működik ahogy szeretném. Bekapcsolás után, sokáig, villog az LCD kijelző, régi TV-s szóval " szalad a kép", az üzemi állapot kijelzéssel, aztán megnyugszik.Ha a menüt váltok, van úgy, bejön, van úgy, hogy csak villog. Szóval buta vagyok. Kérek tanácsot!
Az a helyzet, hogy valami kontakthiba van. Jól át vagyok verve, már jó ideje szenvedek vele.
Sziasztok!
Két kérdésem lenne: 1. ha a pickit3-mal pic12f629-et programozok, akkor ha nem bírja megtáplálni a programozó 5 v-al stabilan a pic-et akkor lehet-e attól hibás a programozás (belső oszcillátort használok) 2. ha a (fent említett picet) nem a programozóval akarom megtáplálni, hanem 1 külső stabil táppal akkor aszt úgy kell-e, hogy a mclr, data, clock lábat a programozótól kapja a vdd és a vss lábat pedig a táptól(nem tudom, hogy össze kell-e kötni a táp gnd lábát a programozó gnd lábával és így együtt kell-e a pic-re kötni) Előre is köszönöm a válaszokat!
Szia!
Meg kell tudnia táplálni ha jó a PIC ! A GND-ket össze kell kötni és ha a Vdd-ket is összekötöd, akkor fogja érzékelni azt is és nem fog érte szólni, hogy nincs tápod !
Tehát akkor a gnd is és a vdd is össze kell kötni a táppal és így kell ezeket rákötni a picre.
Gondolom a programban (mplab8.7) be kell állítani a beállításoknál, hogy nem kell megtáplálni a picet vagy igen?
Frissíteném az MpLab -ot 8.89 vagy 8.90 -re. Majdnem két évvel frissebb...
A 8.91 és 8.92 verziók ugyan több típust ismernek, de sokkal több a hiba bennük.
Sziasztok !
Egy PIC program megírásában kérném a segítségeteket. Van egy autópálya aminek van váltója. Ebben meghalt a PIC (16F630) és ezt szeretném javítani, de a PIC programozásban nem vagyok jártas. A mellékelt képen látható a kapcsolási rajz. Négy autót tud kezelni a pálya, ezeknek a jeleit látni a képen. Ezt mindig adja a kocsi egy infra leden , a pályába van beépítve egy vevő és az érzékeli az autót, ha nyomok neki egy váltó jelet, akkor a kisugárzott jelalakot megfordítja ( invertálja ). Ilyenkor kiad egy impulzust a PIC a FET felé, és vált egyet a váltó . Ugyanígy, ha csak sima jel megy ki, akkor is ad ki egy impulzust a másik irányba. A teljes leírás itt található : Váltó Egy ilyen programot kellene megírni a PIC-be. Előre is köszönöm a válaszokat. Tibi
Jól gondolod, a PK2 és a PK3 is érzékeli, hogy kap az áramkör tápot, tehát nem kell előzetesen beállítani ( ha már a PicKit bekapcsolásakor is rajta lesz a táp! ) !
Ez nem kérdés ! Kérés !
Idézet: „Egy ilyen programot kellene megírni a PIC-be.”
Ott a pont!
De én csak azt szerettem volna jelezni, amit te is megértettél azonnal, hogy kérdés nélkül nem lehet válasz...
Akkor itt a kérdés: segítenétek, hogy hogyan álljak neki a programnak ?
Üdv. Az lenne a kérdésem, hogy milyen lehetőség van arra, hogy az újabb pic típusokat ismerje a programozó. Pickit2 -ez van nekem- már nem ismeri, Pickit3 található letöltött programja sem. Nem találok Pickit3 frissítést sem. Házilagosan megoldható a bővítés, de nekem bonyolult, nem lehet minden egyes típusnál segítséget kérni. Mplab-ot nem használom, talán az a megoldás Pickit3-al, nem tudom.
Van Pickit3 kínai klón, ismeri-e valaki, használható-e. Köszönöm.
MpLabX -beli IPE (Integrated Programming Environment) a gyári megoldás a PICkit3 -re.
A PICkit2 programja egyszerűen bővíthető a 12F1xxx, 16F1xxx, 18FxxK, 18FxxJ típusokkal, de az újabb 16 és 32 bitesekhez a PICkit2 firmware -t, a kezelő programot is át kell írni. Idézet: „A PICkit2 programja egyszerűen bővíthető” Talán valahol neten megvannak a fájlok, amit nemrégen küldtél a 16F1704-re? A PK2deviceFile.dat anyaga, vagy Pic katalógusban? Köszönöm. A hozzászólás módosítva: Nov 29, 2014
A leírások hozzáférhetőek (voltak) a Microchip honlapján:
- PICkit2 firmware 2.32.00 forrása, - PICkit2 V2.61 kezelő progam forrása és benne a működés leírása: PICkit2SourceGuidePCv2-61FWv2-32.pdf - A programozási leírások és adatlapok. Az idézet pontosabban: Idézet: „A PICkit2 programja egyszerűen bővíthető a 12F1xxx, 16F1xxx, 18FxxK, 18FxxJ típusokkal...” Ebben az esetben nem kell más funkció, mint ami már meg van írva a firmware -ben és az applikációban. Persze néhány scriptet meg kell írni...
Sziasztok!
Egy PIC18F2550-I/SP szeretnék felprogramozni egy Pic kit2-vel. Találtam itt a honlapon egy ICSP bekötési rajzot, de ahhoz az volt írva, hogy hibás a bekötése... Kerestem a googlen is, de nem sikerült találnom (valószínű rossz kulcsszavakat adtam meg). A lábkiosztását ismerem a cél IC-nek, de nem tudok kell e még valahova ellenállást stb. kötnöm. Előre is köszönöm. UI: esetleg a csatolt kép lenne az? Bővebben: Link A hozzászólás módosítva: Dec 13, 2014
A PIC-nek van adatlapja. Be kell kötni mindkét Vss-t, a Vdd-t, a Vpp-t és PGD-t és PGC-t. Természetesen ha használod a resetet, akkor a panelodon van egy 10k-s felhúzó a reset lábon és a tápfesz lábaknál már alapból a 100nF.
Sikerült köszönöm, csak bekötöttem az ICSP kivezetéseket, és forrasztottam még egy csatlakozót a Vss re, így a program felismerte. Bár még nem programoztam be... előttem még meg kellene találni a propeller óra topikjában a az USB bázishoz a hexet
Hello
Tudja valaki ennek az egyszerü JDM programozonak a nyák vagy a kapcs. tervét?
A neten millio talalt van erre. De... Ez a programozo a mai gepeken nem igen megy. A regi gepeken az RS232 vonal szintjei meg +-10 V felett voltak, mig a maiaknal a +-5 V korul (ha van egyaltalan soros port) . Ez nem elegendo a PIC programozasahoz. Jobban jarnal egy 15 $ ero PicKit2-vel amit az Aliexpressen ingyen hazhozszallitassal megkaphatsz.
|
Bejelentkezés
Hirdetés |