-
Notifications
You must be signed in to change notification settings - Fork 2
STM32F103C8T6 (5. USB)
USB yra naudojamos A11, A12, 5V ir GND išvestys
-
Parsisiunčiam biblioteką stsw-stm32121.zip iš http://www.st.com/web/en/catalog/tools/PF258157# ir išpakuojam
-
Projekto failų medyje system\include sukuriam naują direktoriją usb ir įkopijuojam stsw-stm32121\STM32_USB-FS-Device_Lib_V4.0.0\Libraries\STM32_USB-FS-Device_Driver\inc esančius failus
-
Projekto failų medyje system\src sukuriam naują direktoriją usb ir įkopijuojam stsw-stm32121\STM32_USB-FS-Device_Lib_V4.0.0\Libraries\STM32_USB-FS-Device_Driver\src esančius failus
-
Einam į Project->Properties, C/C++ Build->Settings, Tool Settings skiltį, Cross ARM C Compiler->Includes ir į Include paths (-I) pridedam "../system/include/usb". Tą patį padarom ir Cross ARM C++ Compiler->Includes, spaudžiam Apply ir OK
-
Kopijuojam *.h ir *.c failus iš stsw-stm32121\STM32_USB-FS-Device_Lib_V4.0.0\Projects\JoyStickMouse atitinkamai į projekto include ir src direktorijas
-
Einam į Project->Properties, C/C++ General->Paths and Symbols, į Symbols skiltį ir pridedam USE_STM3210B_EVAL reikšmė visoms konfigūracijoms (uždedam varnelę ant Add to all configurations) ir visoms kalboms (uždedam varnelę ant Add to all languages)
-
Kopijuojam stm3210b_eval.h ir stm32_eval_legacy.h
-
usb_type.h užkomentuojam bool tipą. Padarom Build ir ten kur klaidos dėl FALSE pakeičiam į 0, kur TRUE pakeičiam į 1, o usb_core.c ir usb_pwr.h pridedam #include <stdbool.h> (kad veiktu bool)
-
include/hw_config.h ir system/include/usb_init.h pridedam1
#ifdef __cplusplus
extern "C" {
#endif
<.......>
#ifdef __cplusplus
}
#endif-
Einam į Project->Properties, C/C++ General->Paths and Symbols, į Source location skiltį ir iš Exclusion filtro pašalinam stm32f10x_exti.c
-
hw_config.h pridedam #include "stm3210b_eval.h" ir #include "stm32_eval_legacy.h"
1 - ką daro extern "C" ir kodėl jo reikia galima pasiskaityti https://en.wikipedia.org/wiki/Name_mangling. Iš principo jo reikia, kad teisingai būtų kviečiamos C funkcijos iš C++.