Fórum témák
» Több friss téma |
Fórum » CCS PIC Compiler
Hát erre mit is mondhatnék. Mea culpa.
Addig eljutottam, hogy az adatlapot elővegyem, de nekem valahogy nem mondta meg az a kis huncut adatlap, hogy hogyan is kellene csinálni. Idézet: „setup_adc_ports(NO_ANALOGS);” Ez kevés az üdvösséghez, kell egy setup_adc(ADC_OFF|ADC_TAD_MUL_0); sor is! Mellesleg pont ezek miatt (nem tudni, mire és mit csinál a fordító), kár a CCS C-vel szerencsétlenedni! A PIC18F14K50-hez egyébként belefogtam egy tananyag készítésébe. Sajnos, még csak az elején járok, de azt is használd egészséggel!
Korábban szerepelt az általad írt sor is a programban, de úgy is jelentkezett a probléma. Aztán a diliben el kezdtem kitörölgetni részeket, ez is áldozatul esett. Persze most, hogy már működik a portok olvasása, minden visszakerül.
A Potyo által említett kiegészítés oldotta meg a problémát: #byte ANSEL=0xF7E #byte ANSELH=0xF7F ... ANSEL=0; ANSELH=0; Eddig PIC16-osokon nem volt bajom a CCS-sel, sőt szeretem, mert ritkán programozgatok, így ugye sokat felejt az ember két program megírása között, és a helpben mindig megtaláltam amit kerestem. Ráadásul a neten talált forráskódokat valahogy úgy írták meg, hogy azok áttekinthetők voltak számomra, szemben a Microchip fejlesztőrendszerében írt sokszor olvashatatlan kódokkal (természetesen ez csak az én benyomásom volt, nem akarok erről vitát gerjeszteni). Persze most szívás volt ez a CCS hiba, de a C18-ban is biztos előfordulnak hasonló hibák. Régebben a CCS optimalizáltságát is dícsérték, bár ez simán lehetett marketing fogás. Azért rendes tőled, hogy segítesz ebben a fórumban annak ellenére, hogy nem sokba nézed a fejlesztőt. A tananyag írásához sok kitartást kívánok! Igényesen kialakított oldal. Még hiányos, de látszik a rengeteg ráfordított idő. Ha esetleg lesz benne egy C18 - CCS összehasonltás, arra nagyon kíváncsi leszek. Idézet: „Eddig PIC16-osokon nem volt bajom a CCS-sel” PIC16 esetén nincs "gyári" C fordító, tehát ott indokolt lehet a használata. Mellesleg ott is produkált hibás kódot (pl. szoftveres i2c-vel történő próbálkozásom esetén). PIC18 esetén azonban célszerűbbnek látszik a "fősodor" követése (ráadásul a C18 legálisan ingyenes). Idézet: „Ha esetleg lesz benne egy C18 - CCS összehasonltás,” Nem, ilyen nem lesz. Idézet: „PIC16 esetén nincs "gyári" C fordító” A Microchip megvette a Hi-Tech-et, mostmár van bizonyos szempontból gyári fordító.
Legalábbis reméljük, hogy arrafelé haladnak a dolgok...
Az MPLAB 8.15-tel települő változattal egyébként voltak gondjaim, mert csak rendszergazda jogokkal akart működni, ami nálam kizáró ok a használatra. Idézet: „Régebben a CCS optimalizáltságát is dícsérték, bár ez simán lehetett marketing fogás.” Hát, lehet. Én írtam már át PIC16-ra programot CCS-ről Hi-Tech-re és az utóbbi lényegesen kisebb kódot kreált.
Itt jártak a CCS-es fiúk és bedobták a 4.093 upgradét a crg filékkel együtt. Hátha érdekel valakit.
sysy Bővebben: Link
Most ezt mééé csinálja nekem, ha fordítani szeretnék?
Idáig nem nyavajgott. Idézet: „Most ezt mééé csinálja nekem, ha fordítani szeretnék? Idáig nem nyavajgott.” Lejart a demo valtozat proba ideje... Most van az, hogy ha tetszik a termek vedd is meg...
Csak negyvenezer...
Írok a jézuskának! Hátha kiszorítja a konyhapénzből. Vagy belőlem a szuszt.
Na, egy időre feladom.
Megyek sütök valamit bánatomban. Újra telepítettem minden, de csak keresi a reg. DLL-t. Úgy gondolom, hogy mindent előírás szerint csináltam, de nem jó mégsem. - Csináltam egy PICC könyvtárat a Program Files-be. - Bemásoltam a .crg fájlokat. - Majd az info_install szerint a megfelelő sorrendben telepítettem a fájlokat (4.084 verzió) Ennek ellenére természetesen kereste a crg-ket, majd bemásoltattam a programmal. Na, ezután kell neki a DLL. Mit csináljak? Hol keressem?
Sziasztok!
18F4620- as mikrokontrollerrel próbálom elmenteni az EM 406 os GPS által küldött NMEA mondatokat. A GPS-t kipróbáltam egy uart-usb átalakító segítségével a számítógépen és jól működik, folyamatosan küldi a karaktereket. Kezdésnek írtam egy olyan programot CCS C ben, ami a számítógépről küldött karaktereket elmenti, majd egy adott elemszám után kiírja. Ez is jól működik. Amikor azonban ezt a GPS által küldött karakterek mentésére szerettem volna használni az első 2 karakter után beragad az UART. Akárhogy próbáltam mindig csak $P jelenik meg. CCS C-t használok a szokásos #use rs232... direktívával, ide beírtam az ERRORS -t, amely állítólag újraindítaná az UART-ot, ha túlcsordul a karakter a bemeneti tárolóban, de ez sem segít. A karakter beolvasására a getc()-t használom. Kérlek titeket, ha van bármi ötletetek osszátok meg velem!
Sziasztok! Egy alap segitséget szeretnék kérni!
Letöltöttem a CCS PIC Compilert. Hogyan tudom alágyógyitani a PicKit-2 programozót? Létezik a programhoz magyar nyelvű doksi? (Az angol megvan.)
Szerintem sehogy. A CCS-t tudod beépíteni az MPLAB alá, az MPLAB pedig kezeli a Pickit2-t. Vagy van külső programja a Pickit2-nek, azt tudod használni, ha nem kell debug.
Van PicKit-2 programmer, (lehet hogy nem erre gondoltál..) azt hogyan kell alágyógyitani hogy az MPLAB ne kelljen?
Mint írtam, szerintem a CCS alá nem lehet beépíteni a Pickit2-t. Link
Pontosan csakis úgy tudod használni, ahogy Potyo írta. Így összeállítva egy jó szerszámot kapsz. Nem tudok magyar doksi fordításról (időnként én is örülnék neki )
Idézet: „Van PicKit-2 programmer, (lehet hogy nem erre gondoltál..) azt hogyan kell alágyógyitani hogy az MPLAB ne kelljen?” A PICkit2-nek van sajat szoftvere, egyszeruen a CCS altal leforditott HEX-et meg kell azzal fogni es raprogramozni a PIC-edre. Ezt vagy manualisa teszed meg, vagy pediig van olyan opcioja, hogy ha a HEX valtozik akkor a PICkit2 szoftvere azt eszre veszi es automatan mar gyogyitja is ra a celaramkorodre... Debuggolni azonban nem hinnem, hogy lehet a CCS+PICkit2 parossal.
Ott van potyo leírása. CCs-t berakni az mplab-ba és akkor debugolni is tudod.
Igen, lattam, koszonom, csak arra reagaltam, hogy MPLAB nelkul hogy lehet a PICkit2-t hasznalni CCS-sel.
Köszönöm a korrekt, kimeritő válaszod! Időközben rájöttem a megoldásra.
Sziasztok
Valaki meg tudna szánni egy rotary encoder rutinnal (sima A+B verzió, nem optikai) ami nem használ megszakítást? (CCS C-ben) Amit írtam bizonytalan, mint a kutya vacsorája... (a delay sem segített)
Én próbáltam megírni megszakítás nélkül , sehogy sem sikerült.
Ha akarod megkeresem azt ami Bport 4-7 megszakitással müködikik.
Szerintem a delay az, ami csak ront a helyzeten... Hogy néz ki a kódod?
pepe!
Megköszönném. Sajnos, konfliktom van az ext_inttel. (valamit nagyon nem vettem észre). Megnézném a te kódodat, hátha... Potyo mester! Itt van:
Itt van pár rutin.
Azt amit kerestem nem találtam de ha jól emlékszem ezek is müködnek.
Sziasztok!
CCS alatt próbálkozok egy 18f4580-as PIC-el, és egy HD44780-kompatibilis 2*16-os LCDvel, de sehogy se akar működni PicKit2-vel próbálkozok, MPLAB segítségével. Ez a programom: #include <18F4580.h> #FUSES HS //High speed Osc (> 4mhz) #FUSES MCLR //Master Clear pin enabled #use delay(clock=40000000) #include < lcd.c > void main() { delay_ms(100); lcd_init(); delay_ms(100); while (TRUE) { printf(lcd_putc, "\f"); delay_ms(100); printf(lcd_putc, "Hello!"); delay_ms(100); } } Amikor lefuttatom a programot akkor elvileg ki kéne írnia a "Hello!"-t 200ms-onként. Ennek ellenére, mindig más-mást ír ki, van olyan amikor jól kiírja a Hello!-t van úgy, hogy Hellof! van úgy hogy csak egy felkiáltójelet látok, de olyan is, hogy semmit, vagy össze-vissza különböző karaktereket, és 1-2 stimmel csak. (ráadásul nem is oda írta ahova kellene) Bekötésem: D0 enable D1 rs D2 rw D3 Üres D4 D4 D5 D5 D6 D6 D7 D7 Kipróbáltam lassabb kristállyal is (4.433619 Mhz), akkor tökéletesen kiírja, mindig ugyan oda a szöveget, DE, minden karakter után kihagy egy szünetet. Amikor egy 10Mhz-esel próbáltam akkor megint összevisszaságokat írt ki. Próbáltam egy 16F877-es PICel is, és azzal is ugyan ezt produkálta. Nincs valami ötletetek, hogy mi lehet a probléma? Köszi előre is! Petika
Az RW-t ideiglenesen kösd le testre és úgy próbáld ki.
|
Bejelentkezés
Hirdetés |