본문 바로가기
임베디드 프로그래머의 현실 임베디드 프로그래머의 현실 9년 전, 취업의 문은 매우 좁았습니다. 음.. 음.. 제게는 매우 좁았습니다. 요즘은 더 어려워졌다고 들었습니다. ㅠㅠ 힘내세요 여러분!!! 할 수 있습니다!! 저는 임베디드 프로그래머로 9년 넘게 일을 하고 있습니다. 이 정도 짬밥이면 적은 짬밥은 아닌 연차가 된 것 같습니다. 시니어 개발자라고 하기에는 아직도 실력이 부족한 것 같습니다. 그렇다고 주니어 개발자라고 하기에는 연차를 꽤나 먹은 것 같고... 여하튼 신입 때랑 지금의 모습은 많이 달라졌습니다. 수염도 더 굵게 나는 것 같고 오타도 더 많이 나는 것 같습니다. ㅎㅎㅎ 그런 기념으로 9년간 임베디드 프로그래머 개발자로 지내오면서 경험담을 나눠보려고 합니다. 1. 스타트업? 신생기업? 스타트업 회사의 이미지 하면 무.. 2022. 10. 6.
오실로스코프 사용법 feat.노이즈로 트리거 잡기 힘들다면... 임베디드 SW 개발을 하면서 오실로스코프를 사용하지 못하는 것은 교사에게 칠판과 분필 사용하지 못하는 것과 같습니다. 임베디드 세계에서 오실로스코프를 사용하지 못하면 개발하기가 힘들다고 볼 수 있습니다. 임베디드 MCU를 통해 내가 제어하는 파형이 어떻게 출력되고 있는지 확인해야 하기 때문입니다. 그럼 오실로스코프 사용법에 대해 이야기해보고자 합니다. 특별히 노이즈가 심할 때 에지 트리거 방식을 사용하여 파형을 잡지 못하고 있을 때 트리거를 걸 수 있는 꿀팁을 하나 알려드리도록 하겠습니다. 이번 오실로스코프는 제가 사용하는 요꼬가와 오실로스코프 기준으로 설명하겠습니다. 목차 1. 채널 설정 2. VERTICAL (수직축 스케일 설정 노브) 3. HORIZONTAL (시간축 스케일 설정 노브) 4. Tri.. 2022. 9. 29.
T32 JTAG 디버거 락 Censorship 기능 구현 Feat. MPC5744P 혹시 T32 JTAG 디버거 락 기능을 구현하고 계신가요? NXP칩이시가요? 그럼 정말 잘 찾아오셨습니다. 지금 이 글을 다 읽고 잘 이해하신다면 쉽게 구현하실 수 있을 것이라 생각합니다. 지금부터 Censorship 기능에 대해서 한번 알아보도록 하겠습니다. 고고고!! Censorship 기능이란? MCU를 개발하기 위해서는 디버거 장비가 필요합니다. 그중에서도 회사에서 가장 많이 사용하는 장비는 Trace 32 디버거 장비입니다. 저도 개발의 80%는 Trace32 디버거 장비를 사용하고 있습니다. Trace 32 디버거 장비는 MCU와 JTAG 라인으로 연결되어 있습니다. 그런데 제품을 양산할 시기가 되면 제품을 해커로부터 보호하는 기능들이 필요하게 됩니다. 그중에서도 JTAG 라인으로 디버거 장비.. 2022. 9. 14.
[C언어] 알고리즘을 위한 스택(Stack) 구현 스택 (Stack)이란? 스택은 제일 먼저 입력된 데이터가 제일 나중에 출력되는 자료구조입니다. 임베디드 SW에서 CPU가 코드를 수행하기 위해 메모리에 스택을 잡아 놓는데 그 스택과 같은 것입니다. 그래서 예를 들어 설명하면, 데이터가 4, 2, 1, 5로 입력이 되면 5, 1, 2, 4 형태로 출력이 되는 구조입니다. 좋습니다. 그럼 스택을 한번 구현해보도록 하겠습니다. 스택 구현 코드 #define MAXN 10 int sp = 0; int stk[MAXN]; void push(int d) { stk[++sp] = d; } int top(void) { return stk[sp]; } void pop(void) { sp--; } int empty(void) { if(sp==0) return 1; el.. 2022. 8. 25.