제가 요 근래 ST사의 STM32F 시리즈를 접해보다가 개발환경이 맘에 들어서 제 나름대로
소개할까 합니다.
https://my.st.com/content/my_st_com/en/products/development-tools/software-development-tools.html
여기에 들어가보면 다양한 개발환경이 있습니다.
그 중에 저는 TrueSTUDIO의 개발환경을 선택했습니다.
제 컴에는 IAR도 깔려 있지만,아무래도 공짜라는 것땜시..IAR를 과감히 버리고?
TrueSTUDIO를 선정했습니다.ㅎㅎ
TrueSTUDIO는 Atollic사의 제품이었는데 작년 연말에 ST로 합병이 되어서 이제는 정말 공짜로
사용할 수 있게 되었다더군요? 돈없는 개발자들에게는 정말 감사한 일입니다!
그리고 TrueSTUDIO에는 컴파일러로 GCC를 사용하는데 이것 또한 공짜입니다.
아래 그림은 TrueSTUDIO소개입니다. 참조하세요^^
http://www.st.com/en/development-tools/stm32-ides.html?querycriteria=productId=LN1200
잘~아시는 분들도 많이 계시겠지만, 요즘 MPU PIN CONFIGURATION할때,INITIAL할때,
일일이 메뉴얼 찾아보고 하지 않습니다.
오직 마우스만 가지고 설정을 합니다.(물론 저만 잘 몰랐을 수도 있습니다.ㅎㅎ)
ST사에는 STM32CubeMX가 있는데, 이거 정말 편리합니다.
누구나 10분이내로 INITIAL CODE를 만들어낼 수 있습니다.
STM32CubeMX에서 CODE GENERATION하면 바로 TrueSTUDIO로 넘어가서 코드가 제대로
되었는지 확인을 할 수 있습니다.(물론 HAL를 사용합니다.)
자세한 사용법은 유튜브에서 많이 찾아볼 수 있습니다.
아래는 STM32CubeMX초기 화면입니다.
그리고 마지막으로 RTOS(이걸 외국인들은 '알토스'라고 부르더군요? 난 이제껏 알티오에스라고
발음을 했더랬는데..)를 소개합니다.
제 생각에는 하드웨어 개발자라면 알토스(RTOS)를 꼭 사용해야 할 시대에 접어들었다고
봅니다. 물론 모든 프로그램에 사용할 수는 없지만,앞으로는 많이 사용되리라 생각됩니다.
알토스를 사용해서 개발을 한다면,
개발시간도 단축,실시간 처리,다양한 입출력 대응,기능과 성능의 다양화등등의
많은 장점이 있겠습니다.
그러기 위해서라면 알토스에 대해 조금 공부를 해야겠지요?ㅎㅎㅎ
예전에는 알토스를 사용했던 이유가 MPU의 빈약한 자원을 효율적으로 이용할려는 목적이
많았다고 하더군요?
그렇지만 요즘은 MPU의 자원이 넘치고 흘러서 그럴 필요도 없어졌지만,
다른 한편으로 유저의 요구가 다양하고 고성능을 요구하는 추세로 볼때,
이제는 알토스의 등장이 자연스러운 현상이지 않을까 생각됩니다.
더구나 32BITs의 MPU 가격과 주변 하드웨어 가격이 많이 떨어져서 시스템을 구축하는
비용 부담이 없어진 점도 한 몫하리라 봅니다.
이제 알토스 + 32비트MPU를 마구마구 사용해도 될 듯 합니다.ㅎㅎㅎ
참 제가 소개하고 싶은 알토스는 FreeRTOS입니다. 물론 이것도 공짜입니다.ㅎㅎ
전 간단한 실험만 해봤지, 아직은 프로젝트와 연계는 하지 못했습니다.
물론 예전에 8비트 알토스로는 프로젝트를 한 경험으로 봐서 제가 사용하는데는
별 무리가 없을 듯 합니다.
혹시 FreeRTOS를 사용해서 프로젝트를 해 보신 분이 계시면 댓글로 조언 부탁드립니다.
마지막으로 제가 소개한 것은 모두 공짜(무료:당연 ST에 로긴해야 합니다.)이긴 한데,
다른 유료제품에 비교해서 성능이 떨어지거나 절대 허접하지는 않다고 봅니다.
돈없고 불쌍한 개발자들 위해서 제 개인적인 소견이었습니다.
물론 좋은 의견이 있으시면 댓글로 부탁합니다.
om님은 활동 분야가 다양하신 듯 합니다. 요새 제 주위에서도 STM32로 많이들 갈아 타시더라고요.
저도 가끔 필요에 의해서 사용하긴 하는데, 최근에는 쓸일이 없네요.
MCU 퍼포먼스만 받쳐줘서 RTOS가 무난히 돌아간다면,
RTOS로 개발하는게 훨씬 좋은 것 같습니다.
당연한 얘기지만 개발자가 고민해야될 많은 부분들이 커널이라는 형태로 제공되니까요.
유지보수, 디버깅 면에서 앞도적입니다..
저도 회사에서 STM32 개발보드를 많이 사용합니다.
감사합니다
아무것도 모르는 초보가 공부하기 좋은가요?