Fórum témák
» Több friss téma |
cpp -> c++
Objektum orientált c-ben a forrás kiterjesztése. A hozzászólás módosítva: Ápr 25, 2015
Sziasztok.
Mplabot szeretném használni, azon belül is a c-programozást. Ha ez lehetséges, akkor le kell külön tölteni valami beépülő modult?
Az Mplab (a régi és az X is) beépítetten támogatja a C nyelvű fejlesztést. C fordítót külön kell telepíteni ha erre irányult kérdésed.
Igen erre. De azt hogyan, és honnan tudom telepíteni.
A Microchip Development Tools Home Page oldaláról kiindulva mindent megtalálsz.
1. MPLAB (X) IDE a fejlesztői környezet, azt kell előbb telepíteni 2. Compilers (XC8, XC16 és/vagy XC32) Az MPLAB 8 IDE és a fordítók régebbi (nem X) változatai már csak az archívumban találhatók meg. Pl. ezen az oldalon a Downloads Archive fülre kell kattintani. A hozzászólás módosítva: Máj 3, 2015
Köszi az infót.
Nem nagyon vágom még a pic-programozást, csak ismerkedem velük. Akkor úgymond mindegyik pic családhoz külön le kell tölteni a beépülő modulokat? És mikor melyiket programozza az ember, azt kell betölteni? Nincs egységes beépülő, ami mindegyikhez jó? Vagy melyiket érdemes? Bocsi, ha sok láma kérdést tettem fel. A hozzászólás módosítva: Máj 3, 2015
Még mindig nem értem mit értesz modulok alatt. A fordító az a tool ami a forráskódot lefordítja binárissá. A PIC-ek családokra vannak bontva, azokhoz külön-külön fordító jár.
Ha hardvert absztraháló kódot keresel (ugyanaz a kód forduljon több kontrollerre is) akkor a fordítókkal adnak könyvtárakat amikkel pld. UART-ot lehet nagyjából egyformán kezelni több proci között.
- Telepíted az MPLAB-ot
- Telepíted a C fordítót. Ebből több is van, van a 8, a 16 és a 32 bites PIC-ekhez. Elég azt, amilyen PIC családdal (hány bites) foglalkozni akarsz, de lehet akár mindegyiket is telepíteni. Az így telepített fejlesztő környezet már ismeri a különböző PIC-eket, neked egy-egy új projekt indításkor csak meg kell adnod, milyen típusú PIC-re akarod írni a programot, és persze ahhoz passzoló fordítót kell megjelölnöd a projektben. Betöltögetni nem kell már semmit.
Köszönöm mostmár kezdem érteni. Csak az előbb rosszul tettem fel a kérdést, és modulnak neveztem a fordítókat. Akkor semmi gond nem lesz ha mind a három fordítót telepítem. Utána már csak a megfelelőt kell kiválasztani. Ez egy kicsit azért nekem mint kezdőnek, bonyolultabnak tűnik így elsőre mint a Mikroc.
Idézet: Ennek történelmei okai vannak. Eredetileg a PIC10-12-16-hoz a Microchip nem is készített C fordítót. Később felvásárolta a Hitech céget, onnan lett C fordító ezekhez. De addigra már kész volt egy C18 fordító a PIC18 termékcsaládhoz, s egészen más alapokról kiindulva (GCC) készült fordító a dsPIC30/PIC24/dsPIC33 termékcsaládhoz (C30 néven) is, majd egy hasonló fordító a PIC32-höz (C32 néven) is. Ezekből lett összegyúrva az XC8, XC16 és az XC32, de egységes fordító egyhamar nem várható, mert pl. sem a C18, sem a HTC C nem GCC alapú, többek között ezért sem lehet egykönnyen összehozni a belőlük készített XC8-at az XC16-tal. „Ez egy kicsit azért nekem mint kezdőnek, bonyolultabnak tűnik így elsőre mint a Mikroc.” A hozzászólás módosítva: Máj 3, 2015
Ha az _XTAL_FREQ nincs definialva, akkor mas hibat kell adjon, hiszen, akkor ertelmetlen a sor:
us = (x)/(12000000/)|1; Viszont, ha az _XTAL_FREQ nagyobb, mint 12000000, akkor csinalhat ilyet.
Véletlenül kitöröltem módosítás helyett az előző hsz-t.
Viszont igazad van, tesztelés közben átírtam az xtal-t és úgy maradt.
Üdv!
Tudtok nekem linkelni egy működő programozó szoftvert? Vagy az Mplab x-hez c nyelvű kiegészítőt. Már letöltöttem rengeteg verziót és mind demo.
Idézet: „Már letöltöttem rengeteg verziót és mind demo.” Nem demo, hanem "evaluation" verzió. Ez azt jelenti, hogy 60 napig PRO kiadásként használható, utána pedig a korlátozott optimalizálású ingyenes verzióra vált. Ha ez zavar (vagy komolyabb célra kell), a ChipCAD-től megveheted a Standard vagy a PRO változatot. De arra készülj fel, hogy "nem két fillér, de két tallér kell ide pajtás"!
Sziasztok!
18-as PIC-el szeretnék SD kártyát olvasni és wav fájlból zenét lejátszani. Láttam, hogy a Microchip-nek vannak Microchip Libraries Application-jai, de ezekből csak a régebbiek támogatják az SD kártyát 18-ason, vagy láttatok-e valami lehetőséget, ami elkerülte a figyelmemet ?! Bővebben: Link A 2013.06.haviban még van SD kártya használat a 18-asokra, de az újabb verziókban már nem...! Használt valaki ilyet, ill. tudnátok valami iránymutatást adni ?! Előre is köszönöm a segítséget!
Szia!
És mi a baj a 2013-assal? szerintem használd nyugodtan, én is ezt használom, bár pic32-ön mplab 89x alatt
Szia!
Köszi a hozzászólást. Kevés PIC-re van elkészítve és nem tudom, mennyire korrekt a file kezelés, illetve, mennyire gond valami másik 18-asra "átgyúrni" ...? Zene lejátszásához kellene és mennyire dolgozik gyorsan 18-ason, ez is fontos lenne számomra! A 24-es és nagyobb PIC-reknél úgy láttam, hogy sok lehetőséget leprogramoztak ( nyilván több a lehetőség ), viszont a 18-asokkal megálltak, lehet, hogy kissé zsákutca ?! A hozzászólás módosítva: Jún 10, 2015
18ban kevés a flash, kevés a ram, lassú.
Szerintem ha nem használsz valami cél hang ICt akkor nem fog menni. Pl a VS1011 tud mp3/wav-ot
Igen, ilyenre gondoltam, köszi ! Ezek szerint megoldható, elég a sebessége és a memóriája !
Üdvözletem az Uraknak!
Némi segítségre lenne szükségem. Adott egy MCP3425A típusú 16bites ADC. A rendelkezésre álló proci egy PIC24FJ64GA004. A problémám az, hogy nemigen sikerül életre keltenem az ADC-t. Kaphatnék némi segítséget? PIC-ekben nem nagyon vagyok jártas, mint ahogyan a C nyelv rejtelmeiben sem. AVR-eket proramozok inkább basic-ben.
Az ADC a proci 1-es és 44-es lábaira van akasztva a megfelelő módon (ellenállások a helyükön). A hozzászólás módosítva: Jún 19, 2015
Egy (DsPIC -es FFT) példa kódban az alábbi constans tömb definíciót találtam. Nekem kicsit bonyolultnak tűnik. El tudná valaki magyarázni hogy kell értelmezni?
A hozzászólás módosítva: Júl 3, 2015
Sziasztok!
A következő kódot írtam pic12F628-ra ccsc-ben. Most ismerkedem a megszakításokkal, de nem nagyon akarnak működni. Pl.: ha a timer0-t vagy timer1-et vagy timer2-t használom nem működik a megszakítás, de ha a timer0-t használom rtcc névvel akkor igen, de ha mellette a külső megszakítást is használom ismét nem működik. Mi lehet a baj? Másik kérdésem az, hogy a külső megszakításnál, hogyan lehet beállítani, hogy pl.: csak a 0. láb állapotváltozása generálja a megszakítást? A segítségeket köszönöm.
Sziasztok!
Van egy néha állandó, néha random módon változó változóm, "uInt Deg" ami egy szög érték, 0-359°. Ezt átadom egy fg. paraméterként. Szeretném, ha ezt az értéket "követné" egy másik, olyan módon, hogy maximum 45° -al térhet el az előző értéktől. Ez lenne a fg. visszatérési értéke. Tehát a cél az, hogy ha nagyot ugrik Deg változó, akkor fg. hívásonként 45° -os lépésekben kövesse azt a visszatérési érték, majd utolsó lépésben a maradék. Nem tudom ez így mennyire érthető.. A gond ott van, hogy ennek "nullátmenetnél" is működnie kéne, tehát ha az előző visszatérési érték 340° volt, a új fg. paraméter pedig 20°, akkor a simán visszatérhet a 20°-al, mert a 340° és a 20° között kisebb a különbség mint 45°. (Ne menjen körbe) Nem konkrét kódot várok, az algoritmust nem találom.. Ilyesmivel próbálkoztam eddig:
Sziasztok
Hát ahogy nézem nagyon alapkérdés lesz a többihez képest Első a villogonál azt szeretném hogy 5x(ki-be) vilog és tovább lép (gyorsaságot hogy lehet beállítani??) Hát ez egy picit bonyolult lesz a "jatek2" Első forral azt szeretném hogy hányszor menjen végig az anim és persze milyen gyorsan. A második for az egyszerűsítés képen van ott mert nem szeretném használni CRT+c CRT+v. Ha breaket nem használom ismétel és nem lép tovább(for ciklus végtelen esz) ezért így kellet megoldanom de sztem erre van más megoldás. Köszönöm előre a segítségeteket.
1.- Ez így totál hiányos, értelmetlen és működésképtelen.Kicsit több info kellene, erre így senki sem fog válaszolni.
2. - Ha valamit 5x akarsz, hogy lefusson azt ugyebár ciklusba célszerű szervezni. Gyorsaságot időzítéssel lehet módosítani. Időzítésre több megoldás létezik, a legegyszerűbb a delay(), delayms() és hasonlók (fordítótól függ), a legjobb pedig a timeres megszakításos módszer. 3. - A másodiknál fogalmunk sincs mit akarsz, a CRT egy monitor típus, az általad belinkelt kódrészletben semmi jele nem látható. A for jó hogy végtelen lesz mivel olyan feltételt adtál meg Idézet: „0<=5000, 0<2” Ezek mindig igazak, de ha mondasz példát mikor nem teljesül akkor megemelem a nem létező kalapom. Továbbá ez alapján a jatek változó sosem lesz 2, vagy ez csak tesztelésre van? Ha a függvényben átállítod a jatek változót az vajon mitől adódna át a főprogramnak, merthogy a függvény void típusú, nincs visszatérési értéke. Ezeket gondold át aztán jelentkezz kicsit több infoval és lesz aki válaszol, mert van ám itt nálam sokkal nagyobb C guru.
Hát meg van a hiba és jól működik
Kedves usane Rávilágított a problémára. Kis figyelmetlenség 0<2 helyet i<2 kell
Akkor gratulálok, ám abban a for-ban "e" változó van, az "i" az első for-ban van, ne keverd össze.
A hozzászólás módosítva: Aug 18, 2015
|
Bejelentkezés
Hirdetés |