Przyk?ady dla STM32 + STM32F10x Standard Peripherals Library |
Written by Freddie Chopin
|
Wednesday, 11 January 2012 21:35 |
Page 4 of 6
Sposób 2 - pliki bazowe z przyk?adów, biblioteka w innym folderze
W tej metodzie w projekcie wykorzystane s? pliki bazowe (startup, skrypt linkera, tablica wektorów i Makefile) z przyk?adu, a biblioteka znajduje si? w dowolnym miejscu.
Jak zwykle najwa?niejszym etapem jest dodanie do pliku Makefile niezb?dnych wpisów. Otwieramy wi?c plik Makefile w edytorze i wykonujemy w nim nast?puj?ce czynno?ci:
- w liniach CXX_DEFS i C_DEFS dodajemy nast?puj?ce definicje: -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 (warto?? HSE_VALUE oczywi?cie uzale?niona od u?ywanego rezonatora kwarcowego), spowoduje to do??czenie do kodu odpowiednich nag?ówków (definicja symbolu USE_STDPERIPH_DRIVER) i odpowiedni? konfiguracj? funkcji które korzystaj? z warto?ci cz?stotliwo?ci zewn?trznego rezonatora kwarcowego (warto?? symbolu HSE_VALUE),
- w linii C_DEFS dodatkowo dopisujemy jeszcze -DSystemInit=low_level_init_1 - spowoduje to wywo?aniem funkcji SystemInit() (z biblioteki) w startupie tu? przed wywo?aniem funkcji main() - jest to wymagane przez aktualn? konwencj? biblioteki,
- w linii INC_DIRS dodajemy nast?puj?ce ?cie?ki z potrzebnymi nag?ówkami:
- c:\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport
- c:\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x
- c:\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\inc
- w linii SRCS_DIRS dodajemy nast?puj?ce ?cie?ki z potrzebnymi plikami ?ród?owymi:
- c:\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport
- c:\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver\src
- z linii C_WARNINGS usuwamy pozycj? -Wstrict-prototypes, aby niezgodne z "czystym" standardem j?zyka C deklaracje funkcji z CMSISa nie zasypa?y nas ostrze?eniami, ?e "function declaration isn't a prototype".
Podaj?c wiele parametrów mo?na rozdzieli? je na klika linii przy pomocy znaku backslasha "\" lub powtarza? dan? zmienn? operatorem "+=" w kolejnych liniach VAR1 = value1 \ value2 \ value3 VAR2 = value1 VAR2 += value2 VAR2 += value3
W tym momencie projekt mo?na ju? skompilowa? i powinno si? to odby? bez b??dów, a wi?c zasadniczo wszystko jest w teorii gotowe.
|
Last Updated on Monday, 15 October 2012 22:24 |