Mikrokontroller (MCU, mikroC)



Mikrokontroller (MCU, mikroC) 1

Felhasználása: 2

Két fő típus: 2

Felépítése: 2

A kártya előkészítése: 3

A szoftver (WinAVR) telepítése: 3

Létre kell hozni a project-et, ebben lesz a tényleges program mint .c file, egy Makefile, amivel le lehet fordítani és rá lehet tölteni a mikróra. 3

A lefordított program (hex file) letöltése a mikróra. Rögtön fut! 5

Az I/O portok 8

A hétszegmensű kijelző 9

Ledvillogtatás 9

Nyomógombok 10

LCD kijelző 11

Az LCD használata 12

Soros kommunikáció 12

A soros kommunikáció jellemzői: 12

Kommunikációs szabványok: 13

Programozás: 13

A Soros kommunikáció 13

ADC – analóg digitális átalakítás 14

Bemenetek: 14

Működési mód 15

Hogyan kell beállítani a működési módot, a bemeneti csatornát, a gain-t, hogyan kell kiolvasni a konvertált értéket stb 15

Mintaprogramok 19

Számok a hétszegmenses kijelzőn: 19

Számláló 20

Futófény a ledeken: 20

Nyomógombok: 21

Játékgép 24

Egy komolyabb stopper lcd kurzor balra lépéssel: 25

Egyszerű jelzőlámpa 27

Teszteli az áramköröket 28

mega_demo 30

időzítő 43

lcd stopper 46

másik stopper 47

PWM és megszakítás, TIMER 49

Mikrokontroller (MCU, mikroC)

-egy speciális mikroprocesszor (számítógép egyetlen IC-n, nyomtatott áramkörön)

-az általános célú mikroprocesszorban levő aritmetika és logikai áramkörök mellett integráltan tartalmaz:

-írható, olvasható memória adattárolásra

RAM: random access memory, megőrzi az adatokat amíg van táp

DRAM: kondenzátorok, periodikus frissítés(dynamic)

SRAM (static): bistabil áramkörök

-flash memória programtárolásra

írható, olvasható, áramtalanítás után is megőrzi tartalmát (ROM)

-EEPROM mint a flash, adattárolásra

bemeneti és kimeneti egységek (PORT)

számláló, órajel generátor, AD konverter, PWM generátor, stb

Jellemzői:

-lassabb az általános célú processzoroknál (néhány megaherzes órajel)

-kis fogyasztás (milliwatt)

-alvó üzemmód: nanowatt ( hosszú idejű, kis teljesítményű alkalmazások

Felhasználása:

Folyamatok vezérlése, szabályozás, jelfeldolgozás. A mikrokontrollert össze kell kötni a bemeneti egységekel (például érzékelők), fogadni azok jelét, a fogadott jelet feldolgozni majd a választ továbbítani a beavatkozó egységeknek.

Beágyazott rendszerek

-robotok vezérlése

-elektromos hub motorok elektronikája

-autókban szabályozási feladatok, stb

[pic]

Két fő típus:

PIC (PIC1640, General Instruments)

Harvard architektúra: az adatok és utasítások más útvonalat használnak.

(( (von Neumann architektúra)

ATMEL 1996: AVR

-8 bites (8 vagy 16 bites utasítások, adatok), Harvard architektúra

-RISC (kevés utasítás de gyorsan hajtódik végre)

Felépítése:

RAM adatmemória (flash, sram, eeprom)

Program memória (flash, 128 kb, atmega128x)

-az utasítások mérete 16 vagy 2x16 bit

Belső adat-memória:

Címek: regiszterek, input/output regiszterek, sram

Munka regiszterek: 0000 – 001F címterület, 32 db

I/O regiszterek: 0020 – 005F (64 db, lábak)

A mikrokontrollert többféle programnyelven (C, Basic, Assembly, stb) is lehet programozni. A programnak gondoskodnia kell az adatok beolvasásáról a megfelelő portról, az adatok feldolgozásáról és az eredmények kiküldéséről a megfelelő portra. A programozáshoz megfelelő hardverre (számítógép, a programozó kábel, a programozáshoz használt port csatlakozója, stb) és szoftverre (letölthető a netről, WinAvr ) is szükség van. A forráskódot tartalmazó állomány mellett szükség van egy úgynevezett makefile-ra is, ami sok, a mikrokontrollerre és a programozás módjára vonatkozó beállítást tartalmaz.

A kártya előkészítése:

Finoman kell bánni a kártyával, semmi erőltetés, bármilyen gyanú vagy bizonytalanság esetén kérdezni!!!

1. A nyomtató porton csatlakozni a kártyához az stk200 kábellel. A műanyag tokba (kis kártya) kell dugni, a horony mutatja hogyan kell fordítani!

2. A másik kábellel egy USB portról csatlakozni a kis kártyán lévő fém aljzatba, nézni kell a réz érintkezőket, hogy hogyan! A ledek felvillannak a kártyán és egy tartósan égve marad.

A szoftver (WinAVR) telepítése:

Ez a program jó lesz az alapokat megtanulni.

1. Van-e ilyen a gépen és milyen könyvtárban?

Ha nincs puma.unideb.hu/~misak oldalról a megfelelő helyről letölteni az asztalra az install programot! (winavr-2007-0122-install.exe lent)

2. Elindítani és a C:\winavr javasolt könyvtárna telepíteni!

A telepítés során az asztalon is megjelennek a winavr programcsomag logói.

Ha elindul a manual, be kell zárni.

3. Be kell lépni a c:\winavr\bin könyvtárba és a install-giveio.bat-ot lefuttatni. (Commandert lehet használni)

Létre kell hozni a project-et, ebben lesz a tényleges program mint .c file, egy Makefile, amivel le lehet fordítani és rá lehet tölteni a mikróra.

A forráskódot tartalmazó állomány elkészítése és hozzáadása a projecthez.

1. Az asztalon kell egy könyvtár a project-nek, mondjuk avrproject könyvtár.

2. El kell indítani az asztalról a programmers notepad programot.(ceruzás ikon)

File(New(project

A név legyen probaproj, a helye az avrproject könyvtár.

3. A megjelenő new nevű fájlba-abakba írjuk meg a forráskódot. Ez most:

//első avr program

Mentsük main.c néven és adjuk hozzá a projecthez. (jobb klikk a projectre baloldalon, Add new files opciók.

Makefile készítése

Az asztalról az mfile (lámpás ikon) progit kell indítani.

Makefile(

A Makefile menü alpontjaiban egyenként meg kell adni az alábbi információkat:

-Main file name: main

-MCU: atmega128

-Output format: ihex

-Programmer: stk200

-Port: LPT1

(Enable editing make file: ha szükséges itt fogjuk mahinálni, pl CPU órajel frekvencia F_CPU

De most nem!!)

Ha kész: File ( Save As a project mappájába. Hozzáadni a projecthez.(jobbklikk bal oldalon aprojectfile-ra és Add new file(kiválasztani)

Most a forráskódot beírni a main fájlba, menteni.

A kód:

//első avr program ledvillogtatás

#include

#include

void kesleltet()

{

for (uint8_t i=0;i ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download