Message 기반 만들기
RTOS조차도 없는 Firmware에서는 각각의 기능 프로세스의 처리 시간을 적당히 잘 분배 해야 합니다. 처리 시간이 긴 프로세스는 여러개로 쪼개야 하며, 특히 인터럽트 발생시 인터럽트 루틴에 긴 처리시간을 요구하는 코드를 넣으면 절대 안됩니다. 더욱이 간당간당한 처리시간을 요구한는 코드를 넣는 경우가 더욱 위험합니다. 왜냐하면 어쩔때는 잘 돌아가고 어쩔때는 에러를 발생시키는 경우가 발생할 수도 있으며 이러한 경우에는 디버깅이 상당히 힘들어 집니다.처음부터 아예 인터럽트 루틴에서는 단순히 데이를 적당한 자료구조에 적재해놓던가, 해당 플래크를 set하는 수준 혹은 메시지를 던져주는 수준에서 마무리하는 것이 가장 좋습니다. 만약 전체 시스템이 1초단위로 어떠한 처리가 끝나야 한다면, 각각의 프로세스들이 최..