본문 바로가기
반응형

Embedded SW/Embedded SW Introduction40

Flash Driver 포팅 및 Erase, Write 동작 확인 정리 (TC275 인피니언 MCU) 안녕하세요. 오늘은 인피니언 MCU TC275를 이용하여 Flash를 Erase, Write 하는 동작을 수행해 보도록 하겠습니다. 먼저 인피니언에서 제공해주는 TC2x Flash Demo 코드를 포팅하여 동작시켜 볼게요! 관심있으신 분들은 추후 TC275보드를 구매하셔서 직접 따라해 보셔도 좋을 것 같습니다. 우선 Demo Code는 아래와 같습니다. 그럼 먼저 포팅을 해볼게요! 휴우 드디어 포팅이 완료 되었습니다. 인피니언 예제는 쉽게 포팅하여 동작시켜볼수 있도록 잘되어 있네요! 그러면 인피니언에서 제공하는 IDE (Aurix Development Studio)를 실행하여 Tasking 컴파일러로 컴파일 해보도록 하겠습니다. 다행이 Error랑 Warning이 없네요. 그러면 이제 포팅한 Pflash.. 2022. 9. 16.
elf, hex, s19 파일 생성 방법 정리 (Tasking 컴파일러, Aurix Development Studio) 안녕하세요. 바로 전에 메모리와 section에 대해서 정리를 하였는데 오늘은 elf, hex, s19 파일이 무엇인지 그리고 이러한 파일을 makefile에서 어떻게 생성하는지 알아보는 시간을 가지도록 하겠습니다. 아래 보이는 검은박스가 MCU입니다. 저 검은박스 안에는 CPU도 들어있고, RAM도 들어있고, Flash도 들어 있습니다. 그리고 제어를 수행하기 위한 다양한 주변기기도 들어 있습니다. 우리가 코드를 만들게 되면 컴파일을 수행하고 다운로드 가능한 파일을 만들게 되는데요. 대표적으로 elf, s19, hex 파일이 있습니다. elf 파일은 이진수로 이루어진 코드와 디버깅 심벌이 있습니다. s19와 hex는 코드만 들어 있고 심벌은 없습니다. 각기 MCU에서 다운로드를 하기위한 약속된 형식으로.. 2022. 9. 15.
mcu memory, section에 대한 상세 정리 (.text, .data, .bss, .rodata) 안녕하세요. 오늘은 MCU 개발을 하는 과정에서 memory와 section에 대해 궁금해 하시는 분들이 많이 있으신데요. 이 부분에 대해서 한번 알아 보는 시간을 가지도록 하겠습니다. 먼저 section의 사전적인 뜻을 확인해 보도록 하겠습니다. section은 아래와 같이 '부분'이라고 나와 있습니다. 메모리를 컴파일하면 section이 나누어 지게 됩니다. 예를들어서, 아래와 같은 코드가 있다고 생각해볼게요. int Test1; int Test2 = 2; const int Test3 = 3; int main(void) { int Test4 = 4; Test1++; Test2++; Test4++; return 0; } Test1이라는 변수는은 초기화가 되지 않은 전역변수입니다. 따라서 초기화되지 않은.. 2022. 9. 15.
CAN 구현 및 동작 수행 7편 (CAN ACK 상세 분석) 안녕하세요. 오늘은 CAN ACK에 대해서 조금더 자세히 알아보는 시간을 가져보도록 하겠습니다. CAN은 제어기를 설계하는데 있어서 아주 중요한 주변기기입니다. 그 다양한 산업군에서 CAN에 대한 안전성도 충분히 검증이 되었기 때문에 임베디드에서 CAN을 통해서 제어기의 정보를 송수신하는데 많이 사용합니다. ​ 따라서 CAN의 동작상태를 자세히 알아두면 추후, 디버깅을 하실때 많이 유용하실 것입니다. 그 중에서도 ACK에 대해서 꼭 알아두시면 많인 도움이 되실것입니다. 이번 장에서는 CAN Frame에 마지막 부분에 위치한 ACK에 대해서 추가 정리하는 시간을 가지도록 하겠습니다. 지금 이 글은 CAN에 대하여 개념부터, 구현까지 연재를 하고 있습니다. 아래 글부터 읽어보시면 도움이 되실 것입니다. 1).. 2022. 9. 15.
반응형