ZL31ARM: wskaźnik przyspieszenia 3D z czujnikiem MEMS LIS35

Konfiguracja projektu

Programy opisane w artykule powstały na bazie bibliotek opisanych w książce „Mikrokontrolery STM32 w praktyce”, dlatego przed rozpoczęciem ich testowania należy pobrać pliki źródłowe przykładów z tej książki (dostępne m.in. na stronie Wydawnictwa BTC). W pliku archiwum znajduje się katalog Libraries, który należy skopiować do katalogu z zainstalowanym środowiskiem µVision (np. C:\Keil\ARM\). Z biblioteki należy wybrać potrzebne pliki i dodać je do własnego projektu. Pliki stm32f10x_conf.h oraz stm32f10x_it.c(h) można skopiować z dowolnego katalogu i w razie potrzeby wprowadzić wymagane zmiany lub też można je znaleźć w załączniku do książki „STM32 Aplikacje i ćwiczenia w języku C” dostępne w katalogu wzorzec. Dalej klikamy na Options for Target… i w zakładce C/C++ w polu Define dodajemy następujące parametry: STM32F10X_MD, USE_STDPERIPH_DRIVER. Oprócz tego należy dodać ścieżki dostępu do plików źródłowych w Include Paths (rysunek 4). W zakładce Debug wybieramy Use ST-Link (Deprecated Version) i to samo robimy w zakładce Utilities, gdzie występuje pole Use Target Driver for Flash Programming.

 

Rys. 4. Okno z wykazem domyślnych ścieżek dostępu dla środowiska µVision

Rys. 4. Okno z wykazem domyślnych ścieżek dostępu dla środowiska µVision

 

 

Do wyświetlania elementów grafiki zostanie wykorzystany kod opisany w artykule „ZL31ARM: implementacja funkcji graficznych 2D” oraz „ZL31ARM: funkcje graficzne 3D”. Opisano tam również skąd można pobrać potrzebne pliki: w załączniku „Przykładowy program dla STM32” dla modułu KAmodTFT2 można znaleźć lcdlib.c, lcdlib.h, lis35.c, lis35.h (opis modułu KAmodMEMS2 wraz z opisem funkcji dla interfejsu SPI można znaleźć na stronie www.STM32.eu) oraz SystemInit.c i board.h oprócz graphics.c, który został zmodyfikowany w powyższych projektach i który jest dostępny w załączniku do tych artykułów (podczas kompilacji może wystąpić błąd nie znalezienia pliku stm32f10x_lib.h – wtedy należy zmienić nazwę na stm32f10x.h); dodatkowo w celu wyświetlenia symboli tekstowych należy pobrać załącznik do artykułu na stronie [1] oraz skopiować plik fonts.c do katalogu projektu, a z pliku main.c skopiować fragment dotyczący funkcji LCDPutChar() i zapisać do lcdlib.c. Struktura całego projektu jest przedstawiona na rysunku 5. W pliku stm32f10x_conf.h należy odkomentować instrukcje załączające potrzebne pliki, jak poniżej:

 

Rys. 5. Struktura projektu

Rys. 5. Struktura projektu

 

 

Docelowa zawartość pliku board.h powinna wyglądać w następujący sposób:

Do pobrania

O autorze