개발 환경 구축때문에 너무 고민이 많습니다.

whdgjs809의 이미지

원래 모터관련 제어가 주전공이었는데

회사에 취직하고 나니 점점 프로그램만 주구장창 짜고있네요...

컴공 관련으로 전문적으로 배우지를 못해서 갈피를 어떻게 잡아야 할지 너무 고민입니다.

기존에는 모터나 각종 제어시스템을 실시간 제어하기 위해서 마이컴 기반으로 프로그램을 작성했는데

점점 사용자가 만지는 UI 부분까지 작업을 다 해야 하다보니 UI쪽 작업이 너무 고되더군요.

기존에는 간단한것들은 다소 노가다성 코드로 일일이 다 작업하긴 했는데 일이 점점 늘어나다보니

거의 한계에 다다르고 있는거 같습니다.

현제 주로 펌웨어 기반으로 작성중이고 아무래도 단가가 걸리고 또 제어 프로그램상 실시간성이 보장

되어야 하다보니 리눅스 같은 임베디드 os를 올리기가 좀 많이 버겁더군요.

그래서 왠만하면 일반 mcu에서 단일 테스크로 작업하거나 아니면 시스템이 조금 복잡해지면

rtos를 올려서 사용할 생각인데 ui관련해서 도저히 감이 안잡힙니다.

노가다성으로 작업하는것도 어느정도 한계가 있고 적당히 위쪽과 예기해서 상용라이브러리를 구입하든지

할 생각인데 어떻게 진행해야 할지가 참 막막하네요.

cortex m3나 m4등에서 가볍게 올릴 수 있는 gui 라이브러리가 쓸만한게 있을까요?

주로 monochrome으로 작업을 하긴 하는데 향후에는 컬러 lcd까지 고려는 하고 있습니다.

회사에서 투자를 해야 한다면 투자는 거의 확실하게 할꺼 같은데 그렇다고 너무 비싼걸 구입하긴 그렇고

최대한 비용을 줄이면서 이런 환경에서 gui개발 환경을 구성할 수 있는 방법이 어떤게 있을까요?

조언쫌 주시면 대단히 감사하겠습니다.

goforit의 이미지

제가 예전에 비슷한 고민을 한적이 있어서 적습니다.

cortext M3, M4로 정했으면 그리고 "혼자" 모든 것을 다 하시려면 펨웨어보다 상용 RTOS를 사용하시는 것을 추천합니다.
예로 MicroC/OS-II 한번 고려해 보세요. UI는 µC/GUI라는 제품을 판다고 합니다.
http://micrium.com/rtos/ucgui/overview/

다른 무료 RTOS 들이 여러개 있습니다. 하지만 그런 것들을 고려하면 다시 GUI 문제가 대두되었습니다.

개발자가 적으면 상용 RTOS + UI 넣거나, 하니면 돈을 투입해 개발 인력을 늘려 독자 UI 개발해야합니다.
간단한 사실이지만, 저도 설득이 어려웠습니다. ^^

whdgjs809의 이미지

현제 고민끝에 찾은 솔루션은
조금 마음에는 안들지만 lpc1788칩을 사용하면 어느정도는 해결될듯 싶더군요...
아무래도 기계가 메인인 회사이다보니 소프트웨어에 중요성은 인지하고 있지만 선듯 투자하기에는 품의받기고 골머리 아프고요... ucos도 생각해봤었는데 이녀석으로 개발환경 구축할려면
금액때문에 아무래도 사장님 품의까지 받아야 해서 쫌 껄끄럽더군요.
뭐 제품 단가 몇천원 정도 희생하는 대신에 편의성을 조금 trade-off 했다고 생각할려고 합니다.
lpc17xx나 lpc18xx 그리고 lpc43xx계열 사용하면
FreeRTOS + FreeRTOS(FatSL) + emWIN(Segger, GUI)가 상용라이센스로 무상 사용이 가능하더군요.
emWIN은 컴파일된 라이브러리 형태로 제공되어서 프로그램으로 좀 노가다는 해야겠지만 GUI부분만 외주 처리하는걸로 어느정도는 내부적으로 합의를 봤습니다.
이래나 저래나 고생해야 하기는 똑같지만 어떻게든지 해봐야 겠지요. ㅜ.ㅜ

goforit의 이미지

LPCxx 끊질기게 시장 포지션을 잘하구 있네요.
ARM7 계열이 항상 소프트웨어를 고민하게 만들고, 이 틈에 저런 RTOS 업체가 꾸준하게 살아 남는 것 같네요.