Každý elektronický technik miluje rozbíjení elektroniky a prozkoumává, co je uvnitř. Nedávno jsem otevřel LED televizi a našel uvnitř ARM Chip. Mikrokontroléry založené na ARM se často používají v různých typech vestavěných produktů a systémů. Zahrnují mnoho pokročilých funkcí, díky nimž jsou výkonní a lepší než ostatní mikrokontroléry, jako jsou 8051, AVR a PIC. LPC2148 je jedním z nejčastěji používaných mikrokontrolérů založených na ARM, takže vytvoříme řadu výukových programů a projektů LPC2148 a budeme je sdílet v nadcházejících článcích. Zde je první výukový program v této sérii, který zahrnuje Začínáme s LPC2148 a naprogramujte jej tak, aby blikal LED.
V tomto tutoriálu se tedy seznámíme s ARM7 Stick - LPC2148 a naučíme se jej programovat pomocí softwaru Keil uVision a Flash magic. Naprogramujeme náš LPC2148 tak, aby blikal LED.
Mikrokontrolér ARM
Krok 17: Nyní pod záložkou výstupu zaškrtněte vytvořit Hex soubor a poté klikněte na „OK“
Krok 18: Nyní klikněte na ikonu BUILD nebo stiskněte F7 a vytvořte hex soubor.
Krok 19: Nyní je vytvořen hexadecimální soubor a můžeme si ho poznamenat dole. Stejně jako tento obrázek níže ukazuje, že je vytvořen hexadecimální soubor.
Krok 20: Nyní je čas flashovat hex soubor na ARM7 Stick. Takže otevřete Flash Magic
Kouzelný nástroj Flash se zobrazí výše.
Níže jsou uvedeny kroky pro blikání ARM LPC2148:
- Vyberte LPC2148
- Uveďte číslo portu COM podle Správce zařízení (moje byla COM7)
- Dát přenosovou rychlost jako 38400
- Oscilátor jako 12 Mhz
- Zaškrtněte „Vymazat bloky používané firmwarem“
- Nyní vyberte cestu k hexadecimálnímu souboru
- Zaškrtněte políčko po programování ověřit.
- A klikněte na START
Po úspěšném blikání během několika sekund se v dolní části zobrazí Dokončeno (v zelené barvě), jak je znázorněno na obrázku níže
Nyní můžete vidět, že LED dioda začala blikat na prkénku
Vysvětlení kódování
Kompletní kód pro blikající LED s LPC2148 je uveden níže. Kód je jednoduchý a lze mu snadno porozumět.
Tento soubor záhlaví obsahuje všechny soubory pro mikroprocesory řady LPC214x.
#zahrnout
Protože jsme připojili výstup k P0.10, používá registr IODIR a jako výstup vytváří pin Port 0 Pin 10.
IO0DIR = (1 << 10);
Tento registr nastavuje P0.10 na LED VYSOKÁ, takže svítí.
IO0SET = (1 << 10);
Tento registr vymaže P0.10 na NÍZKOU a LED nesvítí
IO0CLR = (1 << 10);
Níže uvedené příkazy jsou přítomny ve smyčce while za účelem nepřetržitého provádění kódu
while (1) { IO0SET = (1 << 10); delay_ms (1000); IO0CLR = (1 << 10); delay_ms (1000); }
Funkce delay_ms se používá k vytvoření doby zpoždění mezi SET & CLR pro blikání LED v intervalu 1 sekundy.
Kompletní kód s ukázkovým videem je uveden níže.