[임베디드 8강] GPIO 제어 정리

강지원·2024년 6월 27일

STM32 강의

목록 보기
12/33

GPIO 제어 과정

  1. Power ON

  2. Startup Code

    • Reset Handler
  3. main()

  4. HAL_Init() : 주변장치 리셋, 플래쉬 인터페이스 초기화, Systick 설정

  5. SystemClock_Config() : 시스템 클럭 설정

  6. MX_GPIO_Init()

    • __HAL_RCC_GPIOC_CLK_ENABLE() : GPIO C포트 클럭 활성화

    • HAL_GPIO_Init(GPIO_LED_GPIO_Port, &GPIO_InitStruct) : GPIO 옵션 설정

      	* 참고: 클럭을 키면 전류를 더 사용함,
        극한으로 전류를 아껴야 하는 상황에서는 sleep 모드 뿐만 아니라 클럭 하나하나 전부 제어해야 함
  7. HAL_GPIO_WritePin : gpio 제어

  • Startup code : main 함수로 가기 전 최소한의 기능 구현한 코드
    어셈블리어 코드
    cpu가 바뀌면 Startup Code도 바뀜
  • stm32f1xx_it.c :인터럽트
    핸들러 함수 정의 하면 인터럽트 사용할 수 있음

0개의 댓글