HAL(Hardware Abstraction Layer) == 하드웨어 추상화 계층
st사에서 지원하는 stm32칩 전용 라이브러리이다.
이전에는 hardware가 다양하지 않아 direct로 구현해도 괜찮았지만 hardware가 다양화 되면서 OS측에서 direct로 구현하면 hardware가 변견될 때마다 새로 구현해줘야하는 번거로움이 생겼다.
하지만 HAL 라이브러리를 쓰면 이러한 수고를 덜 수 있다.
어떤 하드웨어(칩)라도 쉽게 개발을 할 수 있도록 인터페이스를 제공한다.
실제 HAL 코드를 뜯어보면 #define문에 의해 stm32f0부터 stm32f7까지 전 제품에 맞게 해당 코드들이 세팅되어 있어 사용하려는 MCU만 선택하면 페리프 설정을 자동으로 해주니 사용자 입장에서 크게 신경 쓸 필요가 없다.
장점: 범용성
단점: 속도가 느림
'MCU > stm32' 카테고리의 다른 글
[NUCLEO-F103RB] 보드 분석 : HW layout (0) | 2024.09.30 |
---|---|
[NUCLEO-F103RB] 보드 분석 : 개요 (1) | 2024.09.30 |
[NUCELO-F103RB]UART (0) | 2023.01.12 |
[NUCLEO-F103RB] GPIO (0) | 2023.01.12 |
[NUCELO-F103RB]NUCELO-F103RB 소개 (0) | 2023.01.12 |