본문 바로가기
  • SpokeHouse
728x90
728x90

STM32F1032

STM32F103 - TIMER 인터럽트 만들기 안녕하세요 오토입니다. 이번 메모 포스팅은 간단한 TIMER 만들기 메모입니다. 타이머 하나 살리구요 클럭소스는 internal Clock으로 하겠습니다. 파라메터들 세팅 해주시구요 저는 지금 1set 만들려고해요 참고하시고 prescaler는 mcu마다 최대로 쓰는 internal Clock이 다르니까 잘보시고 하시면됩니다. 인터럽드 걸려야되니까 체크해주구요 HAL_TIM_Base_Start_IT(&htim3);//sub timer 1sec 스타트 때려주시고 void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { if (htim->Instance == htim3.Instance) { ms_count++; if(ms_count >= 1000) { m.. 2023. 12. 2.
STM32F103 - UART DMA로 문자열 한번에 받기 안녕하세요 오토입니다. 통신 모듈이나 기타 인터페이스에서 문자열이 정해진 프로토콜이 아닌 길이가 변경되서 들어오면 일반 HAL 드라이버에서 리시브로는 잘안되고 너무 복잡스런 상황이 생깁니다. 하나씩 받아서 링퍼버 만든거에 넣고 링버퍼 확인해서 꺼내오고 초기화 해주고 해봤는데... 항상 느끼지만 복잡하면 실수와 버그가 늘고.. 하다가 머리털 다빠질것같아 여기저기 뒤적거리다가 괜찮을것 같은 소스 땡겨다가 수정좀 했더니 잘돌아가서 메모 합니다 일단 UART2 DMA로 사용할거고 세팅 해줍니다. 통신 모듈이 BAUD RATE가 9600이라 맞춰주고 DMA 챕터? 카테고리? 에서 ADD 해줍니다. 인터럽트 켜주시고 저장하고 코드 제네레이션 해줍니다. 메인에서 UART2 이니셜 되었는지 확인해주고 다음으로 넘어갑니.. 2023. 11. 25.
728x90
728x90