이전 포스팅에서 S32 Design Studio for S32 Platform과 S32K144EVB를 사용하기 위한 실습환경 구축을 완료했습니다.
해당 실습환경을 바탕으로 LED ON-OFF실습을 진행해보도록 하겠습니다.
LED ON-OFF실습
1. S32DS 실행 : 신규 프로젝트 생성
2. 프로젝트 이름, MCU 선정, Toolchain 선택
3. SDK 선택
4. 생성된 프로젝트 및 Main.c 코드
5. LED Port 설정
- LED RED : PTD15
- LED GREEN : PTD16
- LED BLUE : PTD0
6. Peripherals 설정 : 설정 완료 후 Update Code 클릭
7. Build
8. #define 추가 : LED
#define EVB
#ifdef EVB
#define PCC_CLOCK PCC_PORTD_CLOCK
#define LED_PORT PTD
#define LED_BLUE 0
#define LED_RED 15
#define LED_GREEN 16
#endif
9. Clock 초기화
status_t status;
/* Configure clocks for PORT */
status = CLOCK_DRV_Init(&clockMan1_InitConfig0);
DEV_ASSERT(status == STATUS_SUCCESS);
10. GPIO Pin 초기화
status = PINS_DRV_Init(NUM_OF_CONFIGURED_PINS0, g_pin_mux_InitConfigArr0);
DEV_ASSERT(status == STATUS_SUCCESS);
11. LED Off 초기화
/* Set Output value LED0 & LED1 & LED2 All Off*/
PINS_DRV_SetPins(LED_PORT, 1 << LED_RED);
PINS_DRV_SetPins(LED_PORT, 1 << LED_BLUE);
PINS_DRV_SetPins(LED_PORT, 1 << LED_GREEN);
//PINS_DRV_ClearPins(LED_PORT, 1 << LED1_PIN);
12. 메인 코딩
void delay(volatile int cycles)
{
/* Delay function - do nothing for a number of cycles */
while(cycles--);
}
for (;;)
{
/* Insert a small delay to make the blinking visible */
delay(720000);
/* Toggle output value LED0 & LED1 */
PINS_DRV_TogglePins(LED_PORT, 1 << LED_BLUE);
//PINS_DRV_TogglePins(LED_PORT, 1 << LED_BLUE);
}
13. Build
14. 디버거 세팅
위의 과정을 통해 LED를 딜레이를 가지면서 On - Off 되는 것을 확인 할 수 있습니다.
다음 포스팅에서 FreeMASTER 사용을 위한 세팅을 이어 설명드리도록 하겠습니다.
'Embedded > MCU' 카테고리의 다른 글
S32K144EVB를 이용한 ADC 실습(2) (0) | 2024.01.24 |
---|---|
S32K144EVB를 이용한 ADC 실습(1) (0) | 2024.01.24 |
S32K144EVB 실습 환경 구축 (0) | 2024.01.24 |
TC275 실습 환경 구축 (0) | 2024.01.02 |
MCU란 (0) | 2023.12.28 |