MiniMEXLE Hodiny na orientačný beh: Rozdiel medzi revíziami
Zo stránky SensorWiki
Riadok 108: | Riadok 108: | ||
[[Obrázok:programovanie interface.jpg|400px|thumb|center|Programming Interface]] | [[Obrázok:programovanie interface.jpg|400px|thumb|center|Programming Interface]] | ||
Verzia z 13:02, 18. december 2013
Autori: | Bc.Dávid Leško, Bc.Vladimír Biath | |
Študijný odbor: | Aplikovaná mechatronika | 2. Ing. (2013) |
Zadanie
LCD displej na doske MiniMEXLE treba pripojiť k mikroprocesoru a naprogramovať tak, aby po zapnutí odpočítaval minúty nasledujúce po štarte, pričom posledných 5 sekúnd pred každou celou minútou odpípa. Posledné pípnutie bude dlhšie a bude sprevádzané inkrementovaním čísla na displeji. Pred časom 00 bude displej zobrazovať pripravenosť symbolmi --.
K zapojeniu treba vypracovať dokumentáciu, popis programu, schému zapojenia displeja a riadiacej jednotky. Ako bonus doplňte riadenie intenzity displeja na základe vonkajšieho osvetlenia.
Literatúra:
- Dokumentácia k doske MiniMexle
- http://virtuallab.kar.fei.stuba.sk/robowiki/images/d/da/MiniMexle_manual.pdf
- http://www.robotika.sk/holls/2008/doc/Gruhler2008_IntroductionMEXLE.pdf
- http://ap.urpi.fei.stuba.sk/sensorwiki/index.php/S%C3%BAbor:MiniMexleBlockDiagram.png
- http://www.display-elektronik.de/DEM16216SYH-LY.PDF
Analýza - hardware
V tejto časti popíšete ako idete daný problém riešiť. Uvediete sem aj všetky potrebné technické údaje, ktoré sú potrebné na úspešné vyriešenie projektu. Napríklad:
- popis komunikačnej zbernice (i2c, 1-wire, RS-232 a pod.)
- obrázok zapojenia vývodov použitej súčiastky
- odkaz na katalógový list
- priebehy dôležitých signálov
MiniMexle:
- Microcontroller ATmega48/88 (pre naše riešenie sme použili Microcontroller ATmega328P programované cez USB rozhranie)
- Display DEM16216, 2x16 LCD-Display,
- 4 push buttons
- Analógové rozhranie : 2 A/D a 2 D/A kanály
Hardware MiniMexle:
Na obrázku nižšie sú označené jednotlivé prvky dosky MiniMexle:
- odkaz na schemu | zapojenia
Display:
Na zobrazovanie odpočítavania času sme použili display s označením DEM16216, ktorý pozostáva z 2 x 16 znakového displeja.
- 16 pin konektor pre pripojenie k doske MiniMexle
Write mode Display16216:
Read mode Display16216:
- bližšie informácie k displeju viď literatúra
Popis riešenia
Bloková schéma
- blokova schema dosky MiniMexle
Užívateľské rozhranie:
- x16 LCD displej s podsvietením
(Spojený 4 bity)
(RS: Data / Control)
(E = 1: Enable Display)
(R premenná: Kontrast)
- 4 tlačidlá pripojená na rovnaké piny ako LCD displej
(E = 0: Read buttons)
(Port μC obojsmerný)
Programovateľné rozhranie
- SPI Interface
(Serial Peripheral Interface) to programmer (PROGI)
(programming active for RESET = 0)
- Visual interface by LED3
- SPI signal names:
MISO = Master IN, Slave OUT
MOSI = Master OUT, Slave IN
SCLK = Serial Clock
SS = Slave Select
Algoritmus a program
Uveďte stručný popis algoritmu, v akom jazyku a verzii vývojového prostredia ste ho vytvorili. Je vhodné nakresliť aspoň hrubú štruktúru programu napríklad vo forme vývojového diagramu. Rozsiahly program pre lepšiu prehľadnosť rozdeľte do viacerých súborov.
Vyberte podstatné časti zdrojového kódu, použite na to prostredie source:
/* A nezabudnite zdroják hojne komentovať */
int main(void) {
printf("Hello, World!\n");
return(0);
}
Nezabudnite však nahrať aj kompletné zdrojové kódy vášho programu!
Zdrojový kód: serial.h a main.c
Overenie
Nezabudnite napísať čosi ako užívateľský návod. Z neho by malo byť jasné čo program robí, ako sa prejavuje a aké má užívateľské rozhranie (čo treba stlačiť, čo sa kde zobrazuje). Ak ste namerali nejaké signály, sem s nimi. Ak je výsledkom nejaký údaj na displeji, odfotografujte ho.
Kľúčové slová 'Category', ktoré sú na konci stránky nemeňte.