Fórum témák
» Több friss téma |
Cikkek » Nulláról a robotokig - PIC Mikrovezérlők I rész Nulláról a robotokig - PIC Mikrovezérlők I rész
Szerző: Topi, idő: Jún 12, 2007, Olvasva: 119862, Oldal olvasási idő: kb. 3 perc
Azt hiszem sok kezdő számára, teljesen jogos a címben olvasható kérdés. Vajon mi lehet az. Miért van szó a fórumon állandóan arról, hogy PIC-kel így, PIC-kel úgy meg lehet oldani dolgokat. Sajnos abban is igaza van sokmindenkinek, hogy ha egy egyszerű órát akar valaki építeni, egyből jön a sok PIC függő, és szétoffolja a témát, hogy pedig PIC-kel egyszerűbb, PIC-kel meg AVR-el sokkal könnyebb. Igen. Akit egyszer megcsapott a PIC-ezés édes illata, nem akarja elengedni. Az előbb bemutatott robot volt a legelső komolyabb PIC-kes munkám. Előtte csak mindenféle kifejezetten célfeladatra épített PIC-es dolgaim voltak. Pl. rádió távirányítású kút ki-be kapcsolgató, időzítők, műszerek stb. Számomra, amiért a PIC-re esett a választás: olcsó, sok féle létezik belőle, magyarországi diszribútorának rengeteg típus van raktáron. PIC-ből létezik 6 lábú is, és 100 lábú is (ami tényleg száz lábú, és 70 I/O portja van. TQFP tokozású) Minden PIC-re rá lehet húzni egy szabályrendszert, és kifejezés halmazt. Ez azt jelenti, hogy most átnézzük a PIC-kel kapcsolatos fogalmakat, szabványokat, szabályokat. Bit: Egyetlen logikai érték. Két állapota lehet, 1 vagy 0. Byte: A byte egy szám típus. Egy bájt 256 értéket vehet fel (28). Összesen 8 bitből áll. és 0-255-ig lehet értéket adni neki. (0-255-ig 256 különböző szám van) Nibble: Egy fél bájt. Vagyis négy bit. Nibble swap-nél az alsó és felső 4 bitet megcseréljük egymással. Interface: Minden esetben egy olyan csatoló felület, mellyel vagy mellyen keresztül bármit hozzáköthetünk a PIC-hez. Ezek egy fajtája maguk a PORT-ok. Digitális portok: Olyan regiszterek, melyek tartalma kiolvasható a PIC külső interface-en keresztül. Magyarul leegyszerűsítve, közelebb hozva hozzánk, ha egy Port valamelyik bit-jére kiírunk egy 1-est, akkor a kimenete logikai egyes szintet fog adni. Vagyis ha LED-et kötünk rá, világítani fog. A PIC digitális portjai byte szervezésűek, vagyis egy port maximum 1 bájt lehet. Ilyen portok pl. a PORTB, PORTC, PORTD... Analóg működésre is képes portok: Ezek olyan portok, melyeket szoftveres úton lehet beállítani, hogy hogyan működjön. Lehet egy analóg bemenet (két feszültségérték között végtelen sok értéket felvehet) vagy lehet digitális ki/bemenet. Tipikusan ilyenek a PORTA, PORTE. Mikrovezérlő: Olyan integrált áramkör, mely felépítésében hasonlít egy komplett számítógépre. Ezért is hívjuk mikroszámítógépnek. Tartalmaz memóriát, "háttértárat", Aritmetikai Logikai Egységet (ALU), központi vezérlő egységet, buszokat, interface-eket. PIC: A Microchip által gyártott 8-bites mikrovezérlő. Regiszter: egy bájtot tárolni képes memória "darabka". ICSP: Microchip szabadalma, az In-Circuit Serial Programming. Ezen az interface-en keresztül tudod programozni majdnem az összes PIC mikrovezérlőt. (PGD, PGC, PGM lábak) MCLR: Speciális láb, mely vezérli az egész PIC futását. Egy digitális bemenet ez, melyet tápfeszültségre húzva kiveszi a MASTER CLEAR üzemmódból, vagyis elindul a processzor. Földre húzva ki van kapcsolva a PIC, ha nem kötöd sehova, akkor pedig instabil használhatatlan kis processzort kapsz. GND/Vss/Vdd/Vpp: GND logikusan a GrouND-ot jelenti vagyis a földet, a tápegység nulla pontját. Vss, ez is ugyan azt. Vdd, ez maga a tápfeszültség lába a PIC-nek, Vpp-vel pedig általában a programozásnál használt MCLR láb feszültségét értik. Mi minden próbához PIC16F877-es mikrovezérlőt fogunk használni. Relatíve drága, de még mindig olcsóbb mint a PIC16F84, ami már nem használandó. Ennek az IC-nek 40 lába van (2x20).
A PIC választásnak több oka van. Megtanulhatod assembly programozás esetén a BANK-eket. Van elég I/O-ja egy futófény bazisok ledesre való továbbfejlesztésére, van 3 Timer modulja is, hardveres PWM-je van, próbákhoz bőven elegendő memória, gyors programozás, debugolás lehetősége, 20MHz-es órajellel is el lehet indítani, stbstb. Szerencsére a 16F877-esnek nagyon moduláris felépítése van, így még használható a PIC tovább is annak ellenére hogy "szétlőttük" valamelyik portját. Ennek fizikai oka is van. Nagyobb a felület és a hő kevésbé tesz kárt benne. Egy kisebb pl. 16F84 vagy 16F628 esetén egy portot kinyírunk, dobhatjuk is ki az egész PIC-et. 877-esnél megölünk egy lábat akkor az nem működik, de a többi simán megy gond nélkül! Egy legyen nálad mindig, és programozás alatt végig legyen nyitva. Ez a 16F877-esnek a dokumentációja. Letölthető a Microchip oldaláról, vagy innen! A cikk még nem ért véget, lapozz! Értékeléshez bejelentkezés szükséges! |
Bejelentkezés
Hirdetés |