Spisu treści:

Jak rozpocząć pracę z IDE dla NRF51822, ARM® KEIL MDK V5 + ST-Link: 6 kroków
Jak rozpocząć pracę z IDE dla NRF51822, ARM® KEIL MDK V5 + ST-Link: 6 kroków

Wideo: Jak rozpocząć pracę z IDE dla NRF51822, ARM® KEIL MDK V5 + ST-Link: 6 kroków

Wideo: Jak rozpocząć pracę z IDE dla NRF51822, ARM® KEIL MDK V5 + ST-Link: 6 kroków
Wideo: nRF51822 - test interrupt (NRF_GPIO, NRF_LPCOMP) 2024, Listopad
Anonim
Jak rozpocząć pracę z IDE dla NRF51822, ARM® KEIL MDK V5 + ST-Link
Jak rozpocząć pracę z IDE dla NRF51822, ARM® KEIL MDK V5 + ST-Link
Jak rozpocząć pracę z IDE dla NRF51822, ARM® KEIL MDK V5 + ST-Link
Jak rozpocząć pracę z IDE dla NRF51822, ARM® KEIL MDK V5 + ST-Link

Przegląd

Kiedy zacząłem tworzyć aplikację nRF51822 do mojego hobbystycznego projektu, stwierdziłem, że nie ma zorganizowanych informacji na ten temat. W tym miejscu chciałbym więc odnotować, przez co przeszedłem.

To opisuje, co sprawia, że mam trudności z zaimplementowaniem przykładowej aplikacji "Softdevice" na płycie. Poniżej przedstawiono programowanie aplikacji ble_app_hrm, która jest dostarczana z pakietu SDK firmy Nordic.

Jak pokazano na pierwszym obrazie, użyto płytki ST Nucleo-F401RE, Waveshare BLE400 i nRF51822, ale BLE400 nie jest konieczny, o ile można podłączyć ST-Link i kartę nRF51822.

Zaletą używania ST-Link w Nucleo jest dostarczanie mocy 3,3 lub 5 V do płyty nRF51822. Dlatego może być konieczne przygotowanie zasilacza podczas korzystania z urządzenia ST-Link, ponieważ niektóre urządzenia ST-Link wydają się nie mieć możliwości zasilania mikrokontrolera.

Dowiedziałem się, że moja płyta nRF51822 to "nRF51822_xxAA", która ma 256kB ROM (rozmiar pamięci programu) i 16kB RAM (drugi obraz).

Procedura zawiera następujące kroki.

  1. Instalacja oprogramowania
  2. Połączenie sprzętowe
  3. Ustawienia oprogramowania
  4. Kompiluj i ładuj
  5. Uruchom aplikację na telefonie komórkowym (Android)

Wszystkie informacje są uzyskiwane na dzień 28 września 2018 r.

Krok 1: Instalacja oprogramowania

Instalacja oprogramowania
Instalacja oprogramowania
Instalacja oprogramowania
Instalacja oprogramowania

Pobierz MDK-ARM v5.26 lub nowszy z ARM KEIL i zainstaluj go w Windows 10. Po zainstalowaniu Keil µVision IDE jest instalowane z ARM CMSIS i tym podobne. Ale wtedy system nie ma zainstalowanych żadnych skandynawskich pakietów SDK.

Przy pierwszym uruchomieniu Keil µVision IDE, uruchamia się Pack Installer. W Pack Installer można zainstalować pakiety oprogramowania niezbędne do opracowania płyty docelowej.

Zobacz pierwszy obraz.

Dobrym pomysłem jest wcześniejsze kliknięcie przycisku „Sprawdź aktualizacje”, aby zaktualizować Instalator pakietów.

Na karcie Urządzenia wyszukaj i wybierz urządzenie docelowe „nRF51822_xxAA”, aby powiązane pakiety pojawiły się na karcie Przykłady.

W tej instrukcji wybrałem „ble_app_hrs_s130_pca10028 (nRF51 PCA10028)”. Nie zapomnij odznaczyć "Pokaż przykłady tylko z zainstalowanych pakietów", aby znaleźć projekt w zakładce Przykład, ponieważ żadna instalacja nie została jeszcze zakończona.

Kliknij przycisk „Zainstaluj”, aby rozpocząć rozpakowywanie (a także kopiowanie) przykładowego projektu. Podczas kopiowania projektu do dowolnego katalogu zostaniesz kilka razy poproszony o zainstalowanie innych pakietów oprogramowania wymaganych przez projekt.

Zobacz drugi obraz.

Po zakończeniu instalacji µVision otworzy projekt.

Zauważ, że oryginalny projekt znajduje się w C:\Keil_v5\ARM\PACK\NordicSemiconductor\nRF_Examples\11.0.0-2.alpha\ble_peripheral\ble_app_hrs\pca10028\s130\arm5.

Krok 2: Połączenie sprzętowe

Połączenie sprzętowe
Połączenie sprzętowe

Tutaj obraz pokazuje rzeczywisty schemat połączeń.

Zdjęcie przedstawia sposób połączenia ST-Link i BLE400 z płytką nRF51822. Potrzebne są tylko 4 kable, jak w poniższej tabeli.

ST-Link (Nucleo) - nRF51822

+5V - USB5V

GND - GND

SWCLK - SWDCLK

SWDIO - SWDIO

Aby wybrać ST-Link, zworki „CN2” muszą być otwarte, jak pokazano na schemacie.

Uwaga: Zamiast tego działa również zasilanie 3,3V.

Krok 3: Ustawienia oprogramowania

Ustawienia oprogramowania
Ustawienia oprogramowania
Ustawienia oprogramowania
Ustawienia oprogramowania
Ustawienia oprogramowania
Ustawienia oprogramowania
Ustawienia oprogramowania
Ustawienia oprogramowania

Procedura w tej części musi być przestrzegana, w przeciwnym razie nigdzie nie dojdzie.

Zobacz pierwszy obraz.

(1) Najpierw wybierz „nrf51422_xxac_s130” z rozwijanego menu „Wybierz cel” na pasku narzędzi µVision. Nazwa różni się od urządzenia docelowego, ale zrobi to ze względu na ich kompatybilność.

Zobacz drugi obraz

(2) W oknie Projekt kliknij lewym przyciskiem myszy „main.c” w folderze Application i wybierz „Translate main.c” z menu kontekstowego, aby uwzględnić niezbędne nagłówki (trzeci obraz). Należy pamiętać, że w tym momencie należy wybrać „nrf51422_xxac_s130” lub ta operacja nie zadziała.

(3) Kliknij „Opcja dla celu”, aby skonfigurować IDE (pierwszy obraz). Ponieważ poprzednia operacja "Translate" poprawnie ustawiła docelowy mikrokontroler, zostało potwierdzone, że IROM1:0x1B000 w Start, 0x25000 w Size i IRAM:0x20001F00 w Start, 0x6100 w Size, jak widać w zakładce Target (4. obraz).

Zobacz piąty obraz.

(4) Na karcie Debug wybierz opcję „Debugger ST-Link” z menu rozwijanego „Użyj:”.

(5) Kliknij przycisk „Ustawienia”, aby otworzyć okno „Ustawienia sterownika docelowego Cortex-M”. Potwierdź, że zakładka Debug wskazuje, że docelowy mikrokontroler jest podłączony (szósty obraz). Jeśli tak się nie stanie, wróć do sekcji Połączenie sprzętowe i ponownie sprawdź połączenie.

Zobacz siódmy obraz.

(6) W zakładce Flash Download kliknij przycisk „Add” w algorytmie programowania i dodaj „nRF51xxx External Connectivity Board”. Ponadto można zaznaczyć opcję „Zresetuj i uruchom”, aby umożliwić zresetowanie ST-Link i uruchomienie programu.

Kliknij OK i zamknij okno "Opcja dla celu".

(7) Następnie wybierz „flash_s130_nrf51_x.x.x-x-x_softdevice” z menu rozwijanego „Wybierz cel” na pasku narzędzi.

(8) Kliknij „Opcja dla celu”. Na karcie Debug wybierz „Debugger ST-Link” z menu rozwijanego „Użyj:”.

(9) Kliknij przycisk „Ustawienia”, aby otworzyć okno „Ustawienia sterownika docelowego Cortex-M”. Ponownie upewnij się, że karta Debug wskazuje, że urządzenie docelowe jest podłączone. Jeśli tak się nie stanie, wróć do sekcji Połączenie sprzętowe i ponownie sprawdź połączenie.

(10) W zakładce Flash Download kliknij przycisk „Add” w „Programming Algorithm” i dodaj „nRF51xxx External Connectivity Board”. Można wybrać opcję „Erase Full Chip” w „Funkcja pobierania”, aby ST-Link wymazał pamięć płyty na początku migania zamiast ręcznego wymazywania.

Kliknij OK i zamknij okno "Opcja dla celu".

Teraz jesteś gotowy do skompilowania kodu i flashowania nRF51822.

Zauważ, że chociaż zakładka Device w "Option For Target" pokazuje, że wybrano nRF51422_xxAC, to działa dobrze.

Krok 4: Skompiluj i załaduj

Image
Image
Kompiluj i ładuj
Kompiluj i ładuj
Kompiluj i ładuj
Kompiluj i ładuj
Kompiluj i ładuj
Kompiluj i ładuj

Przede wszystkim tutaj wybierz „flash_s130_nrf51_x.x.x-x-x_softdevice” z menu rozwijanego „Wybierz cel” na pasku narzędzi i kliknij przycisk Pobierz, aby sflashować pamięć. Jeśli pobieranie się powiedzie (pierwszy i drugi obraz), zobaczysz komunikat „Zweryfikuj OK”.

Następnie wybierz „nrf51422_xxac_s130” z menu rozwijanego „Wybierz cel” i kliknij przycisk Kompiluj, aby skompilować kod. Zobaczysz wiadomość, jak pokazano na trzecim obrazie.

Następnie kliknij przycisk Pobierz, aby sflashować pamięć. Zobaczysz ten sam komunikat, co czwarty obraz.

Po pomyślnym zakończeniu flashowania zobaczysz, że dioda LED3 miga (wideo).

Teraz, instalując aplikację w telefonie komórkowym, widzisz, co robi program.

Krok 5: Uruchom aplikację na telefonie komórkowym

Image
Image

Zainstaluj aplikację „nRF Toolbox for BLE” firmy Nordic Semiconductor na telefonie komórkowym lub tablecie (pierwszy obraz).

Uruchom HRM i podłącz nRF51822 (wideo).

Krok 6: Podsumowanie

Było kilka punktów w tej instrukcji;

  1. zasil płytkę nRF51822 w celu podłączenia ST-Link
  2. przetłumacz plik main.c przed kompilacją i pobraniem kodu, jeśli przykładowy projekt jest kopiowany w katalogu innym niż oryginalny katalog
  3. ustaw "nRF51xxx External Connectivity Board" w sekcji Algorytm programowania

Mam nadzieję, że ta instrukcja pomoże takim hobbystom jak ja.