Fórum témák

» Több friss téma
Fórum » PIC programozása C nyelven, C-Compiler
Lapozás: OK   1 / 153
(#) histu1985 hozzászólása Feb 11, 2006 /
 
Sziasztok!

Az lenne a kérdésem, hogy tudna-e adni valaki leírást vagy linket PIC C programnyelven való programozásáról. Ehhez a programnyelvhez egyáltalán nem értek. De az assemblyhez igen.
Nem tudom, hogy mennyire könnyíti ez meg a dolgomat, de majd meglátjuk.
(#) mspike válasza histu1985 hozzászólására (») Feb 11, 2006 / 4
 
Hello, a microchip honlapján találsz hozzá. Keress rá a keresőjükben (C18). Ezzel (mplab c 18) a 18-as pic családot tudod C-ben programozni. Amibe jó az az, hogy tud kezelni 16bites regisztereket egybe. (int típus), meghát ugye ott vannak a ciklusok és a többi... Egyszóval egy magasabb szintű nyelv mint asm, jóval kényelmesebb tud lenni, és például ha TCP/IP-vel akarsz foglalkozni akkor jóval egyszerűbb ebben megírni. Szerintem a feladat komolyságától függ. De én most erre esküszök mert tényleg kibővíti a kezdők látását sokfelé... Ugyan akkor C-hez érteni kell, megtanulni magadtól lehet, hogy nem egyszerű... Amit hátrányként felrónék neki, hogy a megszakításokat elég "hibrid" módon kezeli, de kezeli és ez a lényeg. Ha kell a C18 privibe üzenj.
(#) histu1985 válasza mspike hozzászólására (») Feb 11, 2006 /
 
Hello.

És pl. 16F877 vagy 16F876 típusúakra nem lehet írni C nyelven?
(#) KillCool válasza histu1985 hozzászólására (») Feb 11, 2006 /
 
Hy! Szeretnék foglalkozni PIC-ekkel és nem tudom, hogy egy fullosan kezdőnek mivel kéne kezdeni.
Programozás területén kéne valami leírás, amiből tanulhatnék...
Kezdetnek elég lenne pár LED különböző villogásának állítása meg ilyesmi.

Előre is köszönöm segítségeteket!
(#) zaik válasza KillCool hozzászólására (») Feb 11, 2006 /
 
Itt a HE-n is van egy ilyen kapcsolás. A PIC-ekről kezdőknek. Illetve ha jól tudom, a Hobby Elektronika 3. füzete erről fog szólni.
(#) mspike válasza histu1985 hozzászólására (») Feb 12, 2006 /
 
Elvileg van a 16-os családhoz is C fordító, de azt úgy tudom nem a microchip csinálja... (de mplab-ba beépül az is, talán Hi-tech). Gugli a jóbarátod ilyen téren, a kulcsszó PIC C-compiler
(#) histu1985 válasza mspike hozzászólására (») Feb 12, 2006 /
 
Ok de most én konkrétan valami leírást keresnék ahonnan programozni tudnék megtanulni c nyelven. Gugliztam már eben a témában de eddig semmi használhatót nem találtam.
(#) Inhouse válasza histu1985 hozzászólására (») Feb 13, 2006 /
 
Még soha nem programoztam PIC-et, de el fog jönni az idő, amikor szükségem lenne rá. Ahogy láttam, alacsonyszintű programozásuk van, az assamblyhez nem értek.
Létezik valamilyen magasabb szintű, emberbarátibb programnyelvű változat a C-n kívül? Pl. lehetne úgy programozni, mint egy basic programot?
ha valami akkor
ciklus
stb...

Üdv
Inhouse
(#) Pavel válasza Inhouse hozzászólására (») Feb 13, 2006 / 1
 
Hi!

Pic - et lehet Basicben is programozni!! Egyszerűbb programokat lehet vele írni sőt.... még komolyabbakat is ! Ha kell jó basic valkinek akkor küldjön e-mailt v. írjon a privibe! vagy ide ! Van 16 - os és 18- as sorozatú PIC - hez is! Ami a 18 - as hoz van az tényleg profi!
(#) Pavel válasza Pavel hozzászólására (») Feb 13, 2006 /
 
van C - fordítom is! 16 -os és 18 as PIC - hez cak az Linuxos (SDCC)! De szerintem nem rossz!
(#) Frankye válasza Pavel hozzászólására (») Feb 13, 2006 /
 
Na! Ez engem érdekelne! A Basicet anno (boldogult C=64) koromban szerettem, és most rávettem magam, hogy PIC-ezni is elkezdek!
Szal hálás lennék, ha +osztanád velem is a Basic progizódat!
(#) st3 válasza Frankye hozzászólására (») Feb 13, 2006 /
 
Sziasztok!
A basic fordítónak én is örülnék! Ha lehetőség van rá, kérlek, oszd meg velünk.
Előre is köszönöm!! :worship:
(#) Pavel válasza st3 hozzászólására (») Feb 13, 2006 /
 
Hi

Küldtem e-mail - eket gondolom kitaláljátok jó munkát, és jószórakozást! ha nem kaptátok meg a leveleket szóljatok
(#) Csapajev válasza st3 hozzászólására (») Feb 13, 2006 /
 
Sziasztok,

PIC-hez van:

C-
Pascal
Basic
Forth

és még ki tudja milyen fordító. A bökkenő csak az, hogy nem feltételenül az összes PIC-et támogatják.

A Microchip saját C18-as fordítója azért jó, mert a PIC18-as család utasításkészlete és a fordító egymásnak lett kitalálva és optimalizálva. Igy ha valaki komolyan akar PIC-ezni, akkor célszerű ezt választania. A fordító - szemben a MPLAB-bal - nem ingyenes. A diák verzió azonban 60 napig működik, és hát utánna újból le lehet tölteni. A diákverzió némi optimalizálást leszámítva megegyezik a teljes verzióval.

A HI-TECH C-fordítójának is van minta verziója, az azonban csak néhány kiválogatott PIC-et képes kezelni. A teljes verzió persze mindent.

A Mikroelektronikanak van microPascal nevű Pascal fordítója, az teljesen korrekt.

A Basic-kel az a baj, hogy az alapfilozófiája szerint az interpreter és nem fordító. (Lásd C=64!) Ha valaki ilyent akar, az a Parallax bélyeg-számítógépeit tudom a figyelmébe ajánlani.

A magaszintű programnyelveknek van azonban egy hátulütője: a PIC programozásához magát a PIC-et, illetve annak hardverét is meg kell ismerni! A PIC nem egy mikroprocesszor, hanem egy mikrokontroller, ami azt jelenti, hogy egy kapcsolásba beágyazva kell üzemelnie. A PIC-ben a hardver és a szoftver meglehetősen kényes egyensúlyban van. A PIC lábacskái elvileg PORT-okba vannak szervezve, de hogy mi jön ki meg mi megy be azokon a lábakon, az nagyon sok mindenen múlik. Ha tehát valaki meg is akarja érteni, hogy mi is történik (ami azért nem árt), akkor ismernie kell a hardvert, s ahhoz azért a legjobb út az assembly. Assembly-ben pedig rengeteg mintapélda van, még talán magyar nyelven is.

Azonkívül a C nem olyan borzasztó nyelv, mint ahogy hírlik. És a C-re sokkal több mintaprogram van, mint bármi másra.

A 8királynő felkészítő példát azt asssembly-ben meg C-ben ismertetem, úgyhogy aki akar, meg tud C-ül tanulni.

Üdv

Csapajev
(#) Pavel válasza Csapajev hozzászólására (») Feb 13, 2006 /
 
Hi
microPascalnal maradva van microBasic is és szerintem az ugyan olyan jó de a legjobb A Pic Basic Pro!! De szerintem ezt mindenkinek magának kell eldönteni, hogy mit használ, de basic - ben is jó programokat lehet írni!!( szerintem! de ez csak az én meglátásom ) Én elég sok fordítót kiprobáltam,, és abban egyetértek hogy a C18 a legjobbak között van, a HI-TECH -es nekem annyira nem tetszett, de én a Pic Basic Compilert is a legjobbak közé sorolnám!!
(#) histu1985 válasza Pavel hozzászólására (») Feb 13, 2006 /
 
Sziasztok

Köszi a hozzászólásokat, nagyon hasznosak voltak, és ahogy észrevettem nem csak nekem.
Engem valami konkrét leírás érdekelne pic c nyelven való programozásáról. Tehát nem a compiler ismertetése, hanem a programnyelv használata. A legjobb, ha az alapoktól kezdve minden benne lenne. Példaprogramok, magyarázat, stb. Tehát mint egy könyvben. Változók deklarálása, ciklusok, elágazások, meg minden ami ide tartozik.
Ha valaki könyvcimet tud az is jó lenne.
(#) Gory válasza histu1985 hozzászólására (») Feb 13, 2006 /
 
Én a MikroBasic-re szavazok ha Basic-ről van szó. Már csak azért is mert ritka jó Examples könyvtárral rendelkezik, azonkívül a helpjében kapcsolások is találhatók az egyes funkciókhoz. A bonyolult perifériák kezelése is néhány sorral elintézhető. Ez eléggé lerövidítiegy prototipus összehozását.
(#) Topi válasza Gory hozzászólására (») Márc 31, 2006 /
 
Na elővesszük...

Egy olyan problémába ütköztem a napokban, amit szomorúan vettem észre, hogy csak c-ben lehet megírni. ill biztos lehet assemblyben is, de ehhez az assembly tudásom kevéske...
Szóval ráfeküdtem a keresőre és találtam egy nagyon jó C fordítót:
SourceBoost.com-on van fennt. Maga a C fordító ingyenes (2bankot lehet lapozni max). + működik együtt az MPLAB-ba integrálva ICD2-vel, szóval úgy néz ki hogy jó.
Csakhát az a fránya regisztráció... Ha valaki "tud valamit" a regisztrációval kapcsolatban, akkor szóljon. Remélem érthető voltam mit keresek...
Mert szerintem nagyon király... Sőt még képes lennék 4E forintot kifizetni licencre.. csak licence nélkül nem próbálható ki a debugnál sok plugin (lcd kijelző, analóg ki/bemenet, logic analyser, meg sokminden)
Eddig ilyen apró rutin próbákra az Oshonsoft cuccát használtam, csak hát abból hiányzik az, hogy forrást debugolsz miközben látod az outputot.

szóval Ha valaki ismer hasonló c fordítót akkor azt megköszönném, ha nem tartaná magában

Köszi. Üdv. Topi.
(#) dilan válasza Topi hozzászólására (») Márc 31, 2006 /
 
Mi az a dolog, ami assemblyben nem megy?
Sztem assemblyben érdemesebb programozni :yes: (C64 óta vagyok ezzel így)
(#) Topi válasza dilan hozzászólására (») Márc 31, 2006 /
 
Egy LCD kijelzőn kell megjelenítani egy többszintes menuredszert. Azonbelül a cuccnak kell tudni kezelni CF kártyát, infrán kiadni adatot - kommunikálni soros adat formájában egy másik pic-el. USB-t vezérelni...
Szóval ebből akármilyen hülyén hangzik, a menurendszer megvalósítás és az USB fogott ki rajtam. Az USB C nyelven kb 10 sor. (+már megírt unit) assemblyben meg csak 49K az asm file.

szvsz én jobban szeretem az assembly-t. Sőt továbbra is assemblyben fogok pic-et programozni, de ezt most C-ben akarom megírni. Úgylátszik ez abban egyszerűbb...
(#) h482871 válasza Topi hozzászólására (») Márc 31, 2006 /
 
Sziasztok látom itt nagy beszélgetés folyik a programnyelvekről, pic programozásról stb. és vannak itt kezdő programozó kollégák is, ha vkinek kellenek egyetemi C v. assembly, jegyzetek az szóljon, me van egy rakással ilyen cuccom!
(#) Tomee válasza h482871 hozzászólására (») Márc 31, 2006 /
 
Hát szerintem azt itt mindenki szivesen venné!
(#) dilan válasza Topi hozzászólására (») Ápr 1, 2006 /
 
Valóban, ez a feladat magas szintű nyelven megvalósíthatóbb, mint assemblyben. De azért azt sem kell elvetni. Igazából az assembly nem nehéz, kevés dolgot kell tudni hozzá (utasításkészlet, címzési módok, regiszterek, memóriakiosztás - bár ez utóbbi ismeretére nemcsak assemblynél van szükség) és ezt a kevés dolgot kell mindenféle, a célnak megfelelő kombinációban összeállítani.
Az első pic amellyel foglakoztam egy 16f819 volt. Ennek az utasításmemóriájába 2k utasítást lehetett beletenni, így egy magasabb szintű nyelvben megírt kód aligha fért volna bele.
A C fordítós problémára sajna nemtok orvosságot.
(#) Topi válasza dilan hozzászólására (») Ápr 1, 2006 /
 
Már jópár pic programot írtam assemblyben, így nem mondanám magamat kezdőnek... Én jobban szeretem az assemblyt de most erre C-t fogok használni.
Egyébként ez a sourceboost nem pakolja tele szemétel. Fordításnál csinál egy assembly-t és azt utánna hex-be, a sima asm fordítóval. Az assembly kód nincs tele hülyeségekkel. Elég tömören "fogalmaz" .
(#) Gory válasza Topi hozzászólására (») Ápr 1, 2006 /
 
A világért se kötekednék, de miért nem használod a microchip valamelyik C fordítóját? Vagy azokkal valamit nem lehet amit ezzel a sourceboost-al igen?
Ha meg szabad kérdezni mit alkotsz ami ennyire komplex és CF,USB,LCD meg minden egyben?
Lehet hogy már párszor feldobtam de MikroBasic-et nézted? Van benne usb, mindenféle memóriakártya meg LCD könyvtár is. Ha nem kell feltétlen a C.
(#) Frankye válasza Topi hozzászólására (») Ápr 1, 2006 /
 
Pontosan mi a neve a proginak? Hátha tudok hozzá "valami okosat" lelni...
(#) Topi válasza Frankye hozzászólására (») Ápr 1, 2006 /
 
Én nem szeretem a Basic nyelvet. Tudok benne programozni, de nem szeretem.
Egyébként ez a SourceBoost nevű progi is CCS fordító... Nem tudom az embedded c fordító milyen az mplabban, de ebben van lcd kijelző szimulálás, voltmérő, analóg bemenet szimulálás, matrix billentyűzet, meg még 1000 féle dolog.

A programnak meg ez a neve: SourceBoost IDE [link=http://www.sourceboost.com/]http://www.sourceboost.com/[/link]
(#) jon@ válasza h482871 hozzászólására (») Máj 7, 2006 /
 
Sziasztok

Most ismerkedek a C18 al. Tud valaki segíteni nekem abban, hogy mi a baja ezzel a sorral:
  1. OpenADC(ADC_FOSC_RC & ADC_RIGHT_JUST & ADC_0_TAD & ADC_CH0 & ADC_INT_OFF & ADC_VREFPLUS_VDD, 1 );

Egy 18F1320 ra lenne a program ést azt írja ki fordításkor h túl kevés paraméterrel hívom a függvényt. Egy csomószor átnéztem már a C18 referencia doksiban.
(#) jon@ válasza jon@ hozzászólására (») Máj 7, 2006 /
 
Na megoldódott. Még egy ADC_VREFMINUS_VSS is kellett oda.
(#) Muri válasza Topi hozzászólására (») Jún 24, 2006 /
 
Sziasztok!
Nem rég keztem el PIC-elni, megismerkedtem az assembly-vel.
A "Processzorvezérelt zöldség tároló" cikk olvasása közben találtam egy ilyen mondatot:
Idézet:
„A PIC-be égetendő programot CCS-ben írtam, C nyelven. Meg lehetne írni Assembly-ben is, de nekem most egyszerűbb és gyorsabb volt C-ben.”

Egyszerűbb és gyorsabb, ezért úgy döntöttem kipróbálom.
Nyitottam volna egy ilyen témát, de nem nyitottam, mert rátaláltam erre.
Egy kis olvasás után letöltöttem a SourceBoost IDE programot. Ezzel próbáltam írni egy egyszerű LED-villogtatót. Bár a környezet nagyon szimpatikus, sajnos nem sikerült.
Ha valaki tudna segíteni, segítsen!
Előre is köszönöm!
Következő: »»   1 / 153
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.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