Fórum témák
» Több friss téma |
Sziasztok!
A segítségeteket kérném. Szeretnék én is a mikrovezérlőkkel foglalkozni, de csak hobbi szinten. Nincs tapasztalatom, viszont C++, PHP, HTML és valamennyi Java(Script) programozási nyelv ismeretem van. Nem vagyok profi, de jó logikai készséggel rendelkezek, tehát feltalálom magam. Mire van szükségem, hogy egyáltalán hozzákezdhessek a gyakorláshoz próbálkozáshoz? És egyáltalán PIC vagy AVR? Ilyesmiket szeretnék megoldani, ha már persze halad a dolog, hogy pl. ventilátor vezérlése hőmérő alapján, vagy szelepek (vákuum, stb), relés kapcsolások elvégzése különböző logikai feltételek teljesülése esetén, mindezek kijelzése egy LCD-n, stb. Persze nem mindezt máról holnapra gondoltam, mert nekem az is sikerélmény lesz ha egy mikrovezérlőn keresztül megoldom azt, hogy egy gomb megnyomására fel vagy lekapcsoljon egy LED. Milyen könyv vagy hasonló létezik, ami végigvezetne a kezdetektől? Várom az ötleteket!
A PIC sokkal könnyebben beszerezhető Magyarországon, emiatt errefelé többen is foglalkozunk vele. Az AVR-hez sokkal jobb fejlesztési környezet van (Arduino), külföldön népszerűbb. Egyébként csak a rajongók szerint vannak különbségek köztük, de az már hittan.
![]() Én speciel PIC-ekkel dolgozom, pusztán azért, mert ez akadt anno a kezembe és megszoktam. A tanulást itt lehet elkezdeni: PIC könyv 16-os típusokhoz Itt meg folytatni: PICCOLO Project Nyomtatott könyveket is lehet kapni, de azokból képtelenség megtanulni bármit. Minden tiszteletem a szerzőké, amióta egész jól otthon vagyok a témában, értem is, amit írnak. Korábban ez nem így volt. Csak hát most már késő. Vagyis a könyveik szakmailag roppant korrektek, de a szerzők már olyan régen voltak kezdők, hogy halvány fogalmuk sincs arról, hogyan kéne őket megtanítani PIC-et programozni. ![]() Klasszikus szakkönyv-betegség: nem a felhasználónak írunk, hanem a szakmát akarjuk elkápráztatni. ![]() Ezen a két weboldalon jól fogják meg a témát. Elsőre minden úgyis kínai lesz, de azonnal bele kell kezdeni valami konkrét projectbe és nagyon gyorsan kivilágosodik. Később újra sötét lesz, amikor a errata-kat is bele kell kombinálni egy-egy furmányosabb fejlesztésbe, de az már a haladó szint. AVR ügyben inkább a másik topicban segíthetnek.
Oké, mire van szükségem? Kezdőcsomag félére gondolok...
Idézet: „Az AVR-hez sokkal jobb fejlesztési környezet van (Arduino).” Miért jobb? Nem akarok vitázni rajta pusztán kiváncsiság. PIC támogatottsága szerintem sokkal jobb. AVR-hez arduinon kivül nem olyan könnyű itthon bármit is szerezni, PIChez meg rakás fejlesztőpanel létezik, és be is szerezhetőek, utánépíthetőek. bencebratyo: Szerintem a fentiek miatt jobb PIC-el kezdeni. Aztán jöhet az AVR és majd eldöntöd mi tetszik jobban, bár az ember a szokások rabja, tehát meg fogsz maradni annál amivel kezdtél. Ha venni akarsz valamit és nem építeni, akkot egy PICkit-et javaslok. Van starter kit-je az lehet, hogí elég kezdésnek, bár ha jártas vagy az elektronikában akkor jobbat is tudsz építeni, mert azon csak 4 LED, 1 gomb, meg egy poti van azt hiszem. Van egy kicsit többet tudó 44 pines PIC-el szerelt debug express, azon 8 LED van, gomb, poti. Létezik sokat tudó fejlesztópanel, de az baromi drága, és ebből az 1 szempontból lehet, hogy jobb az AVR mint kezdet, mert az arduino olcsóbb. Olvasgass bele ebbe a topikba ha PIC-el akarsz foglalkozni és ki fogod találni mit vegyél vagy ne vegyél. Üdv. A hozzászólás módosítva: Nov 13, 2013
Először is kell egy programozó. Pickit2 vagy Pickit3. Az első megbízhatóbb, a második debuggernek is használható. A 2-eshez jó kis klónok vannak a cikkek között és a topicjában olcsón. Inkább azt ajánlom.
Mindenképpen érdemes leszedni az MPLAB-X-et. Használd a wizardokat, könnyebb lesz elindulni. Egy kis angol nyelvismeret mindenképpen kell. A programhoz is, az adatlapokhoz is. Nem bonyolutabb, mint pl. egy Visual C fejlesztői környezet. Választhatsz assembly és c fordítókat, érdemes mindkettőbe belejönni, mert sokat kell C-ből is visszanézni az assembly alapokba. Az assembly alapból benne van, az XC8 nevű fordítót le kell tölteni onnan, ahonnan az MPLAB-ot leszeded. Ha a PICCOLO könyvéből tanulsz, akkor ahhoz kezdetnek kell egy PIC18F14K50 és az a környezet, amit ír a szerző. Vannak mindenféle demo boardok (kisérleti panelek), de szerintem roppant drágák és mérhetetlenül feleslegesek. Inkább használd a jó öreg dugdosós próbapanelt. Ha nem akarsz sokat kínlódni és egyből sikerélményre vársz, szedd le a MikroC demo programját. Rendkívül emberbarát és kiválóan dokumentált C fejlesztői környezet /csak drága a teljes verzió ![]() Ebben az esetben nézegesd a példákat és onnan válassz rokonszenves PIC-et. PIC-et kapsz a Hestore-ban, vagy a teljes választékot a disztributornál. De mielőtt elkezdesz vásárolni, olvasgass! Nem baj, ha az elején nem minden érthető, később szépen összeáll. Sok sikert!
Az Arduinonál arra gondoltam, hogy sokkal könnyebb vele a kezdők sorsa. Később már persze jönnek a gondok, de ez természetes.
A MPLAB-X-ről meg nem tudok semmi olyat mondani, amit ne moderálnának ki azonnal. ![]() De az is tény, hogy a Microchip doksijai abszolút felső kategóriásak. Nem is igen láttam még hasonló szintet. Igazából a PIC-et ajánlom magam is, board nélkül, csupasz próbapanelon, Pickit2-vel és sok fantáziával.
Nagyon szépen köszönöm a segítséged! Kipróbáltam és működik! Még egyszer köszönöm!
Sziasztok!
Szeretnék egy kétfázisú (bifázisos) négyszögjelet előállítani PIC mikrovezérlő programozásával. Az egyfázisú négyszögjel előállításával nincs baj, de a kétfázisú négyszögjel megvalósítása nem sikerül. Hogyan tudnám ezt megvalósítani C nyelven? Válaszokat előre is köszönöm! A hozzászólás módosítva: Nov 13, 2013
Szia!
1. A négyszögjel frekvenciájának kétszeresével készítesz egy időzítőt.(pl.timer2 megszakítás) 2. veszel 2 regisztert az egyik értéke b' 11001100' a másiké b'01100110' 3. Amikor az időzítő lejár lejár, körbeforgatod őket 1 bittel, és a 0. vagy a 7. bitet kiteszed a kimenetre. üdv: Foxi A hozzászólás módosítva: Nov 13, 2013
Szia!
Nagyon szépen köszönöm a válaszodat! Remélem sikerül így megoldanom.
Sziasztok! Leszedtem az MPLAB X-et, de valamiért nem kommunikál a pickit2-mmel. A pickit épített, nem gyári, okozhatja ez a bajt?
A PICKIT firmware-jét próbáltad már frissíteni?
Én az MPLAB-X-et használom gond nélkül. Volt már olyan eset ahol jobb volt mint a sima,de fel van telepítve az is.
Hol frissítsem? Pickit2 programerrel gond nélkül működik. Ezt a hibát kapom MPLAB X alatt: "The programmer could not be started: Could not connect to tool hardware: PICkit2PlatformTool, com.microchip.mplab.mdbcore.pickit2.PICkit2DbgToolManager"
Ugye nem hagytad nyitva a Pickit saját programját? Összeakad az MPLAB-X-el és pont ez a hibaüzenet. Néha olyankor is, ha nem támogatott pic van rajta. Akkor meg különösen, ha nincs is rádugva a pic-re.
Tisztelt szakik. Egy PCM 1792-t üzemeltem be és elakadtam a konfigurálásával. Az a gond, hogy 16 bites adatot kellene küldeni neki SPI-n, de ez valahogy nem akar összejönni, akárhogy is próbáltam. Kérdés, hogy, hogy kell SPI-n egybefüggő 16 bites adatot küldeni? C nyelven írom a programot CCS-.ben.
Eddig nem foglalkoztam vele, mert nem érdekelt, de most kipróbáltam én is az X-et. Hát nekem se működik vele a PICKIT2 klónom, ugyan ezt a hibát adja. De írja is, hogy a PICKIT2 csak "beta support"
Idézet: „Ugye nem hagytad nyitva a Pickit saját programját? Összeakad az MPLAB-X-el és pont ez a hibaüzenet. Néha olyankor is, ha nem támogatott pic van rajta. Akkor meg különösen, ha nincs is rádugva a pic-re.” Természetesen nem. Fel sem villannak a ledek a pickiten, hogy bármi is történne... Idézet: „Eddig nem foglalkoztam vele, mert nem érdekelt, de most kipróbáltam én is az X-et. Hát nekem se működik vele a PICKIT2 klónom, ugyan ezt a hibát adja. De írja is, hogy a PICKIT2 csak "beta support"” Köszi, hogy kipróbáltad! Akkor nem is szenvedek vele tovább! ![]()
Azért ne add fel ilyen könnyen
![]()
Két lehetőség van:
1.) 16- vagy 32-bites mikrovezérlőt használsz és Word módot (MODE16) állítasz be. 2.) Az adatot 2 részletben küldöd el. A 2 byte elküldése alatt a SS jel folyamatosan aktív.
A PCM1792 4-vezetékes SPI kommunikációt használ a vezérléshez (ill. I2C-t). A ChipSelect jel (/MS, Microchipél: SS - SlaveSelect) alacsony-aktív jel. A lefutó éle jelzi az álvitel kezdetét, és a teljes 16 bit elküldése után vált csak újra magasra. A táblázatban a t(MCY)-ra csak min érték van megadva, tehát szerintem a 2 byte közötti időben az MC bármeddig maradhat alacsony állapotban. (Nem kell az MC jelnek folyamatosnak lennie a kommunikáció alatt.)
A hozzászólás módosítva: Nov 15, 2013
Hello!
Szeretnék beletenni üzemóra számlálót néhány PIC-es alkalmazásba. A kérdésem az lenne, hogy hogyan lenne célszerű megoldani, hogy minél kevesebbszer írja az EEPROM-ot? Gondoltam arra, hogy csak kikapcsoláskor írja be, de akkor valahogy figyelni kellene a tápot, és ha bizonyos érték alá csökken, akkor írja be az értéket az EEPROM-ba amíg egy kondi ad neki tápot. Gondoltam ídőnkénti beírásra, de ha percenként írom is csak 2 hónapot bírna az EERPROM folyamatos üzemben. Hogy szokták ezt megoldani?
Ha van HLVD modul a PIC-ben, akkor a táp jelentős csökkenésekor kaphatsz interrruptot, akkor az aktuális állapotot kiírhatod az EEPROM-ba. Egyébként az időmérés csak előkészíti az írást. Másik megoldás egy RTC csip, amiben van RAM (a legtöbb ilyen) . Ebbe a RAMba írhatod az eltelt időt, akár másodopercenként is. Ezek a csipek viszont I2C, vagy SPI interfésszel rendelkeznek.
A magasabb helyiértékű bájtot küldöd először?
Hát a HLVD az a 8 biteseknél felejtős, ott mást kell megoldani, de nem vagyok benne biztos, hogy RTC-vel akarom, nem könnyű DIP-es RTC csipet kapni és nem akarok légypiszok nagyságú alkatrészt belebütykölni, ráadásul néhány már elkészült áramkört kellene kiegészíteni valahogy. Valami komparátoros megoldás nem lenne jobb?
A PIC24F-es projectben van éppen RTC, de ott a PICben is van, sőt abban HLVD is van szerintem.
MCP7940M-I/P a ChipCad -tól, PCF8583 a Lomex -ből...
Nem kell nagyon bonyolítani: Bővebben: Link Itt pedig bele is építettem: Bővebben: Link
Így néz ki az adatküldés.
Először a regiszter, majd az adat. |
Bejelentkezés
Hirdetés |