STM32F4 Arduino Board 를 이용하여 ARDUINO IDE 개발 환경에서 테스트를 진행 해 보았다.
우선 Arduino IDE환경에서 STM32 환경 설정이 되어 있지 않다면 보드 링크를 추가 하고
http://dan.drown.org/stm32duino/package_STM32duino_index.json
STM32 개발환경을 설치 해 준다.
Arduino IDE의 보드 메니저에서 "Generic STM32F4 series" 를 선택하고 새로 만든보드에 맞는 환경설정을 해 주고 새로 생성한 보드파일인 ELAB STM32F405로 선택 한다.
기본 동작은 확인 되었으니 Arduin IDE 개발 환경에서 STM32F4의 성능 테스트를 진행 해 보자.
Arduino에서 제공한 GPIO 함수를 이용하여 토글해 보면 230ns 정도 측정된다. 루프 수행 속도는 560ns 정도 된다.
일단 느리다.
//IO10 -> PB6
#define LED_BUILTIN 10
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
digitalWrite(LED_BUILTIN, LOW);
}
STM32F4의 GPIO를 직접 제어 해 보면 9ns로 측정된다.
STM32F4 성능측정 결과와 비교 해 보면 비슷한 결과가 나오는 것을 확인 할 수 있다.
void loop() {
//digitalWrite(LED_BUILTIN, HIGH);
//digitalWrite(LED_BUILTIN, LOW);
GPIOB->BSRR = GPIO_PIN_6;
GPIOB->BSRR = GPIO_PIN_6<<16;
}
반응형