본문 바로가기

임베디드 (Embedded)/STM3217

[STM32] STM32CubeIDE i2C-LCD 사용하기 NUCLEO-F429ZI 보드를 이용하여 lcd를 출력해보자. (board select로 프로젝트 만든 상태) 먼저 i2C 모드를 Disable에서 I2C로 활성화하면 자동으로 핀2개가 설정된다. (나는 Pb8이 더 편해서 옮겼다.) generate code를 하면 Drivers > STM32F4xx_HAL_Driver의 Inc와 Src 폴더에 i2c 관련 c와 헤더 파일이 생긴 걸 확인할 수 있다. 본격적으로 lcd 사용을 위해 main.c가 있는 Core > Src 폴더에 lcd.c를 추가한다. main에 lcd 주소를 선언하고 /* Private includes ----------------------------------------------------------*/ /* USER CODE BEG.. 2023. 11. 8.
[STM32] STM32CubeIDE 조이스틱 설정 ADC, DMA rank는 x와 y, 2개를 읽을 때 뭐를 먼저 읽을 건지 정한다. 사진과 같이 1순위가 13이라면 PC3으로 연결한 VRX혹은 VRY가 먼저 읽힌다. main.c에서 DMA init이 adc1보다 먼저 와야 한다. 2023. 11. 7.
[STM32] NUCLEO-F429ZI 타이머2,3,4를 이용하여 버튼 led 토글하기 및 주파수 계산 타이머를 위한 보드 설정은 전 글에 나와있으니 참고하자. https://silvow94.tistory.com/36 [STM32] NUCLEO-F429ZI 타이머 카운트 설정 및 HAL_IncTick(), HAL_SYSTICK_Callback()을 이용하여 led 깜빡이기 board selector가 아닌 mcu/mpu로 프로젝트를 만든다. 그럼 다음과 같이 핀 설정이 된다 Timers > RTC > 에서 Activate Clock Source를 눌러 활성화를 해준다. 위의 2번째 탭 Clock Configuration에서 위의 설정을 모두 silvow94.tistory.com 이번에는 타이머 동작 주파수를 이용하여 원하는 주기를 설정해보려 한다. 먼저, 타이머의 Clock Source를 Internal .. 2023. 10. 26.
[STM32] NUCLEO-F429ZI 타이머 카운트 설정 및 HAL_IncTick(), HAL_SYSTICK_Callback()을 이용하여 led 깜빡이기 board selector가 아닌 mcu/mpu로 프로젝트를 만들었다. 그럼 다음과 같이 핀 설정이 된다 Timers > RTC > 에서 Activate Clock Source를 눌러 활성화를 해준다. 위의 2번째 탭 Clock Configuration에서 위의 설정을 모두 마치고 code generate를 하면 stm32f4xx_it.c 파일에 다음과 같은 코드가 있게 된다. main.c에 1초마다 led인 LD1(핀 설정 해야 함)을 토글하면서 켜는 코드를 실행하면 잘 깜빡인다. 또한 Callback 함수를 재정의해서 n초마다 호출하게 할 수도 있다. main에서 Callback 재정의 2023. 10. 26.
728x90