임베디드기초7 함수 포인터와 콜백 완벽 정리 : 임베디드 시스템 기초 함수 포인터와 콜백 완벽 정리: 임베디드 시스템 기초함수 포인터란? 콜백이란?들어가며"함수는 어디에 위차하고 있을까요?"함수도 다른 것처럼 메모리에 저장되어 있습니다.그리고 그들도 모두 주소를 가지고 있죠.프로그램 메모리 구조:┌────────────────┐│ Code (Text) │├────────────────┤│ main()의 주소 │ 예: 0x08001000│ MySensor()의 │ 0x08001234│ 주소 │ 0x08001567│ ... │ 0x08001890└────────────────┘지금까지:int x = 10; // 변수 주소로 접근 (&x)int *ptr = &x;이제:void MyFunction() {.. 2026. 1. 27. C 포인터와 메모리 관리 완벽 정리: 임베디드 시스템 기초 C 포인터와 메모리 관리 완벽 정리: 임베디드 시스템 기초C 포인터와 메모리 관리들어가며포인터는 C 프로그래밍에서 가장 중요하면서도, 가장 어려운 개념입니다포인터에 대해 공부도 했을거고(?) 대충 개념도 알고 있을거예요..(?)하지만 막상 코드를 짜면서, 아키텍쳐를 설계하면서 포인터를 능수능란하게 다룬 다는 것은 쉽지가 않습니다머릿속에 포인터와 메모리 개념이 들어있어서 자유자재로 쓰고 빼고 설계가 되어야하죠요즘엔 AI에게 코드를 부탁하면 촤르르~ 짜주지만포인터에 대해 무지하다면 맞는 코드인지 틀린 점은 없는지 검증 하지 못하겠죠..그냥 AI에 넣고 복붙했을 때 문제가 생긴다면 AI 탓을 할건가요?아닙니다 코드를 검증하지 못한 자신의 탓이 되겠죠.....그 래 서! 포인터에 대해 자세히 알아보자구요!! 자.. 2026. 1. 22. 히스테리시스(Hysteresis) 완벽 정리: 불안정한 경계값을 안정화시키는 기법 히스테리시스(Hysteresis) 완벽 정리: 불안정한 경계값을 안정화시키는 기법히스테리시스(Hysteresis)란?들어가며자동차 ECU는 계속해서 경계값 판정을 합니다.엔진 온도 95°C 이상이면 "과열"? 배터리 전압 12V 이하면 "저전압"? 연료 게이지가 25% 이하면 "경고등"?이렇게 '단순한' 임계값(Threshold) 설정은 실무에서는 재앙이 되게 됩니다.왜냐하면 센서 신호는 경계값 근처에서 미세하게 진동하거든요.온도가 94.9°C ↔ 95.1°C를 오가며 진동하면, 당연히 상태창에선 "정상"과 "과열"이 계속 바뀌겠죠.그럼 결론적으로 과열 경고등이 계속해서 깜빡일 거예요.그럼 엔진 제어가 불안정해지게 되고 앞서 말했듯 재앙이 됩니다.이게 바로 이전 편에 얘기했던 채터링의 문제와 이어집니다... 2026. 1. 8. Embedded Software는 왜 무한 루프를 사용할까? 임베디드 시스템의 기본 구조 이해하기 안녕하세요, 버그없는토마토입니다 🍅오늘은 임베디드 소프트웨어를 처음 접하는 사람들이 가장 의아해하는 부분,바로 “왜 임베디드 소프트웨어는 무한히 반복되는 while(1) 루프를 사용하는가?”에 대해 쉽게 설명해보겠습니다.일반적인 PC용 프로그램과 달리, 임베디드 소프트웨어는 “한 번 실행되고 종료되는” 구조가 아니라전원이 켜져 있는 동안 끊임없이 자신의 역할을 수행해야 하는 시스템입니다.이 구조를 이해하는 것이 임베디드 개념을 잡는 첫걸음입니다.제가 예를 들 때에는 리모컨을 드는데요리모컨은 리모컨 표면에있는 버튼의 역할만 할 수 있는데요버튼에 없는 내용의 역할은 하지못하죠.리모컨은 버려질 때까지 건전지만 있다면 일정한 역할을 수행합니다.고장나지 않는다면 무한히 말이.. 2025. 12. 13. ⏱️ 타이머(Timer)란 무엇인가? 소프트웨어적으로 이해하기 타이머란 ? 안녕하세요, 버그없는토마토입니다 🍅오늘은 자동차 소프트웨어 개발의 기본 중 기본이지만, 처음 접하면 헷갈리기 쉬운 Timer(타이머)에 대해 알아보겠습니다.Timer는 단순히 “시간을 재는 기능”이 아니라, ECU의 모든 실시간 제어를 가능하게 하는 핵심 요소입니다. 자동차라는 시스템은 시간이 정확하게 맞아떨어져야만 안정적으로 작동합니다.센서를 읽는 시점, 제어 연산을 수행하는 주기, 모터를 구동하는 타이밍까지 모두 Timer에 의해 관리됩니다.코드 생성에 있어 가장 기본이라고 할 수 있죠일단 TASK의 기본단위도 타이머기 때문인데요그런 밑바탕 말고 기능적으로 접근한다고 해도 Reminder가 몇 초동안 울릴건지, Indication은 몇 초동안 On될건지, 지시등은 몇 초 마다 Toggl.. 2025. 12. 13. 🚨 Watchdog의 실무적 이해 – 내부 동작, 안전 메커니즘, AUTOSAR WdgM까지 완전 정리 와치독이란?안녕하세요, 버그없는토마토입니다 🍅지난 글에서는 Watchdog의 기초 개념을 다뤘다면,이번 글에서는 실무 개발자 관점에서 Watchdog이 어떻게 동작하고, 왜 안전 설계에서 핵심 역할을 하는지 심층적으로 다뤄보겠습니다. 내용이 조금 심화버전이므로 어려우신 분은 초급자 버전도 작성해 두었으니 아래를 참고해주세요2025.12.13 - [분류 전체보기] - 🚗 Watchdog이란? 자동차 소프트웨어에서 왜 꼭 필요할까? Watchdog은 단순한 타이머가 아니라, ECU의 생존성(liveness)을 보장하는 Safety Mechanism입니다.특히 ISO 26262 기반 ECU 개발에서는 Watchdog의 구조와 설정이 안전성의 품질을 결정할 정도로 중요합니다.와치독의 궁극적 목표는 Safe.. 2025. 12. 13. 이전 1 2 다음