Każdy inżynier elektronik uwielbia łamać elektronikę i badać, co jest w niej obecne. Niedawno otworzyłem telewizor LED i znalazłem w nim ARM Chip. Mikrokontrolery oparte na architekturze ARM są szeroko stosowane w różnego rodzaju produktach i systemach wbudowanych. Obejmują wiele zaawansowanych funkcji, które czynią je potężnymi i lepszymi od innych mikrokontrolerów, takich jak 8051, AVR i PIC. LPC2148 jest jednym z najczęściej używanych mikrokontrolerów opartych na architekturze ARM, dlatego stworzymy serię samouczków i projektów LPC2148 oraz udostępnimy je w nadchodzących artykułach. Oto pierwszy samouczek z tej serii obejmujący wprowadzenie do LPC2148 i zaprogramowanie go tak, aby migał diodą LED.
W tym samouczku poznamy więc ARM7 Stick - LPC2148 i nauczymy się jak go programować za pomocą oprogramowania Keil uVision i Flash Magic. Zaprogramujemy nasz LPC2148 tak, aby migał diodą LED.
Mikrokontroler ARM
Krok 17: Teraz w zakładce Wyjście zaznacz utwórz plik Hex, a następnie kliknij `` OK ''
Krok 18: Teraz kliknij ikonę BUILD lub naciśnij F7, aby utworzyć plik hex.
Krok 19: Teraz tworzony jest plik szesnastkowy i możemy go zanotować na dole. Jak na tym obrazku poniżej, ponieważ wskazuje, że plik hex jest tworzony.
Krok 20: Teraz nadszedł czas, aby sflashować plik hex na ARM7 Stick. Więc otwórz Flash Magic
Magiczne narzędzie Flash wygląda jak powyżej.
Poniżej znajdują się kroki do flashowania ARM LPC2148:
- Wybierz LPC2148
- Podaj numer portu COM zgodnie z Menedżerem urządzeń (mój był COM7)
- Podaj szybkość transmisji 38400
- Oscylator jako 12 Mhz
- Zaznacz „Usuń bloki używane przez oprogramowanie układowe”
- Teraz wybierz ścieżkę do pliku hex
- Zaznacz pole wyboru Sprawdź po zaprogramowaniu.
- I kliknij START
Po pomyślnym flashowaniu w ciągu kilku sekund, na dole pojawi się napis Finished (w kolorze zielonym), jak pokazano na poniższym obrazku
Teraz możesz zobaczyć, że ta dioda LED zaczyna migać na płytce stykowej
Objaśnienie kodowania
Pełny kod migającej diody LED z LPC2148 jest podany poniżej. Kod jest prosty i łatwy do zrozumienia.
Ten plik nagłówkowy zawiera wszystkie pliki dla mikrokontrolerów serii LPC214x.
#zawierać
Ponieważ podłączyliśmy wyjście do P0.10, wykorzystuje on rejestr IODIR i tworzy pin Port 0 Pin 10 jako wyjście.
IO0DIR = (1 << 10);
Rejestr ten ustawia P0.10 na HIGH, co powoduje włączenie diody LED.
IO0SET = (1 << 10);
Rejestr ten czyści P0.10 do LOW, co powoduje wyłączenie diody LED
IO0CLR = (1 << 10);
Poniżej wypowiedzi są obecne w podczas pętli do wykonania kodu w sposób ciągły
while (1) { IO0SET = (1 << 10); opóźnienie_ms (1000); IO0CLR = (1 << 10); opóźnienie_ms (1000); }
Funkcje delay_ms służą do tworzenia czasu opóźnienia między ustawieniami SET i CLR w celu migania diody LED w interwale 1 sekundy.
Pełny kod wraz z filmem demonstracyjnym znajduje się poniżej.