본문 바로가기

[2018 일반부문 / 은상] TargetExpert

OSS관리자 게시글 작성 시각 2019-08-19 11:40:15 게시글 조회수 1188

본 프로젝트는 Target Machine(MCU)의 Firmware를 각각의 Target Machine별 만들어야 하는 불편함을 제거하기 위한 Project로써 LLL(Low-level Layer), MLL(Middle-Level Layer), HLL(High-Level Layer)와 같이 총 3단계의 Layer 구성으로 LLL에서 거의 공통된 Function(혹은 Class) Name을 가진 API로 Target Machine을 각각 별도 구성을 하고 MLL로 완전히 공통된 Function(혹은 Class) Name으로 통합하여 마치 Arduino 같은 기능을 할 수 있게끔 API화 시킨 임베디드용 Framework입니다.

 

이를 통해 초심자도 임베디드 프로젝트를 빠르고 간편하게 제작할 수 있으며, MCU가 제공하는 모든 기능들을 빠르고 쉽게 작성 가능하며 임베디드 프로젝트의 개발의 효용성과 노동력 대비 생산성이 극적으로 향상하는 효과를 가져 올 수 있습니다.

 

본 프로젝트는 현재 진행 중에 있으며, LLL은 우선적으로 AVR만 진행 하였으며, 각각 다른 레지스터 환경을 가지고 있는 2개의 모델(우선적으로 ATMega328p, ATMega128(A), 지속적으로 다른 모델에 대한 지원 추가)이 공통 코드로 동작하며, 이를 최적화(Program Memory 용량 및 Run-time 시 메모리 최적화 및 자동 계산(Timer 및 PWM 주파수 자동 계산 및 모드 자동 선택 등) 최적화 등) 및 테스트 완료 하였습니다. 또한 현재 2개의 회사에서 진행하는 프로젝트에 포함시켜 제품을 제작하고 있습니다.

 

향후에 PIC, ARM Cortex-M 등 다양한 모델을 LLL로 어느 정도 공통화 시키고, MLL에서 완전한 통합을 하여 서로 다른 기종을 쓰더라도, 하나의 MLL로 만든 Production Code가 있다면 Target Machine 설정을 변경하는 것만으로도 컴파일 하여 탑재가 가능한 펌웨어 코드가 될 수 있다.

맨 위로
맨 위로