Fórum témák

» Több friss téma
Fórum » PIC kezdőknek
 
Témaindító: Placi84, idő: Okt 3, 2005
Témakörök:
- A PIC ÖSSZES Vdd és Vss (AVdd és AVss) (tápfeszültség) lábát be kell kötni!
- A táplábak mellé a lehető legközelebb 100nF-os KERÁMIA kondenzátorokat kell elhelyezni.
- Az MCLR lábat, 10kohm-mal fel kell húzni a Vdd tápfeszültségre.
- Külső kvarc használatakor 4MHz-ig XT, a fölött pedig HS konfigurációt kell beállítani.
- Stabilizált tápegységet kell használni, a kapcsoló üzemű "telefon töltő" adapterek okozhatnak hibákat.
- Programozáshoz, használj lehetőleg PICKIT2 vagy 3 programozót. Kerülendő a JDM (soros porti) programozó.
- A PIC adatlapja (PDF), tartalmazza a lábak kiosztását és a PIC minden paraméterét. Az adatlap ingyen letölthető!
- Egyes PIC típusoknál az RA4 nyitott nyelőelektródás (Csak lefelé húz L szintre, H szintet nem ad ki!)
- Ha a PGM lábat digitális ki-/bemenetnek használod, az alacsony feszültségű programozási lehetőséget le kell tiltani.
Lapozás: OK   34 / 1207
(#) pajti2 hozzászólása Dec 23, 2009 /
 
Vacakoltam scriptekkel kezelhető környezet összehozásával és ollózgattam dolgokat. A jelek szerint a linker scriptet nem másoltam, hanem mozgattam (ugyanis nem volt ott). Visszamásoltam, és rendbejött. Bocsi a lámázásért.
(#) pajti2 hozzászólása Dec 25, 2009 /
 
C30 fordítónál keresek olyasmi adatot, hogy alapértelmezetten mekkora bit szélességben számol. A leírásokban nem találtam ilyen adatot.

Pld mondok neki ilyesmiket:
  1. DWORD d1;
  2. d1= d1 & 0x0000FFFF;


Ezt ténylegesen 32 bitesen meg fogja csinálni, vagy nyisszantja 16 bitesre a műveletet?

Vannak utómódosítók mint "u", "ul", "ull". Ha azokat nem írom oda, mennyire lesz intelligens a C30 fordító felismerni a legnagyobb bit szélességet?
(#) pppsss hozzászólása Dec 26, 2009 /
 
Sziasztok !

Mindenek előtt elmondom hogy most kezdem a PIC-ezést, és nagyon sokat olvastam a fórumokat, ezt is és a miértek-hogyanoknak kb. az első negyedét mert piszok hosszú.
Tehát a problémám: A nullától a robotokig című cikkben leírtakat követem, van egy Pickit2 klónom és amikor a PIC-be /16F877A/ beégetem a programot, akkor működik frankón de ha pár perc múlva újra kapcsolok rá tápot akkor nem csinál semmit, kiolvasva a PIC-et pedig nincs benne semmi ! Eltünt az előzőleg beírt program , vajon mi lehet az oka ?
Előre is köszi a válaszokat !
(#) vicsys válasza pppsss hozzászólására (») Dec 26, 2009 /
 
A kódvédelem nincs véletlenül bekapcsolva?
(#) pajti2 hozzászólása Dec 26, 2009 /
 
Bele tudsz nyomni abba a pic-be valami starter demo example programot - pld led villogtatást? Azzal is ugyan az a tapasztalat?
(#) frecsko hozzászólása Dec 26, 2009 /
 
Sziasztok.
Van egy pic16f873-ra írt programom, át szeretném írni 877A-ra. Elég ha a programban az includ -nál átírom?
(#) bodisjani hozzászólása Dec 26, 2009 /
 
Sziasztok!

Olyan problémám lenne, hogy Mplab Hi-tech pro pluginnal szeretnék pic16f-re programozni, de a fordításnál elakadtam:
Ugye úgy kell, Project>Build?
Nekem lesz egy csomó fájlom, csak a .hex nem.
???

Mi lehet a baj, vagy mit csinálok rosszul?
(#) pajti2 válasza frecsko hozzászólására (») Dec 26, 2009 /
 
A linker scriptet természetesen mindenképpen állítsd át (ha mplab-ot használsz a project settingsnél valahol ott kell lennie a cél pic típusnak).

Perpill nem néztem utána, mennyire kompatibilis ez a kettő típus, és persze nem látok bele a programodba, milyen mélységig használod ki a tulajdonságaikat, így csak általánosságban tudok neked válaszolni: ha pic-et cserélsz, teljesen végig kell fésülnöd az egész programot. Egy kicsit kényelmesebb a dolgod, ha nem assemblyben, hanem C-ben van megírva a program, de ez nem fog mentesíteni téged pld a lábkiosztások egyeztetésétől. A felhasznált perifériákkal az új típusnak is rendelkeznie kell, stb.
(#) pajti2 válasza bodisjani hozzászólására (») Dec 26, 2009 /
 
A microchip oldalon (microchip.com) ha rákeresel az "mplab" szóra, és legörgeted az oldalt, lesz ott starter guide is a pdf-ek között. Több is, mint kellene. Ha ragaszkodsz az mplab-hoz, ám olvasgass.

Részemről úgy döntöttem, teljesen hagyom a fenébe az egész mplab-ot, és csak a C Lite-ot telepítettem. Megírtam hozzá a fordító scriptet, mostanra egész pöpec. Egy duplaklikk, és vagy hibalistát kapok eredménynek, vagy a .hex-et (bár nálam .exe nevet kap, mert ilyenre akartam).

Szerkeszteni egy notepad is elég.
(#) icserny válasza bodisjani hozzászólására (») Dec 26, 2009 /
 
Idézet:
„Mi lehet a baj, vagy mit csinálok rosszul?”

Ez az MPLAB Outpu ablakában kiírt hibaüzenetből (Error) derül ki.
(#) icserny válasza pajti2 hozzászólására (») Dec 26, 2009 /
 
Idézet:
„Ezt ténylegesen 32 bitesen meg fogja csinálni, vagy nyisszantja 16 bitesre a műveletet?”

Találgatás helyett legokosabb ilyenkor megnézni a lefordított kódot (Disassembly Listing).

A DWORD hogy van definiálna? Ha long, vagy unsigned long akkor 32 bitesen lesz kezelve. Elvileg van 64 bites típus is (long long).

Idézet:
„Vannak utómódosítók mint "u", "ul", "ull".”

Ha biztosra akarsz menni, akkor használd ezeket a módosítókat!
(#) bodisjani válasza icserny hozzászólására (») Dec 26, 2009 /
 
Nincs output ablakom sem, pedig Window>Output van kipipálva...
(#) frecsko válasza pajti2 hozzászólására (») Dec 26, 2009 /
 
Külön nem találok semmit a 873-asról, egy doksiban van a 874,876,877-essel. Úgy látom lényegében ugyan azt tudja mint a nagyobb, csak kevesebb az I/O portja, a memóriája a fele,eggyel kevesebb interruptja van és 3-mal kevesebb input csatornája van.
Ezt akarom átírni 877A-ra.

MAIN.C
    
(#) icserny válasza bodisjani hozzászólására (») Dec 26, 2009 /
 
Lehet, hogy elbújt valamelyik mögé... A dokkolható ablakokkal sok furcsaság megeshet. Csukj be minden ablakot az MPLAB-on belül, s a View menüben próbáld meg ki- és bekapcsolni az Output ablakot! Elő kell kerülnie...
(#) bodisjani válasza icserny hozzászólására (») Dec 26, 2009 /
 
hát nem tudom hol lehet...

1.jpg
    
(#) bubu hozzászólása Dec 26, 2009 /
 
Sziasztok!

Használt már valaki PIC18 sorozatból J-s jelölésűt?
Én PIC18F46J50-et akarok használni, de semmi nem megy amit f45k20-ra eddig írtam.
Beállítottam a PIC-et, a headerben a 46j50-et adtam meg és a forrásokhoz is azt huztam be.
Valamibe mindig beleköt. Valamikor Újradeklarálást írt, most pedig a linker nem tetszik neki.
MCC18 C fordítót használok.
Ha valaki tud segíteni hogyan kell működő projektet létrehozni a J-s sorozatra azt örömmel veszem én nagyon megköszönném!

ui.: Boldog Karácsonyt mindenkinek!
(#) icserny válasza bodisjani hozzászólására (») Dec 26, 2009 / 1
 
Én akkor tudok ilyen állapotot létrehozni, ha az Output ablakot dokkolhatóvá teszem és kitolom az MPLAB-ból. De ha kilépek az MPLAB-ból és újra megnyitom, ekkor előjön az Output ablak, mint a keljfeljancsi.

Ha a kilépés sem segít, akkor végszükség esetén próbáld megnyitni a mellékelt projektet! Ezzel (az elmentett Workspace miatt) elő kell, hogy kerüljön az Output ablak.

Megjegyzés: a dokkolt ablakokat az ablaknévnél "megfogva és húzva" lehet független ablakká tenni, s utána a bal felső sarkára jobb egérgombbal kattintva lehet a Dockable elől kivenni a pipát. Ugyanitt lehet visszaállítani a dokkolhatóságot.

bittest_a.zip
    
(#) icserny válasza bubu hozzászólására (») Dec 26, 2009 /
 
Idézet:
„Használt már valaki PIC18 sorozatból J-s jelölésűt?”

Igen, PIC18F87J50-et.

Töltsd le innen az MCHPFSUSB Framework v2.6 programcsomagot, s abban találsz példákat a PIC18F46J50-hez is. Igaz, kicsit nehéz kihámozni belőle a lényeget... De én is ebből indultam ki.

12 MHz-es kvarchoz a "gyári" konfiguráció így néz ki:
  1. #pragma config WDTEN = OFF          //WDT disabled (enabled by SWDTEN bit)
  2.      #pragma config PLLDIV = 3           //Divide by 3 (12 MHz oscillator input)
  3.      #pragma config STVREN = ON            //stack overflow/underflow reset enabled
  4.      #pragma config XINST = OFF          //Extended instruction set disabled
  5.      #pragma config CPUDIV = OSC1        //No CPU system clock divide
  6.      #pragma config CP0 = OFF            //Program memory is not code-protected
  7.      #pragma config OSC = HSPLL          //HS oscillator, PLL enabled, HSPLL used by USB
  8.      #pragma config T1DIG = ON           //Sec Osc clock source may be selected
  9.      #pragma config LPT1OSC = OFF        //high power Timer1 mode
  10.      #pragma config FCMEN = OFF          //Fail-Safe Clock Monitor disabled
  11.      #pragma config IESO = OFF           //Two-Speed Start-up disabled
  12.      #pragma config WDTPS = 32768        //1:32768
  13.      #pragma config DSWDTOSC = INTOSCREF //DSWDT uses INTOSC/INTRC as clock
  14.      #pragma config RTCOSC = T1OSCREF    //RTCC uses T1OSC/T1CKI as clock
  15.      #pragma config DSBOREN = OFF        //Zero-Power BOR disabled in Deep Sleep
  16.      #pragma config DSWDTEN = OFF        //Disabled
  17.      #pragma config DSWDTPS = 8192       //1:8,192 (8.5 seconds)
  18.      #pragma config IOL1WAY = OFF        //IOLOCK bit can be set and cleared
  19.      #pragma config MSSP7B_EN = MSK7     //7 Bit address masking
  20.      #pragma config WPFP = PAGE_1        //Write Protect Program Flash Page 0
  21.      #pragma config WPEND = PAGE_0       //Start protection at page 0
  22.      #pragma config WPCFG = OFF          //Write/Erase last page protect Disabled
  23.      #pragma config WPDIS = OFF          //WPFP[5:0], WPEND, and WPCFG bits ignored


Működő projektet a Project/Wizard-dal hozhatsz létre. A program elejére írj #include "p18cxxx.h" vagy #include "p18f46j50" sort. Utána a fenti konfigurációs sorokat, majd a változódeklarációkat (ha kell) és a főprogramot.
(#) bodisjani válasza icserny hozzászólására (») Dec 26, 2009 /
 

Köszönöm!! mostmár van output ablakom!
Csak szanaszét fagyott az mplab... Akkor most hogyan tovább? Project Wizzard?
16f628 ra szeretnék programot(4 bemenet 1vagy 2 kimenet), egy egyszerű vezérlést PLC helyett... Pickit2-m van.
(#) bodisjani válasza bodisjani hozzászólására (») Dec 26, 2009 /
 
Ja, meg van egy Kónya féle Mikrovezérlők alkalmazástechnikája könyvem csak az a baj, hogy abban csak C30as fordítóról van szó, ami nem jó PIC16Xhez. Szóval jól jönne indulásnak egy kis segítség. Pl.: HI-TECH vagy CCS C -t használjak?
Bocs az alap dolgokért!
(#) vilmosd válasza bodisjani hozzászólására (») Dec 27, 2009 /
 
Hali
Ha estleg PLC szeru programozast akarsz PIC-re itt talalsz: ladder
Udv Vili
(#) pajti2 válasza frecsko hozzászólására (») Dec 27, 2009 /
 
Nagyon egyszerű program HW technikai szempontból. Lazán mennie kellene.

Gondolom te is látod abban a kódban, hogy bizonyos kivezetéseket felhasznál a program. Ha azok a kivezetések a cél picen is megvannak, akkor nincs probléma azzal a programmal. Minden további nélkül is mennie kell az új picen is. Ha azonos családba tartoznak, a config bitek beállításai is kompatibilisek.

Egyszerűen csak ess neki, és had szóljon.
(#) pajti2 válasza bodisjani hozzászólására (») Dec 27, 2009 /
 
Én azt nem értem, miért ragaszkodsz a 16x-hez ?

Minimálisan drágábbak a pic24 / 30 / 33-asok. Tokozásra is van mindenféle, pdipes is. 5V vagy 3.3V, amelyik szimpi, azt választod. Azokhoz jó lesz a C30 fordító. Tudom őket ajánlani.

Ez a hi-tech meg ccs c ezeket a mozaikszó turmixokat nem kell ám túlzásba vinni. A microchip oldaláról letöltöd a C18 Lite-ot (16X pichez) vagy a C30 Lite-ot (24/30/33-hoz), és jó lesz.
(#) Bonca válasza bodisjani hozzászólására (») Dec 27, 2009 /
 
Hello!
Én a Mikroelektronika MikroC fordítóját használom. Nem nagyon láttam itt a hobbielektronkán, hogy használnák. Én ezzel kezdtem és ezt használom a mai napig. 2 kB fordításig ingyenes, ez felett fizetős csak, más korlátorzás nincs benne. Az assembly különösebb ismerete nélkül is el lehet kezdeni programozgatni vele. Nagyon jó mintaprogramokat ad a helpje és tényleg használható előre definiált könyvtárai vannak:
ADC Library
CAN Library
CANSPI Library
Compact Flash Library
EEPROM Library
Ethernet PIC18FxxJ60 Library
Flash Memory Library
Graphic Lcd Library
I˛C Library
Keypad Library
Lcd Library
Manchester Code Library
Multi Media Card Library
OneWire Library
Peripheral Pin Select
Port Expander Library
PrintOut Library
PS/2 Library
PWM Library
RS-485 Library
Software I˛C Library
Software SPI Library
Software UART Library
Sound Library
SPI Library
SPI Ethernet Library
SPI Graphic Lcd Library
SPI Lcd Library
SPI Lcd8 Library
SPI T6963C Graphic Lcd Library
T6963C Graphic Lcd Library
UART Library
USB HID Library

A fórumon közvetlenül a programíró cég emberei válaszolnak. Találsz itt dPIC-re, PIC24-re, 8051-re, AVR-re is ugyanilyen fordítót, de ha nem jön be a C nyelv akkor Pascal és Basic nyelven is programozhatod ezeket a mikrovezérlőket ugyanezen könyvtárakat használva.
http://www.mikroe.com/

Bonca
(#) Bonca válasza bodisjani hozzászólására (») Dec 27, 2009 /
 
Kigyűjtöttem a mikroC PRO for PIC 2009 által támogatott eszközöket.

Bonca

pics.txt
    
(#) bodisjani válasza vilmosd hozzászólására (») Dec 27, 2009 /
 
Köszi!

Mindenképp elmentem a címet, sok feladat gyors megoldásához lehet segítség.
De szeretnék kicsit közelebb is kerülni a dolgokhoz, ezért erőlködöm a C-vel.
(#) bubu válasza icserny hozzászólására (») Dec 27, 2009 /
 
Köszi szépen a segítséget!
(#) bodisjani válasza pajti2 hozzászólására (») Dec 27, 2009 /
 
Szia!

Nem ragaszkodom a 16X-hez, csak vettem belőle párat régebben. Most van időm a dologgal foglalkozni, így elővettem ami volt. Könyvet most vettem, Kónya féle... Abban is C30-ra vannak példák, úgyhogy valószínű ez lesz a járható út számomra.
A C18 nem a 18XXXX-ekhez való?
(#) watt válasza bodisjani hozzászólására (») Dec 27, 2009 /
 
Idézet:
„A C18 nem a 18XXXX-ekhez való?”

De. Miért kérdezed?
A microchip oldalán az összes infó és az összes program megtalálható, letölthető.
(#) bodisjani válasza Bonca hozzászólására (») Dec 27, 2009 /
 
Neked is köszi a segítséget!

Megnéztem az oldalukat, meg le is töltöttem.
Elég komolynak néz ki, nem tudom miért fikázzák a fórumokon. Sok helyen olvastam, hogy felejtős, meg csak baj van vele...
Részemről lehet hogy kipróbálom, annyi van csak, hogy az MPLAB mégiscsak a gyári környezet.
Vagy ez annyira nem is számít?
Következő: »»   34 / 1207
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem