본문 바로가기

메이커활동/HW&SW

SDCC - Small Device C Compiler + s51 디버거

8051용 컴파일러가 꽤 있다.
그중에 많이 쓰이는 것이 KEIL 과 IAR 이다.
그 외에도 RIDE51 이라는 컴파일러도 있고, 그 외에도 찾아보면 꽤 된다.
그중에 SDCC 라는 컴파일러를 한번 사용해 보려고 한다.

우선 SDCC 는 오픈소스정책에 의해 소스가 공개된 녀석이고, 사실 커맨드라인에서 이것저것 쳐 넣어야 하는 귀찮은 부분이 있기는 하지만 그래도 완전무료 컴파일러라는 점에서 마음에 들었다.

초창기에는 설명이 어렵고 설치도 어려워서 사용을 하려다가 포기도 했었는지 요즘 보니 설치와 사용법이 많이 간편해 졌다.

http://sdcc.sourceforge.net/ - SDCC 와 관련 문서자료 다운

http://sdcc.sourceforge.net/ 에 가서 왼쪽 [Windows] 를 클릭한 후,  Windows package with installer (i586-mingw32msvc-setup) 라고 되어 있는 부분에 가서 최신버젼의 SDCC 를 다운받고, Full documentation, including HTML and PDF files; zip is for Windoze (docs) 에서 SDCC 에 대한 문서자료를 다운받으면 된다. 다운받아서 설치하는 것은 어려운 일이 아니니 8051을 다루려는 사람은 그정도는 할수 있으리라 생각한다.

물론 위 두 파일은 8051 을 윈도우 환경에서 쓰려는 사람들이 받아야 할 파일이다. 그 위에 리눅스 환경에서 컴파일러를 설치하고 사용하기를 원하면 그에 따른 파일을 받아서 설치하도록...


이걸 받았으면 디버거를 위한 파일을 하나 다운받자. 무료 컴파일러지만 그래도 하다보면 디버거가 필요하다. 지금까지 좋은 디버거를 썼다면 조금 귀찮더라도 이런 구형 디버거에도 한번 익숙해져보는 것도 괜찮을 듯..

http://mazsola.iit.uni-miskolc.hu/~drdani/embedded/s51/#use - 무료 디버거 다운

여기도 도스버젼과 유닉스 버젼이 있다. 현재 도스 버젼은 더이상 업그레이드를 하지 않고 있다. 그래서 일부 기능은 만들지 않은 채로 공개되어 있다. 그래도 써보니 도스버젼이라도 쓸만하다. 국내 대부분의 PC 가 윈도우를 기본운영체제로 하고 있어 아무래도 도스버젼을 써야 할 듯하다. Win2000 에서 써본결과 별 이상이 없었다. 윈98에서도 잘 돌아갈 거라고 생각되고, 혹 XP 는 아직 안 써봐서 잘 모르겠다.

참고로 RIDE51 컴파일러도 여기 링크해둔다. 프랑스 Raisonance 사에서 만든 프로그램이고, KEIL C 와 비슷한 모습을 가지고 있다. Raisonance 사의 한국 지사인 yjsystem.com에서 최신버전(데모)을 무료로 다운받을 수 있다. (C compile 4Kb로 제약, 임의번지부터 Hex파일로 변환 가능)
keil C 가 2Kb인것에 비해서 활용 범위가 큰 장점이 있고, Keil 의 경우 0x4000 이후번지부터 쓸수 있게 된 반면 RIDE51 은 0x0000 부터 쓸수 있어 이것이 큰 장점이다.


RIDE51다운로드

KEIL 과 IAR 은 각자 사이트를 검색해보면 공개된 버젼을 구할수 있을 것이다.