[Quick Summary (TL;DR) - For Global Developers]Symptom: 인터럽트 서비스 루틴(ISR) 또는 하드웨어 레지스터 상태 변경 시, 메인 루프(Main Loop)의 조건문이 갱신되지 않고 시스템이 무한 루프(Infinite Loop) 또는 행(Hang) 상태에 빠짐.Cause: volatile 키워드 누락으로 인해 컴파일러 최적화(Compiler Optimization, -O2/-O3) 과정에서 하드웨어 레지스터 및 전역 변수의 RAM 재참조 로직이 제거되고 CPU 레지스터(Register) 값만 반복 조회하도록 잘못 최적화됨.Solution: 메모리 매핑 I/O(MMIO) 레지스터 주소 포인터 및 인터럽트 공유 전역 변수 선언문에 volatile 한정자를 명시하여 ..