Svaki elektronički inženjer voli razbijati elektroničke stvari i istraživati što je sve u njemu prisutno. Nedavno sam otvorio LED televizor i u njemu pronašao ARM čip. Mikrokontroleri temeljeni na ARM-u intenzivno se koriste u raznim vrstama ugrađenih proizvoda i sustava. Sadrže brojne napredne značajke koje ih čine moćnima i superiornijima u odnosu na druge mikrokontrolere poput 8051, AVR i PIC. LPC2148 jedan je od najčešće korištenih ARM-ovih mikrokontrolera, tako da ćemo stvoriti niz LPC2148 vodiča i projekata i dijeliti ih u sljedećim člancima. Evo prvog vodiča u ovoj seriji koji govori o početku rada s LPC2148 i programirajte ga da trepće LED.
Tako ćemo u ovom vodiču upoznati ARM7 Stick - LPC2148 i naučit ćemo kako ga programirati pomoću softvera Keil uVision i Flash magije. Programirat ćemo svoj LPC2148 da trepće LED.
ARM mikrokontroler

Korak 17: Sada na kartici izlaz označite stvoriti Hex datoteku, a zatim kliknite "U redu"

Korak 18: Sada kliknite ikonu BUILD ili pritisnite F7 da biste stvorili hex datoteku.

Korak 19: Sada je stvorena hex datoteka i možemo je zabilježiti na dnu. Kao i na ovoj slici u nastavku, jer označava da je stvorena hex datoteka.

Korak 20: Sada je vrijeme da heksadecimalnu datoteku prebacite u ARM7 Stick. Dakle, otvorite Flash Magic

Alat Flash magija pojavljuje se kao gore.
Ispod su koraci za bljeskanje ARM LPC2148:
- Odaberite LPC2148
- Dajte broj COM porta prema Upravitelju uređaja (Moj je bio COM7)
- Dajte brzinu prijenosa kao 38400
- Oscilator kao 12 MHz
- Označite "Izbriši blokove koje koristi firmware"
- Sada odaberite put hex datoteke
- Označite potvrdni okvir potvrdi nakon programiranja.
- I kliknite START
Nakon uspješnog treptanja u sekundama, Finished (u zelenoj boji) pojavit će se na dnu kao što je prikazano na donjoj slici

Sada možete vidjeti kako ta LED lampica počinje treptati na ploči
Objašnjenje kodiranja
Potpuni kod za treptanje LED diode s LPC2148 dan je u nastavku. Kod je jednostavan i lako se može razumjeti.
Ova datoteka zaglavlja uključuje sve datoteke za mikrokontrolere serije LPC214x.
#include
Kako smo priključili izlaz na P0.10, on koristi IODIR registar i kao izlaz izvodi pin pin 0 Pin 10.
IO0DIR = (1 << 10);
Ovaj registar postavlja P0.10 na HIGH (UKLJUČUJUĆI LED).
IO0SET = (1 << 10);
Ovaj registar briše P0.10 na LOW (isključivanje) LED isključujući
IO0CLR = (1 << 10);
Ispod su izrazi prisutni u while petlji za kontinuirano izvršavanje koda
dok (1) { IO0SET = (1 << 10); kašnjenje_ms (1000); IO0CLR = (1 << 10); kašnjenje_ms (1000); }
Funkcije delay_ms koristi se za stvaranje vremena kašnjenja između SET & CLR za treptanje LED-a u intervalu od 1 sekunde.
Kompletni kôd s demonstracijskim videom dat je u nastavku.
