목차
[WAT-STM32-2.8] 25번 예제 UART를 printf, scanf 로 사용
WAT-STM32-2.8 예제 중 25번으로 UART 를 printf, scanf 로 간단히 사용하는 예제입니다.
printf, scanf 로 시리얼통신을 처리하면서
동시에 1초 간격으로 LED를 ON/OFF 합니다.
COM1 초기화
/* COM1 초기화 */ WAT_STM32_COMInit(COM1, 115200);
1 mS 마다 호출
// 1ms 마다 실행
void SysTick_Handler_User(void)
{
static uint32_t TimeIncrease = 0;
if((TimeIncrease%2000) == 0) // 2초(1ms x 2000) 가 되면 ON
{
LED1OBB = 0;
LED2OBB = 0;
LED3OBB = 0;
TimeIncrease = 0;
}
else if((TimeIncrease%1000) == 0) // 1초(1ms x 1000) 가 되면 OFF
{
LED1OBB = 1;
LED2OBB = 1;
LED3OBB = 1;
}
TimeIncrease++;
}
주요 코드
main.c 파일 일부입니다.
// WAT_STM3228_25 uart 를 printf, scanf 로 사용하기
// 출처: https://docs.whiteat.com/?p=4336
//
#include "WAT_STM32F103RB_LIB.h"
/* Infinite loop */
while (1)
{
/* LED1 TOGGLE */
LED1OBB = !LED1OBB;
printf("\n\n\r Doing %dth", Times++);
printf("\n\r Input Your Strings: ");
/* 문자 입력 ( 공백이 있으면 안된다) */
scanf("%s", ucStr);
printf("\n\r Your Strings: <%s>", ucStr);
printf("\n\r Input Your Integer : ");
num = 0;
/* 숫자 입력 */
scanf("%d", &num);
printf(" Your Integer: <%d>=<0x%X>", num, num);
}
결과화면
1초 마다 LED 가 ON/OFF 되면서 시리얼 통신(scanf, printf) 를동시에 수행합니다.



WAT-STM32-2.8보드 전체 예제
제품 구매
WAT-STM32-2.8 [STM32F103RB Board + 2.8인치 TFT LCD 터치 세트] 는 https://kit128.com/goods/view?no=221 에서 구매하실 수 있습니다.

