임베디드 시스템은 보통 운영체제가 없는 코드를 짬.
올릴 수도 있긴 함. 근데 그럴 경우는 라즈베리파이 쓰지 않으려나?
임베디드 기본 프로그램은,

루프 하나에서 다 돌음.
걍 은행 ATM 기계 같은 거 생각하면 될 듯.
그리고 예외는 오직 인터럽트 밖에 없다고 함.
인터럽트는 운영체제에서 컴퓨터에 예기치 않은 일이 발생하더라도 작동이 중단되지 않고 계속적으로 업무처리를 할 수 있도록 해주는 기능 이라고 함.
뭐 타이머 인터럽트 예외나 이런 거 라고 함.
이것들은 아직 잘 모르겠고,
여튼간에 1루프 안에 다 돌아가는 프로그램을 만든다. 그게 임베디드
참고로, HAL_Delay(100)에서 HAL은,
Hardware Abstraction Layer의 약자로,
하드웨어 추상 계층, 이라는데,
원래 저렇게 딜레이라던지 걸려면 회로로 제어를 해야 하는데,
그거를 소프트웨어로, 추상적으로, 가상으로 제어한다고 해서 하드웨어 추상 계층이라고 이름 붙인 듯.