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: 119485, Oldal olvasási idő: kb. 3 perc
Lapozás: OK   2 / 24

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.
Egy hátrányát látom ennek a PIC-nek kezdésnél való használatakor, ez pedig az hogy 40 lábú. De ne kezdj el PIC-ezni egy dugdosós próbapanel nélkül és a PIC lábára NE FORRASSZ SOHA SEMMIT! A dugaszolós próbapanel pár száz forint, nem kell forrasztanod próbák alatt, és könnyen lehet szétszedni vagy bővíteni az áramkört. Könnyen rögzíthető bárhova egy multiméter, szkóp, logikai teszter.

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!
Következő: »»   2 / 24
Értékeléshez bejelentkezés szükséges!
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