MCU
-
stm32f103xb 오픈소스 빌드 하기MCU 2024. 2. 25. 11:14
얼마전에 nucleo board를 빌드하려고 stm32cubeide를 켰는 데 cube mx로 code generating하려면 st.com에 로그인하라는 팝업을 목격했다. ??? 너무 황당해서 vscode와 msys2 mingw를 이용한 빌드 환경을 만들어 봤다. blink 예제 이다. HAL, LL, CMSIS 다 사용 가능하다. https://github.com/akswnd98/start-stm32f103xg-project GitHub - akswnd98/start-stm32f103xg-project Contribute to akswnd98/start-stm32f103xg-project development by creating an account on GitHub. github.com
-
stm32 uart without HALMCU 2023. 4. 17. 11:52
stm32 펌웨어 작성시 uart송신을 할 때 보통 HAL_UART_Receive_IT로 interrupt를 활성화하고 HAL_UART_RxCpltCallback으로 interrupt를 처리하는 방식을 많이 사용할 거 같다. 이 방식에는 단점이 존재한다. 수신이 완료 되면 인터럽트가 비활성화 되므로 HAL_UART_RxCpltCallback 에서 HAL_UART_Receive_IT를 다시 호출해야 하는데 데드락 문제로 HAL_UART_RxCpltCallback이 호출되지 않으면 더 이상 수신을 받을 수 없다. 수신 사이즈가 정해져 있어서 가변적인 data나 실시간 data 수신에 제약이 있다. 그렇다고 수신 사이즈를 1로 설정하면 HAL라이브러리가 무거워서 그런지 오버런이 엄청 발생한다. 그래서 필요에 ..