Základní vlastnosti modulu:
- MCU: 16/32 bit ARM7TDMI-S™: ( viz. popis v předcházejícím článku)
- krystal: 14.7456 Mhz ( při nastavení 4x PLL bude frekvence mikrokontroléru 58,9824Mhz )
- napájení: +6 až +9V AC/DC, JACK konektor
- JTAG konektor pro programování a ladění programu (2x10 pinů)
- deska obsahuje tři stabilizátory napětí 1.8V, 3.3V a 5V
- propojky :
- DEBUG - povolení JTAG rozhraní
- TX_J - volba pinu TXD1 (TXD / Buzzer)
- BSL - spuštění bootloaderu po resetu
- rozhraní RS232 pro komunikaci a programování (9pin Cannon, samička)
- rozhraní UART (TTL)
- rozhraní 1-Wire pro obvody Dallas
- vstup pro měření frekvence
- LCD displej 2x16 znaků, řadič HD44780, 4-bitová komunikace
- 5 uživatelských tlačítek
- resetovací tlačítko
- buzzer
- LED dioda
- konektor 2x7 pinů - univerzální vstupy/výstupy a řídící signály
- relé s přepínacím kontaktem 10A/250VAC
- rozměry modulu: 120x38 mm
Tabulky zapojení vývodů:
Popis univerzálních v/v pinů mikrokontroléru:
Mikrokontrolér obsahuje 32 univerzálních v/v pinů, jejich skutečný počet je však závislý na množství využitých alternativních funkcí (UART, SPI, PWM, atd.). Pro nastavení těchto pinů slouží čtyři registry:
Ukázka ovládání relé na modulu, nastavení příslušných registrů mikrokontroléru v prostředí CrossWorks:
Pokud potřebujeme ovládat relé na modulu, které je spínané tranzistorem T3 (viz. schéma lpc-mt-2106-sch.gif ), musíme nejdříve nastavit příslušný pin ( P0.13 ) na mikrokontroléru jako výstupní. Toto nastavení se provede příkazem IODIR |= 0x00002000, který provede log. součet obsahu registru IODIR s konstantou 0x00002000 a výsledek operace uloží zpět do tohoto registru. Tento příkaz lze zapsat i v nezkrácené podobě IODIR= IODIR | 0x00002000. Nyní ovládáme relé (resp. tranzistor T3) pomocí dvou příkazů. Příkazem IOSET= 0x00002000 provedeme jeho sepnutí, příkazem IOCLR= 0x00002000 provedeme jeho vypnutí. Obdobným způsobem ovládáme i ostatní zařízení na modulu.
Popis inicializace displeje a zobrazení textu v prostředí CrossWorks:
Ovládáním LCD displeje s řadičem HD44780 pomocí 4 bitové komunikace se zabývá řada článků, proto jenom bude popsána komunikace v několika bodech:
- pro komunikaci se na displeji využívají pouze datové linky DB4 - DB7
- data se do displeje posílají dvěma zápisy, nejdříve horní a pak dolní půlbyte
- pomocí signálu RS volíme CG RAM (pamět generátoru znaků) nebo DD RAM (paměť zobrazovaných dat)
- pomocí signálu R/W volíme čtení / zápis z / do displeje , místo čtení příznaku busy se většinou používá časové zpoždění
- sestupnou hranou signálu E se provede vykonání daného příkazu
Komunikace s LCD displejem ve vyšším programovacím jazyku pak vypadá následovně:
Výpis části programu:
// inicializace LCD
LCDInit();
LCDSendCommand(DISP_ON); //zapnutí displeje
LCDSendCommand(CLR_DISP); //smazání displeje
LCDSendCommand(DD_RAM_ADDR); //nastav psaní na první řádek
// Zapíše text na LCD (první řádek)
LCDSendTxt("*Test modulu MT*");
// nekonečná smyčka
while(1) {
//je-li tlačítko 1 stisknuté
if(!BUT1_PRESSED)
{
LCDSendCommand(DD_RAM_ADDR2); //nastav psaní na druhý řádek
LCDSendTxt("Tlacitko 1 Beep "); // Zapíše text na LCD
Beep(); // pípni
}
Tento modul se výborně hodí pro konstrukci malých řídících jednotek a uživatelských ovládacích panelů. Při využití rozhraní 1-wire na modulu a kontaktních čipů Dallas typu DS199x můžeme sestrojit jednoduchý identifikační nebo přístupový systém, popř. docházkový systém.
Miroslav Dvořák
Dvorak.Linux@ seznam.cz
Ukázky programů pro Rowley CrossWorks:
- Program pro zobrazení textu na LCD
- Program ovládající všechny zařízení na modulu (LCD, tlačítka, relé,...)
Download & odkazy:
- Datasheet LPC-MT2106 - LPC-MT2106.pdf
- Domovská stránka Rowley Associates - http://www.rowley.co.uk/
- Článek o 1-Wire na HW serveru - Sběrnice 1-Wire™
- Dallas Semiconductor – Maxim - http://www.maxim-ic.com/
- Objednat ARM-JTAG pro paralelní port => 999Kč bez DPH
- Objednat LPC-MT2106 => 2990Kč bez DPH
- LCD CD vše co potřebujete k práci s inteligentními LCD displeji LCD CD