루덴스코드 Blog

8051 +32
PADS 로 만드는 8051 회로도 과제 입니다.



Comment +0

사용자 삽입 이미지


2005년에 MIT학생들로 이루어진 Dropout Design Team(DDT)은 뭔가 특별한 것을 시도한다. 그들은 보기에 멋지고, 만들기 쉽고, 누구나 쉽게 사용가능한 키트를 만들게 된다.

이것이 Conway 의 라이프게임을 LED로 구현한 키트다. 이 키트는 모듈로 구성된다. 모듈별 구성은 여러개가 합쳐지면서 보다 큰 형태의 LED 판넬을 만들수 있다.

이 키트는 간단한 땜질로 조립이 가능하고 쉽게 휴대할 수 있을 뿐만 아니라, 가격도 저렴하다. 각 모듈은 16개의 LED로 구성되며 4x4 의 격자모양을 가진다. 각 모듈은 마이크로프로세서 Atmega48 을 사용하고, 모듈별로 총 16개, 4x4의 LED 를 컨트롤하게 된다.

가격은 $19.99 이지만 한국에서 구입할 곳은 없다.


사용자 삽입 이미지


사용자 삽입 이미지


Atmega48 의 소스코드는 다음과 같다.

1. life.c

>> 코드 전체를 보기 원하시면 클릭하세요...


2. lifecomm.c

>> 코드 전체를 보기 원하시면 클릭하세요...


3. lifecomm.h

>> 코드 전체를 보기 원하시면 클릭하세요...




이전글 - 라이프게임을 하드웨어로 구현하다.

[VIA:MAKE]


Game of Life 의 회로도, PCB 와 C소스
http://electoy.tistory.com/112
JelicleLim(2008.7.21)

Comment +0

라이프게임은 영국 수학자 존 호튼 코웨이가 고안해 낸 세포 증식 프로그램이다. 인생게임, 혹은 라이프게임(Life Game)이라고 불리는 이 게임은 보통 우리가 생각하는 두명 혹은 그 이상의 사람들이 대결하는 종류의 게임과는 다르다.

이 게임은 초기치가 그 결과를 나타내게 된다. 즉, 무조건적으로 어떤 초기치가 주어지면 그에 따른 결과가 나오게 되는 것인데, 마치 그 결과가 사람이 태어나고 결혼하고 번식하고 죽는 것 처럼 어떤 일정한 패턴을 가진다고 해서 붙여진 이름이 바로 라이프게임인 것이다.

이 게임의 룰은 두가지다.

  • 죽은 세포의 이웃 중 정확히 세 개가 살아 있으면 그 세포은 살아난다. (‘태어난다’.)
  • 살아 있는 세포의 이웃 중에 두 개나 세 개가 살아 있으면, 그 세포는 계속 살아 있는 상태를 유지하고, 이외에는 ‘외로워서’, 또는 ‘숨이 막혀서’ 죽어버린다.

라이프게임을 자바로 구현한 곳이 있어 소개한다. 처음 아주 작은 몇개의 초기치가 어떻게 발전하는지 가만히 지켜보고 있으면 놀라움과 경탄을 금치 못하게 된다. 인생도 이와 같은 아름다움을 주는 것일까?

* 자바로 홈페이지에서 직접 실행가능
* Life Game 의 프리웨어 (PC실행)
* Wonder of Math : 다양한 패턴을 웹상에서 직접 실행가능

이 두가지와 검색을 활용하면 라이프게임에 관한 재미있는 영상들과 자료들을 충분히 얻을 수 있다.

이 라이프게임을 LED로 구현해 본다면?

구글 동영상 유투브에 재미있는 LED 로 만든 Life Game의 동영상이 올라왔다. 이것을 보니 한번 만들어보고 싶다는 생각이 들었다. TY52로 한번 제작을 해볼까 생각중이다.




라이프게임을 하드웨어로 구현하다.
http://electoy.tistory.com/111
JelicleLim(2008.7.21)

Comment +0

VEX ROBOT CLASSROOM LAB FOUNDATION KIT

VEX ROBOT CLASSROOM LAB FOUNDATION KIT


[VIA:RobotMagazine, RoboShop]

VEX ROBOT CLASSROOM LAB FOUNDATION KIT

PIC18F8520 를 사용하는 상당히 기초적인 로봇키트다. 실습용으로 적당할 듯 하다. 그다지 복잡하지 않고, 외형도 단순하며 원하는 확장을 하기 편한 프레임을 갖추고 있다. 가격은 $ 317.99 로 그다지 싸보이지는 않지만 그래도 시작하는 단계에서 쓸만하다는 생각이 든다. 이것저것 갖추고 프레임까지 제작하게 된다면 이정도 가격은 금방 넘어가니까...

사용자 삽입 이미지

부품구성도 상당히 깔끔하다. 어려운 프로세서를 쓰는 것도 아니고, 지극히 기본적인 아미크로콘트롤러에 모바일타입의 로봇이다. 특별한 개성보다는 초보용 실습 키트로 첫걸음을 시작하기 적당한 키트로 보인다.
아직은 국내에 소개되지는 않았지만, 이런 식의 다양한 실습키트가 주어진다면 하는 바램을 가져본다.

로봇을 시작하는 사람들이 갖출만한 첫 로봇키트 - VEX ROBOT
http://electoy.tistory.com/94
JelicleLim(2008.7.2)

Comment +0

Silabs ToolStick 관련 자료 모음

ToolStick Led Blink 프로그램
ToolStick 회로도 & PDF
Silabs의 ToolStick 1 Paper Manual
Silabs ToolStick IDE 와 SDCC 연결하기
Silabs ToolStick 사용 기초
Silicon Laboratories 에서 나온 8051 데모 키트 사용 후기
SDCC 현재 나온 최신버젼


Comment +0

ToolStick Led Blink 프로그램은 다음과 같다.
프로그램코드는 제공되는 CD안에 들어있으며, 역시 인터넷으로 Silabs 홈페이지에서 검색하여 사용이 가능하다.
컴파일은 Keil C51을 사용하였다.

--- 프로그램코드 ---

more..


컴파일과 링크 후 작동되는 모습의 동영상을 함께 올려본다.





ToolStick Led Blink 프로그램
http://electoy.tistory.com/92
JelicleLim(2008.7.1)

Comment +0

성인을 위한 장난감가게, 펀샵이라고 이름지워진 곳에서는 다양한 종류의 장난감을 판다.
물론 성인용품이 아니라 진짜 성인을 위한 장난감들이다. 누가 그러던가, 남자는 아이든 어른이든 장난감을 가지고 살아야 하는 존재라고... 그 말이 충분히 공감이 간다. 여기 있는 다양한 종류의 장난감들을 보면 남자 어른들 중 마음이 흔들리지 않는 사람은 없을게다. 문제는 어른을 위한 장난감인만큼 그만큼 비싸다는 것인데, 여기서 가정을 위하는 마음과 자신을 위하는 마음 사이에 갈등이 생기게도 된다.

사족이 길었다. 여기서 한 시계를 발견했다. 다른 것들도 마음에 드는 것들이 많지만 이런 디자인은 참 독특하고, 재미있다는 생각이 든다. 이걸 응용해서 전자시계를 한번 만들어보는건 어떨까? 지금까지처럼 공돌이는 무조건 8-Segments LED 로 숫자만 보여주면 그걸로 끝인 시대는 끝났다. 이제는 디자인도 고려하지 않을 수 없다. 디자인을 전공한 사람처럼 할수는 없을지라도 그래도 무언가 자기만의 독특한 개성을 담아내지 못한다면 공돌이는 역사의 뒤안길에서 슬피울며 땜질만 해댈것이 뻔하기 때문이다.

사용자 삽입 이미지
멋지지 않은가? 게다가 이 시계는 작은 원이 시간을 나타내지 않고 분을 나타낸다. 사실 작은 바늘이 시간을 가리킨다는 사실이 굉장히 싫었다. 언뜻 눈에 띄는 큰 바늘이 시간을 나타낸다면 그 바늘하나만 가지고도 충분히 분을 어느정도 짐작할 수 있다. 이 시계는 큰 원 하나의 위치만으로 시간과 분까지 알수 있다는게다. 물론 작은 원이 있으니 보다 정확한 분을 알수도 있다. 혹시 정밀성, 정확한 시간 어쩌고 할 사람은 ... 그냥 5천원짜리 전자시계차면 된다. 요즘 왠만한 5천원짜리 시계도 시간 틀리지 않고 잘 간다.

가장 내부의 원이 초침의 역할을 한다. 결과적으로 재미있는 역동성을 가진 디자인의 시계가 되었다. 이 시계를 디자인한 다니엘 윌 헤리스 Daniel Will-Harris 는 이 시계에 Equilibrium 이라는 이름을 붙였다. 꽤나 이름도 멋들어지게 붙였다. 균형이라....

여기에 약간의 아이디어를 덧붙여 벽걸이형 시계를 만들어보면 어떨까? 꽤나 재미있는 장난감이 나오지 않을까?
[VIA:FunShop]

Equilibrium, 새로운 디자인의 시계
http://electoy.tistory.com/91
JelicleLim(2008.6.30)

Comment +0

사용자 삽입 이미지


Part 1 : C8051F321 - USB 를 통한 PC와 연결 및 디버깅 담당
회로도는 두 부분으로 나눠져 있다. 간단히 USB 를 통해 PC와 연결되는 부분이 있다. 이 부분에 사용되는 칩이 C8051F321 이라는 칩이다. 역시 8051 칩인데 이건 PC와의 USB 통신을 통해 프로그램을 올리거나 디버깅용으로 사용된다.

Part 2 : C8051F300 - 직접 제어하는 8051 코어
또 다른 부분이 직접 사용하는 부분이다. C8051F300 칩이 사용된다. 회로도를 보면 알겠지만, F300 보다는 차라리 F321 을 위한 회로였으면 하는 마음이 든다. 그래도 이건 StoolStick 의 Evaluation 버젼이고 간단한 테스트로 LED 를 깜박이는 것을 주로 하는 것이니 더 이상의 주문을 바라는 것은 무리다. 원한다면 Evaluation 버젼이 아닌 ToolStick 을 구입해야 한다. 그것 역시도 구입이 가능하고 다른 종류의 칩을 사용할 수 있도록 이것과는 조금 다른 모습으로 만들어져 있다. 그건 다음번에 설명해본다.

그런데 이 회로를 보고 느끼는 건데, 생각보다 아주 단순하게 USB와의 통신을 가능하게 하고 있다. 별도의 이렇다할 코일 하나 없이 그냥 다이렉트로 4개의 선을 잇는 것으로 끝내버린다. 아마도 USB포트에 직접 꼽는 다는 것때문에 노이즈에 대한 외부 회로를 생략한 것 같기도 하다. 어쨌거나 이 칩 C8051F321 을 잘 사용하면 USB 사용이 무척 간단해 질것 같다.

사용자 삽입 이미지PC 의 USB 를 통한 연결을 담당하는 부분 회로

사용자 삽입 이미지C8051F300 이라는 작은 칩


Comment +0



사용자 삽입 이미지


사용자 삽입 이미지



실제로 ToolStick 은 이보다는 조금 더 복잡하다. 하지만 이정도로 작은 크기다.
데모버젼의 ToolStick 은 작은 한장의 종이로 된 메뉴얼이 있다. Quick Start Tools Demo 라고 이름 붙여진 이 1-Paper Quick Start Guide 혹은 1-Paper Manual 은 간단하게 CD를 통해 프로그램을 설치하는 것부터 기본적 프로그램 디버깅까지 과정을 나타내고 있다.


Silabs의 ToolStick 1 Paper Manual
http://electoy.tistory.com/87
JelicleLim(2008.6.25)

Comment +0

Silabs 의 ToolStick Evaluation Kit 은 $10.99 에 구입할 수 있다. 구입이 완료되었다고 하고(혹은 여러 행사가 있을때 사은품으로 주로 이 ToolStick 이 제공된다.), SDCC 도 설치가 되었다면 이제 두 가지를 연결해서 프로그램을 넣어보는 단계다.

여기엔 몇가지 프로그램이 필요하다. 우선 SDCC 를 사용할 때 모든 옵션을 직접 Line 상에서 하듯이 일일이 커맨드를 치거나 혹은 예전 방식의 배치파일을 만들어서 사용할 수도 있다. 하지만 Silabs 에서는 무료 IDE 를 공개하고 있다. 그 공개 IDE 를 가져다가 설치하자.

[Silabs:IDE]

이곳에서 중간정도에 있는 [ Silicon Laboratories IDE ] 를 다운받으면 된다. 다운받고 설치하자.

그리고 한가지 더 설치할 것이 있는데, 그것은 SDCC 로 컴파일이 완료된 실행파일을 ToolStick 으로 전송해주는 프로그램이다. 다만 Evaluation ToolStick 의 경우, IDE 에서 프로그램 전송과 실행이 모두 되고, Terminal 프로그램에서는 지원하지 않는다. 즉 Evaluation ToolStick 을 사용할 경우 터미날프로그램은 소용이 없다는 뜻이다.

필요하다면 ToolStick Terminal application 이라고 이름지어진 이 프로그램은 [Silabs:USB ToolStick] 에서 ToolStick Development Tools 라고 이름붙여진 곳에서 다운받으면 된다.

이제 정리를 해 보면, 이런 순서다.

ToolStick Evaluation Kit을 구한다[구입, 혹은 증정받음] -->
프로그램을 짠다. [IDE + SDCC] -->
프로그램을 전송한다.[ToolStick Terminal Program 또는 IDE 에서 직접(Eva ToolStick 은 IDE만 가능)] -->
실행

참고로 위 프로그램들은 ToolStick 을 살때 CD안에 들어있는 것들이다. 그러나 시간이 지나면 조금 더 버그가 잡히고 보다 나은 효율의 프로그램으로 업데이트를 하기 마련이다. CD에 있는 것을 그대로 쓰기 보다는 홈페이지를 찾아서 더 새로 나온 것이 있다면 그것을 사용하는 것이 혹시나 있을 문제를 미리 방지하는 것이기도 하다. 그래서 필자는 CD의 내용을 살펴보면서도 동시에 홈페이지로 가서 혹시 더 업데이트된 내용이 없는지 확인 후 새로운 드라이브나 프로그램을 사용하는 편이다.


Silabs:ToolStick 사용 기초
http://electoy.tistory.com/85
JelicleLim(2008.6.24)

Comment +0

오늘 SDCC 를 찾아보니 약간의 버젼업이 되어 있다. 사실 내가 사용하는 부분은 8051 부분이라 그다지 별 변화는 없는 편이다. SDCC 는 홈페이지에 이렇게 소개되어 있다.

SDCC is a retargettable, optimizing ANSI - C compiler that targets the Intel 8051, Maxim 80DS390, Zilog Z80 and the Motorola 68HC08 based MCUs. Work is in progress on supporting the Microchip PIC16 and PIC18 series. SDCC is Free Open Source Software, distributed under GNU General Public License (GPL).


GNU, GPL 이 나오고 그 기반의 Open Source Software 라고 나온다. 물론 모든 소스까지 공개되어 있다. Small Device C-Compiler 의 약자로 8051을 사용하려 할때 아무래도 공개된 컴파일러로서 유일한 컴파일러이기도 하다. 다른 상용 컴파일러들은 컴파일시 크기 제한을 두거나 혹은 주소에 제한을 두는 등의 제한조건을 둔다.

프로그램을 다운 받기 위해서는 홈페이지에서 직접 다운을 받는 것이 최신의 버젼을 받을 수 있는 방법이다. 생각보다 자잘한 변화를 고려해서 자주 업데이트가 되는 편이다.

http://sdcc.sourceforge.net/snap.php

위 사이트에 가보면 SDCC 를 다운받을 수 있게 해준다. 여러개 있지만 그중 윈도우를 사용하고 있다고 가정하고 윈도우 실행파일과 문서파일을 다운받는다.

사용자 삽입 이미지

사용자 삽입 이미지

위에서 맨 위에 있는 색이 변한 것, 그것을 다운 받으면 된다. 하나는 실행파일이고 다른 하나는 문서파일이다. 실행파일을 실행시키면 하위 디렉토리에 Doc 가 나온다. 그곳에 문서파일을 집어 넣어두면 편하다. 물론 어디에 둬도 프로그램 장체에는 전혀 지장없다.

SDCC 의 단점은 통합환경 IDE 가 없다는 것이다. 그래서 종종 다른 개발자들에 의해 개발환경 툴이 만들어지기도 한다. Silabs 의 경우, 컴파일러를 Keil 이나 SDCC 모두 사용할 수 있도록 IDE 를 제공해 준다. 덕분에 SDCC 를 사용하는 것이 무척 편해진다.

Evaluation 용 Toolstick 을 가지고 있고, 이를 프로그램하기 위해 SDCC 를 설치했다. 이제 왠만한 준비는 마친것이다.

SDCC 현재 나온 최신버젼
http://electoy.tistory.com/83
JelicleLim(2008.6.24)

Comment +0

꽤 오래전에 받은 평가판 8051 스틱(?)이다.

사용자 삽입 이미지

그림을 보면 잘 나와있듯이 USB 로 통신이 가능하다. USB 를 이용하는 칩을 통해 프로그램코드를 쓰고 디버깅할 수 있으며, C8051F321 과 함께 C8051F300 을 사용한다.
LED 가 전면과 후면에 배치되어 있어, 깜박임을 관찰함으로 프로그램이 제대로 수행하는지 점검할 수 있게 한다.


1. 컴파일러 : SDCC

8051 의 프로그램은 보통 KEIL, IAR 등을 많이 사용한다. 물론 이 외에도 다른 컴파일러들이 몇있기는 하지만 아무래도 상용의 프로그램은 보통 이 둘 중 하나로 선택된다. 가장 강자는 KEIL 이다.

여기서는 Keil 과 Iar 대신 SDCC 라는 공개된 컴파일러를 사용해보려고 한다. 물론 공개기 때문에 공짜다. 프로그램을 해본 결과 그다지 Keil 등의 컴파일러와 큰 차이는 없어 보인다. 단 디버깅이나 IDE 등에서 확실히 비싼 돈을 주고 사야하는 Keil 은 그 값을 하게 된다. 그래도 돈이 없는 (혹은 컴파일러를 구할 요령이 없는) 이들을 위해서 싼 가격에라도 공부하고자 하는 마음을 꺽지 않기 위해 SDCC 를 사용해 보고자 한다.


2. 크기 : USB 플래시메모리 크기와 동일

크기가 작아서 그냥 PC의 USB포트에 꼽고 그냥 사용할 수 있다. 작다는 것은 그만큼 유용하다. 또한 별도의 전원을 공급할 필요가 없다. 고작해서 LED 몇개 켜고 끄는 정도니, PC에서 나오는 USB의 전원으로도 충분하다. 즉, 매우 편리하다. 소지면에서나 기타 주머니에 넣고 학교 도서관에서 공부하면서 이걸 USB에 꼽아서 거기서 프로그램을 할 수도 있다.


Silicon Laboratories 에서 나온 8051 데모 키트 사용 후기
http://electoy.tistory.com/84
JelicleLim(2008.6.24)

Comment +0

유투브에서 재미있는 영상을 발견했다.
앞으로 유투브의 영상을 종종 소개하면서 그 내용과 제작 방법까지도 한번 다뤄보면 어떨까 싶다.


 
LED Cube Live Winamp Visualization


LED 로 전광판을 만드는 것은 이제는 식상한 공작이 되어가고 있다. 16*16 짜리 LED 를 구하기도 어렵지 않고 프로그램도 왠만하면 다 공개되어 있어서 그냥 쓰면 될 정도다.
물론 여기 동영상으로 제공되는 큐빅은 아이디어가 좋은 것이지 기술적으로 어려운 것은 아니다. 다만 번뜩이는 아이디어로 입체화된 LED Equailzer 를 보게 된다.

언제 한번 만들어봤으면 하는 마음이 든다. TY52 를 사용해서 6*6*6, 즉 216개의 LED (각 6개씩만 넣어도 이렇게 많다니...) 로 큐빅을 만들고 제어를 위해서 6*3, 즉 18개의 포트를 사용하면 된다. 그러면 TY52에 약간의 OP-Amp 만 추가하면 이걸 충분히 만들수 있겠다. 그리고 음성신호를 입력받아야 하나 AD컨버터가 하나 있어야 하겠다. 동영상은 4*4*4, 64개의 LED를 사용했다. 이 정도로도 충분히 복잡하고 또 쓸만해 보인다.

문제는 216개의 LED 를 공간상에 제대로 배치를 해야 한다는 것인데, 이 부분은 거의 노가다 수준이 될 듯 하다. ... 이쯤되니 또 귀찮아서 못만들겠다는 생각이 든다...



Comment +0

THE FINAL WORD ON THE 8051

8051 관련 자료를 뒤지다보면 거의 반드시 발견하게 되는 자료들이 있다. 여기 "THE FINAL WORD ON THE 8051"이 그 중의 하나다. 사실 정확한 출처는 잘 모른다. 문서 내부에도 이 문서가 어디서 만들어졌는지, 어디에 연락을 해야 만든 사람을 알수 있는지 나오지도 않는다. 내용은 상당히 오래된 감이 있지만 8051 이 21세기에 와서 크게 바뀐것은 없다. 바뀐것이 있다면 다양한 별종(?)들이 출현하기 시작했다는 정도...

그 별종들은 프로토타입(인텔 8051)을 알면 대부분 거기에 약간의 추가기능과 성능향상을 넣은 정도다. 물론 그 성능향상이라는 것이 속도가 두세배 정도 빨리지는 정도는 아니다. 하지만 사용방법은 크게 변함이 없다는 것이다. 그만큼 이 문서의 효용성은 높다. 8051을 다룬다면 한번쯤 살펴보는 것도 좋을 것이다.

책의 Introduction 부분만 이곳에 올려본다. 나머지는  아래 파일을 다운받아서 보면 된다.

This is a book about the Intel 8051 microcontroller and its large family of descendants. It is intended to give you, the reader, some new techniques for optimizing your 8051 projects and the development process you use for those projects. It is not the purpose of this book to provide various recipes for different types of embedded projects.

Wherever possible, I have included code examples to make the discussion clearer. There are points in the book where projects are discussed as a means of illustrating the point of the given chapter. Much of this code is available on the companion disk, to use it you will need to be familiar with C and 8051 assembler since this book is not intended to be a tutorial in C or 8051 assembler. There are many fine books you can buy to learn about ANSI C. As for 8051 assembler, the best source is the Intel data book which is free from your 8051 vendor or the manual that comes with your particular assembler.

The code on the companion diskette contains the code I wrote and compiled for the book you hold in your hands. It is fully functional and has been tested. This is not to say that that the code on the diskette is ready to go into your system and be delivered as part of your projects. Some of it will require change before it can be integrated into your system.

This book will help you learn how to make the best out of the tools you have. If you only have an 8051 assembler, you can still learn from this book and use the examples, but you will have to decide for yourself how to implement the C language examples in assembler. This is not a difficult task for anyone who understands the basics of C and the 8051 assembler set.

If you have a C compiler for the 8051, then I congratulate you. You have made an excellent decision in your use of C. You will find that your project development time using C is lower and that your maintenance time using C is also lower. If you have the Keil C51 package, then you have made an excellent decision in 8051 development tools. I have found that the Keil package for the 8051 provides the best support. The code in this book directly supports the Keil C extensions. If you have one of the
other development packages such as Archimedes or Avocet, you will find that this book is still of great service to you. The main thing to be aware of is that you may have to change some of the Keil specific directives to the appropriate ones for your development tools.

In many places in this book are diagrams of the hardware on which the example code runs. These are not intended to be full schematics, but are merely block diagrams that have enough information to allow you to understand how the software must interface to the hardware.

You should look upon this book as a learning tool rather than a source of various system designs. This is not an 8051 cookbook, but rather an exploration of the capabilities of the 8051 given proper hardware and software design. I prefer to think that you will use this book as a source of ideas from which your designs springboard and grow in a marvelous world of sunshine and roses! Seriously, though, I think you will gain useful knowledge from this book that will help you greatly improve your designs and make you look like your company’s 8051 guru.

다음번에는 이 문서의 내용 중 일부를 설명하면서 8051의 특징들을 살펴보기로 한다.

8051 인터넷 문서 - THE FINAL WORD ON THE 8051
http://electoy.tistory.com/owner/entry/post
JelicleLim(2008.6.15)

Comment +0

사용자 삽입 이미지

8051 을 공부하고자 하는 사람들을 위해 쓴 글의 목록이다. 추가로 계속 수정될 것이며, 현재까지 기록된 것은 다음과 같다.

2007/11/17 - [TY52 & 8051] - SDCC - Small Device C Compiler + s51 디버거
2007/11/22 - [TY52 & 8051] - TY52 보드 설명 1 - Port 0 의 풀업저항
2007/11/22 - [TY52 & 8051] - TY52 보드 설명 2 - Port2 에 붙은 LED
2007/11/22 - [TY52 & 8051] - TY52 보드 설명 3 - 크리스탈과 리셋회로
2007/11/22 - [TY52 & 8051] - TY52 보드 설명 4 - 시리얼통신, 전원입력
2007/11/22 - [TY52 & 8051] - TY51 보드 설명 5 - 외부 확장핀
2007/11/22 - [TY52 & 8051] - TY52 - MAX232 시리얼통신
2007/11/22 - [TY52 & 8051] - TY52 - ISP
2007/11/17 - [ElecToy] - DotMatrix LED 로 전광판 만들어보기
2007/11/17 - [ElecToy] - TY52 보드 전광판 소스 - DOTMATRIX SLM1606M 사용
2007/11/17 - [ElecToy] - TY52보드 이용, SLM1606 Dot - Matrix LED 작동
2007/12/04 - [TY52 & 8051] - TY52, TY_RS232, TY_ISP 부품 리스트
2007/12/05 - [TY52 & 8051] - TY52 보드 조립설명서
2007/12/05 - [TY52 & 8051] - TY_ISP 와 RS232 보드 조립방법
2007/12/05 - [TY52 & 8051] - TY52 전원 연결, ATX 파워 서플라이와 DC/DC 컨버터
2007/12/05 - [TY52 & 8051] - TY52 이용한 8051 스터디 기초자료
2007/12/05 - [TY52 & 8051] - TY52 기초자료 모음, SDCC/ISP-Pgm

Comment +0

TY52 보드에 사용되는 AT89S52 와 AT89C51ED2 의 차이를 묻는 질문이 있었다. 아마도 마이크로프로세서를 공부하다보면 이런 종류의 의문을 가지게 되는 경우가 많을 것이라 여겨져서 관련된 글을 답변과 함께 써본다.

질문 :
>TY52와 AT89C51ED2에 차이를 알고 싶습니다.
>
>제가 쓰는 것은 8051계열에(이렇게 알고 있습니다.)AT89C51ED2인데요.
>
>졸업 하기 전에 이것 저것 많이 써보고 프로세서를 많이 경험해 보고 싶어서요.
>
>단순하게 8051에서 AVR로 AVR에서 ARM으로 넘어갈려고 하니까..
>
>뭔가 암담하게 느껴지네요.
>
>간단하게라도 좋으니,
>
>둘에 대표적인 차이라도 알고 싶습니다.
>
>일단 기초 설명에 도면 같은 걸 봤을때..
>
>핀수는 되려 ED2쪽이 더 많이 있는 것으로 보입니다만...


답변 :
사용자 삽입 이미지
기본적으로 8051 이라하면 8051 코어를 가지고 있는 것 모두를 의미합니다.
코어는 8051 이면서 거기에 약간의 부가적인 것들을 추가해서 새로운 칩을 만들어 냅니다. 이를테면 AD 기능을 붙인다든지, 램이나 롬을 추가로 더 넣는 다든지, 혹은 인터럽트를 더 넣든지, 타이머를 넣든지, 또는 내부적인 속도를 향상시키든지 하는 방법으로 새로운 칩이 만들어지고, 새로운 이름이 붙여지는 것이죠.

TY52 는 AT89S52 를 사용합니다. 8051 기본 기능에 충실하면서 내부 플래시 메모리가 있어서  ISP 로 프로그램이 가능하다는 장점과 함께 특별한 기능이 없기에 가격이 저렴하다는 점 때문입니다.

AT89C51ED2 는 AT89S52 와 비교해 가격이 6배정도 비싼 듯 합니다. (디바이스마트 비교 900원 대 6000원) 그만큼 기능이 좋다는 뜻이겠지요. 플래시 메모리도 충분히 많고, 램도 확장해서 사용할 수 있도록 큰 편입니다. 타이머나 인터럽트도 많고, EEPROM 까지 제공하는 군요.속도도 40MHz 까지 작동하니 더 빠른 녀석입니다.

즉, 이런 정도의 조금은 나은 프로세서를 써서 만들어야 할 제어기가 있다면 이AT89C41ED2 를 사용하면 되는 것이고, 그 정도는 아니고, 가벼운 온도센서와 연결해서 온도를 측정하고 보낼 정도의 가벼운 기능을 원한다면 이것보다는 훨씬 저렴한 AT89S52 를 써도 충분하다는 것이지요.

이런 점에서 자신이 쓰고자 하는 것을 선택해서 사용하면 됩니다. 위에서 언급했듯이 TY52 는 저렴하면서 기본적인 8051 기능을 학습하고자 만든 것이라 부가적인 기능은 최소화시키고 저렴한 AT89S52 를 사용했습니다.

사용자 삽입 이미지

AT89C51RD2는 AT89S52와 비교해 다음과 같은 특징이 있습니다.
  • [두 종류 모두] ISP(In System Programming) 지원
  • [두 종류 모두] 8051/8052 호환
  • [동작속도] AT89S52 는 33MHz 까지, AT89C41ED2 는 40MHz 까지 동작가능
  • [내부 플래시 메모리] AT89S52 는 8KByte (1,000회), AT89C41ED2 는 64KByte 의 플레쉬 메모리 내장( 10,000회 지웠다 쓰기 가능)
  • [RAM] AT89S52 는 256 Byte, AT89C41ED2 는 1972 Byte RAM 내장
  • [AT89C41ED2] 2K Byte EEPROM 내장 (100,000회 지웠다 쓰기 가능)
기타 특징이 더 있습니다. 나머지는 직접 데이타시트를 참고해 보면 됩니다.
AT89S52 http://www.atmel.com/dyn/resources/prod_documents/doc1919.pdf
AT89C41ED2 http://www.atmel.com/dyn/resources/prod_documents/doc4235.pdf

이 외에도 다양한 메이커의 칩들이 있습니다. 8051 은 다른 마이크로프로세서에 비해 그 종류가 훨씬 다양합니다. 즉, 8051 을 기본적으로 알고 있다면 약간의 프로그램을 적용함으로 다양한 하드웨어를 만드는데 비용이 훨씬 줄어들 수 있다는 것이지요.


마이크로프로세서엔 왜 이리도 종류가 많을까? (AT89S52 와 AT89C51ED2 의 차이를 통해 봄)
http://electoy.tistory.com/50
JelicleLim(2008.1.1.)

Comment +0

TY52, TY_RS232, TY_ISP 부품 리스트 (v1.1_0610)
TY52부품리스트가격포함A5.hwp

사용자 삽입 이미지 사용자 삽입 이미지 사용자 삽입 이미지 사용자 삽입 이미지
[보드]
보드 A = TY52 : 2,000 원
보드 B = TY_ISP : 1,500 원
보드 C = TY_RS232 : 1,500 원

[SET]
SET A = {TY52 보드+부품} : 7,000 원 (= 5000+2000)
SET B = {ISP+부품} : 4,000 원 (= 2500+1500)
SET C = {RS232+부품} : 4,000 원 (= 2500+1500)
SET D = {전원개조 및 입력} : X (개별판매 없음)
SET E = SET {A+B+C+D} : 15,000 원 [A+B+C] +D
[송료] : 2,500 원

[계좌] 시티은행 329-02479-263-01 곽지연 011-786-1099

* 한글로 작성한 것이라서 테이블이 웹상에 적용하기가 쉽지 않네요. 그림으로 올립니다. 귀찮으신 분을 위해서 한글파일자체를 함께 올립니다.

* 부품과 보드는 개인적으로 만들어서 스터디용으로 사용하는 것입니다. 외부에서 판매되는 것이 아니니 참고하시기 바랍니다. 스터디등의 용도로 보드가 필요하신 분은 언제든지 연락하시기 바랍니다. 아직 보드가 남아있습니다. ^^

* 필요한 것이 있으시면 게시판 http://www.electoy.net 에 있는 위 메뉴에서 [보드구입] 게시판을 통해 알려주시기 바랍니다. 게시판에 알리실 때는 이름과 전화번호, 우편번호를 포함한 주소를 적어주시고 비밀글로 올려주시면 다른 사람이 보지 못하고 제가 확인할 수 있습니다. 질문과 답변은 별도의 게시판이 있습니다. [Q&A] 게시판을 이용해 주세요.

* 다음 양식을 참고로 적어주시면 제가 발송하기 편해집니다(우편 번호를 꼭 써주세요). 참고로 저 역시 이 일을 업으로 하는 것이 아니기 때문에 약간 늦어지거나 조금의 불편한 사항들은 양해해 주시면 감사하겠습니다. ^^

* 시간에 여유가 되면 바로 바로 발송을 하겠지만 아무래도 급한 일들 때문에 부품 챙기고 포장하는 일에 생각보다 여유가 많지 않습니다. 조금만 참고 기다려 주세요.

* 혹시 중간이라도 시간이 될때 중간 중간 발송할 수 있습니다. 요즘은 한달 동안 보통 5개에서 10 정도 발송하는 것 같습니다. 그때 그때 봐서 시간될 때 조금씩 해두는 게 저로서도 좋으니까요.. 게다가 시간도 별로 없는 상태이기도 하구요... (혹시 TY52 보드 판매의향이 있으신 분 계시면 연락주세요. 기꺼이 모든 것을 알려드립니다. 저는 그냥 책 쓰고 가르치는 쪽에만 전념하고 싶어서요.)

(예) -----------------[시작]-----------------------
이름 : 홍길동 전화 : 011-1111-1111
품목 : 보드 A - 2개 / SET E - 2개
주소 : 서울 강남구 가동 나아파트 11-101
(우 123-123)
입금 : 36,500 (= 2,000*2 + 15,000*2 + 2,500 [송료])
(예) -----------------------[끝]---------------------

          ------------------------------------------
          Timy의 전자카페 기분좋은 하루되세요. ^^
          블로그 : http://www.electoy.net 
          블로그 : http://electoy.tistory.com 
          스터디카페 : http://cafe.daum.net/timy8051 
          ------------------------------------------

TY52, TY_RS232, TY_ISP 부품 리스트
http://electoy.tistory.com/40
JelicleLim(2007.12.4.)

Comment +3

  • 궁금이 2009.11.12 12:21 신고

    안녕하세요? 보드 구입을 하려고 하는데 http://www.electoy.net 사이트에는 들어가지지가 않더라구요...

    그래서 만약 구입을 할 수 있으면 어떤 방식으로 구입을 할 수 있는지 가르쳐주실 수 있으신가요?

    그럼 답변 기다리겠습니다.

    • 공지에 글을 남겨두었습니다.
      일반 프린터포트를 이용한 ISP와 TY52를 원하시면 발송해드리겠습니다. 그 경우 주소를 메일로 알려주세요.

  • 궁금이 2009.11.17 12:27 신고

    메일드렸는데... 어디로 계좌입금해야 하나요? 계좌가 2개가 있던데... 메일을 보내드렸는데 바쁘신지 아직 안 읽으셨네요... 여튼 답변 기다리겠습니다.

TY52 기초자료 모음 - [자료실]

SDCC 컴파일러 : KEIL 이나 IAR 처럼 통합환경은 아니지만 내부 메모리를 사용할 수 있다

http://sourceforge.net/project/showfiles.php?group_id=599 에서 sdcc-win32(윈도우용 SDCC컴파일러) 설치 / sdcc-doc(doc파일) 설치

http://www.electoy.net/blog/?no=41&category=4 : SDCC 에 대해 예전에 기록한 설명

TY52용 ISP프로그램 : 아래쪽에 있는 프로그램을 사용하기를 권한다.

ISP Flash Microcontroller Programmer Ver 3.0a
http://www.kmitl.ac.th/~kswichit/IspPgm30a/ISP-Pgm30a.html

- 위의 프로그램에서 .BAT 파일이 없어졌다. IspPgm.exe 를 실행시키면 된다. Write 후 Verify 속도도 향상되었다. 불필요한 영역까지 Verify 하던 이전 방식에서 Write 한 영역만 Verify 하도록 알고리즘을 바꿔 속도도 상당히 빨라졌다.


TY52 기초자료 모음, SDCC/ISP-Pgm
http://electoy.tistory.com/45
JelicleLim(2007.12.05.)

Comment +0

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.
이미지를 클릭하시면 원본크기로 보실수 있습니다.
이미지를 클릭하시면 원본크기로 보실수 있습니다.
이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.


ledblink.hex
ledblink.c
TY52_기초과정.pps

TY52 이용한 8051 스터디 기초자료
http://electoy.tistory.com/44
JelicleLim(2007.12.05.)

Comment +0

제목 : TY52 전원 연결 [ATX 파워서플라이 사용 & 7805 사용한 dc/dc 컨버터]

1. ATX 파워 개조 방법
이미지를 클릭하시면 원본크기로 보실수 있습니다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

마이크로프로세서를 사용한다면 당연히 전원준비가 되어야 한다. 보통 5V 를 많이 사용한다. 모터등을 돌릴때는 12V 정도를 준비해야 할때도 있다. 적당한 파워를 상점에 가서 사도 되겠지만 행여나 주변에 못쓰는 컴퓨터가 있고, 그걸 버리는 사람이 있다면 거기서 파워서플라이를 떼어와서 전원으로 사용하면 좋다. 돈도 굳고 게다가 아무리 헐었어도 PC에 사용하던 것이니만큼 조금 출력이 약하더라도 상당히 안정적인 전원을 공급할게다. 그러니 이런 파워서플라이를 보면 얼른 떼서 그것만이라도 하나 챙겨두자.
파워서플라이는 두종류가 있다. 실제로는 더 있기는 한데, 어떻게 쓰이는지 나도 잘 모른다. 아는것은 예전에는 AT 타입의 파워서플라이가 사용되었었다는 것과 지금은 거의 대부분 ATX 타입의 파워서플라이를 쓴다는 것이다. AT 타입은 외부에 전원스위치가 달려있었다. 이전 PC를 기억하는 사람들은 투박한 푸쉬버튼을 힘차게 눌러야 "딸깍"하는 소리가 나면서 PC가 켜졌던 것을 기억할 것이다. 끌때도 마찬가지로 그 스위치로 껐다. AT타입이다. ATX는 전원스위치가 없다. 그래서 처음 이녀석을 접하는 사람들은 조금 당황한다. 하지만 당황할 필요는 없다. 이 그림에서 보이듯이 PS_ON# 이라는 선과 COM 을 이어주면 그것이 스위치역할을 한다. 실제적으로 다른 +5VSB와 PWR_OK 를 통해 메인보드가 전원의 끄고 켜는 일을 하지만 간단하게 두선 - 검정색과 초록색 - 을 이어주면 바로 파워온 상태가 된다. 필요하면 이 두선을 스위치에 연결해 두고 사용해도 괜찮을 것이다. 나 역시 그렇게 사용을 하고 있다.
그리고 파워서플라이에서 나오는 많은 다른 선들이 있다. 꼭 필요한 정도만 남기고 나머지 지저분한 선들은 가급적 잘 잘라서 나중에 합선이나 예상치 못했던 일이 발생하지 않도록 해두는 것이 좋겠다. 빨간선은 5V, 노란선은12V, 검정색은 GND 이다. 나머지 찾아보면 3.3V 도 있고 -12V도 있고 그렇지만, 왠만하면 그런것들은 잘 사용하지 않는다. 그냥 잘라두거나 아니면 잘 말아서 보이지 않고 걸리지 않게 넣어두는편이 좋겠다.

2. TY52 보드연결을 위한 파워회로도 (7805 사용한 dc/dc 컨버터)

TY52 보드를 만들면서 전원은 기본적인 파워서플라이에서 가져다 사용했습니다. ^^
그걸 그대로 사용하시면 문제 없이 잘 작동할 겁니다.
인터파크에 보니까 아주 저렴한 파워서플라이도 팔더군요. 고장난 PC가 주변에 있으면 거기서 파워 떼다가 5V 전원 나오게 만들어 사용하시고, 그게 없으면 파워서플라이를 하나 사시고(그게 가격이 훨씬 저렴한 것 같습니다. 전원도 안정적으로 나올거구요...), 혹시 집에 9V 에서 12V 정도의 아답타가 있으면 그걸 사용하셔도 좋겠네요. 아답타 사용시 아래 회로를 참조해서 출력 5V 용 DC/DC 변환기를 사용하시면 됩니다. 7805 를 사용하는 기본적인 회로인데 별로 효율이 좋은 회로는 아니라고들 해서 그냥 이 정도의 작은 회로에서나 사용돕니다. 하지만 우선 간단하고 만들기 편하니까 기존의 아답타를 사용하실 분은 이 회로를 참조해서 5V 출력을 만들어 사용하시면 되겠습니다. ^^
참고로 1번이나 2번 중 하나만 되면 됩니다. +5V 전원입력을 위해 2번보다는 가능하면 1번을 추천합니다.



[그림설명] TY52 보드에 들어가는 전원 관련 회로도
9 - 12V 의 아답타에서 5V의 전원을 만드는 회로도

[그림설명] PCB 위에 부품 배치한 모습
그대로 만능기판에 적당한 위치에 배치하면 만들면 OK!
만능기판에 만드시라고 2.54mm 간격으로 선을 그려두었습니다. PADS로 작업하다보니 C1, C2 의 다리 위치가 구멍과 딱 맞지 않습니다. 대충 참조하시고 적당한 구멍에 넣어서 땜질하시면서 작업하시면 됩니다. 이정도는 다들 아시는 거죠? ^^
J1 이라고 되어 있는 아답타용 컨넥터 다리는 적당히 구멍을 확장시키던가 아니면 PCB에 칼이나 톱, 아니면 드릴로 작업하셔야 할겁니다. ^^



CAM 파일로 만든 모습

부품 실장면이 위에서 본 모습 (패턴은 신경써서 반대쪽에서 연결해야 함)



뒷면에서 본 패턴도 위 두번째 그림대로 부품을 배치한 후 바로 위 그림대로 뒷면에서 패턴을 이으면 완성

이 그림을 프린트해서 보시면서 뒷면에서 주석선 등으로 땜질하면서 이어주세요. ^^

U1 이 7805 인데, 뒷판에 방열판을 달아도 좋은데, 8051 같은 경우 그리 많은 전력소모가 있는게 아니니 안달아도 별 무리는 없을 듯 해서 귀찮게 달지 않았습니다. ^^

필요하신분을 받아가세요. PADS로 만든 위 회로도입니다.

ty52pv10.pcb
TY52power.sch
timy.ld4 timy.ln4 timy.pd4 timy.pt4 : PADS 라이브러리


TY52 전원 연결, ATX 파워 서플라이와 DC/DC 컨버터
http://electoy.tistory.com/43
JelicleLim(2007.12.05.)

Comment +4

  • 빛가플 2008.03.26 22:49 신고

    안녕하세요. 글을 읽다가 문의 드려요 ATX파워 선에서 +5VSB와 PWR_OK 를 통해 메인보드가 전원의 끄고 켜는 일을 한다고 하셨는데요. 스위치를 만들어 어느부분에 연결을 해야 PC가 켜지나요? PC를 ATX 파워선에서 스위치를 만들어서 켜보려고 합니다. 가능할까요?

    • PC 를 켜고 끄는 역할에 대해서는 더 자세한 데이타시트를 참고해야 할 듯 하네요. 그저 여기서는 외부 스위치가 없는 상태에서 파워 서플라이의 두선 (검정색과 녹색)을 연결함으로서 의도적으로 5V 의 전원을 만드는데 목적을 두었을 뿐이니까요... 위의 첫 그림같이 하면 전원이 들어오긴 합니다만, 그게 과연 메인보드에 어떤 영향을 미치지 않고 그저 전원 On 역할만 할지는 모르겠군요... 혹시나 억지로 하다가 보드가 망가질 수도 있을 듯 한데.... ^^

  • 빛가플 2008.03.31 17:43 신고

    답변 감사드립니다. 이래저래 해봤는데 안되는듯 싶네요. 회색으로 수초안에 신호가 들어가야 한다고 나온것은 같은데요. 잘안되네요. 해결을 꼭 보고 싶은데....

    • 별 도움이 못되서 죄송하네요.. ^^
      요즘 파워서플라이 가격도 싼 편인데, 그냥 하나 사서 다시는게 낫지 않을까요? .... 이전 것은 공작용으로 따로 마이크로프로세서용 전원공급용 하나 두시고 말이죠... ^^

TY_ISP 와 RS232 보드 조립방법입니다.

TY_ISP 와 RS232 보드 조립방법입니다. 예전에 만들었던 것과 크게 틀린 부분은 없습니다. ISP 보드의 경우 다이오드가 하나 추가되었고 RS232 보드의 경우 10uF 의 콘덴서가 옆의 부품과 들러붙어 있는 것을 조금 떼었습니다.

1. TY_ISP 보드 조립

아래 사진은 모든 부품을 모아 두고 찍은 것입니다. 특별히 극성을 타는 것은 다이오드와 IC 입니다. 이 두가지는 방향을 바꿔서 넣으면 안됩니다. 꼭 주의하세요.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

ISP PCB 모습입니다. 그림에서 보이듯 U1은 1번핀이 오른쪽으로 향하게 되어 있고, D1 은 머리띠가 왼쪽으로 향하게 되어있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

25핀 D-SUB 후드입니다. 플라스틱으로 된 후드의 뒷 부분을 칼이나 니퍼등으로 적당히 잘라서 만들어진 PCB가 잘 들어맞도록 해주세요. 굳이 후드없이 사용하실거라면 후드는 조립하지 않아도 상관없습니다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

모든 부품이 올라간 뒤 납땜까지 완료된 상태입니다. 잘 보면 다이오드의 극성이 보일겁니다. 바깥쪽으로 머리띠가 둘러진 부분이 나오게 하시면 됩니다. IC 74367 은 1번핀이 화면상으로 아래를 향하고 있습니다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.


2. TY_RS232 보드 조립

조립은 간단합니다. 보이는 PCB 위에 지시된 대로 부품을 올리고 납땜하면 됩니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.
전체 부품을 펼쳐놓고 찍은 사진입니다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

아래 사진은 모든 부품이 다 올라간 다음 찍은 사진입니다. 10uF 짜리 콘덴서 납땜시 극성방향에 주의하세요. IC 쪽으로 향하는 다리가 + 표시가 된 것입니다. 아래 사진을 잘 보면 모든 콘덴서의 윗부분 모습에서 오른쪽이 - 라는 것을 알수 있을겁니다. IC 는 MAX232 또는 그와 호환되는 칩을 사용하면 됩니다. MAX 232 가 종종 품절이 되서 다른 호환되는 칩을 종종 사용합니다. 전혀 성능에 지장은 없는 듯 하더군요.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.
케이블 만드는 과정은 아래 이전에 만들어두었던 내용에서 가져옵니다.

ISP 케이블 제작 과정입니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

준비할 것, 10핀 플랫케이블과 10핀 플랫케이블 컨넥터다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

10핀짜리 플랫케이블의 끝부분에 컨넥터를 끼워야한다. 끝 부분을 가위로 깨끗하게 잘라주자.

이미지를 클릭하시면 원본크기로 보실수 있습니다.
컨넥터를 플랫케이블에 살짝 끼운다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.
조심 조심 끝 부분에 잘 맞춘다. 여기서 주의할 것은 1번 줄은 빨간색으로 맞추고, 커넥터의 약간 돌출된 부분을 보면 1번 핀의 위치가 삼각형으로 표시되어 있다. 1번선이 빨간선이 되도록 해 준다. 앞뒤 모두 동일하게 해 주어야한다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

끝부분에서 꽉 눌러주면 된다. 그냥 손으로는 힘만들고 잘 끼워지지 않는다. 펜지같은 조금은 딱딱하면서 평평한 면으로 컨넥터를 힘있게 천천히 눌러주면 된다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

이렇게 해서 잘 끼워진 컨넥터..

이미지를 클릭하시면 원본크기로 보실수 있습니다.
이것만 해도 사용에 아무 지장이 없지만 혹시나 하는 안전을 위해 한번 더 꽉 잠금새를 채워준다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

잠금새까지 한번 더 물린 상태

이미지를 클릭하시면 원본크기로 보실수 있습니다.

양쪽을 동일하게 해주면 된다.





여기서부터 RS232 케이블 제작과정입니다.

이제 4핀 케이블의 조립이다. 이게 제일 어려운것 같다...

이미지를 클릭하시면 원본크기로 보실수 있습니다.

앞에서 준비한 4핀 케이블을 손질한다. 끝 부분을 조금 벗겨낸다. 와이어스트리퍼라는 것을 사용한다. 없다면 이번 기회에 하나 장만하자. 가늘고 중요한 신호를 보내는 선들을 니퍼로 벗기는 것은 상당한 무리다. 와이어스트리퍼는 전자공작을 하는 사람에게 있어서 없어서는 안될 중요한 도구다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이 선을 클램프에 땜질해야 하는데, 이건 해본 사람이 안다. 정말 힘들고 성가신 일이다. 조금 더 쉬운 방법이 없을까 찾아보게 되는 일이다. 그래서 이번에 아야 끝 부분에 클램프가 붙어있는 전선을 구입하기도 했다. ^^
여기서는 연구실에 돌아다니는 이쑤시개를 사용한다. 이쑤시개의 끝 부분에 클램프의 한쪽 끝 - 땜질 하는 반때쪽 - 을 살짝 끼워 넣는다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.
이쑤시개를 펜치등의 조금 무거운 것으로 잘 눌러놓는다. 이쑤시개는 돌아가거나 움직이지 않게 한다. 그리고 먼저 클램프에 약간의 납을 입혀둔다. 그리고 전선에도 끝 부분에 납으로 살짝 도금을 해 둔다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.
그렇게 미리 납을 입혀둔 클램프와 전선을 땜질한다. 이미 납을 입혀두었으므로 한손에는 인두를 다른 한 손에는 전선을 들고 작업하면 된다. 클램프는? 이쑤시개에 끼워져 펜치밑에 가만히 누워있다. ^^


이미지를 클릭하시면 원본크기로 보실수 있습니다.
이렇게 완성된 전선의 모습이다. ^^


이미지를 클릭하시면 원본크기로 보실수 있습니다.
전선끝에 붙은 클램프를 하우징에 끼워넣는다. 양쪽을 동일하게 만들면 됩니다.






[여기서부터는 이전에 만들어두었던 자료입니다. 위에서 본 것만으로 충분하면 굳이 더 볼 필요는 없습니다.]

워낙 간단하기 때문에 굳이 설명을 하지 않아도 다들 잘 할수 있을 거라 생각됩니다. 하지만 처음 접하는 초보자들을 위해 사진과 함께 올려봅니다. ^^

이미지를 클릭하시면 원본크기로 보실수 있습니다.

TY_ISP 를 만들기 위해 필요한 부품들입니다. 자세한 이름은 별도로된 부품목록표를 참고하기 바랍니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

후드라고 하는 겁니다. TY_ISP 집 역할을 하게 됩니다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

후드의 뒷 부분을 칼로 깨끗이 잘라주세요. ^^ 조금 지저분합니다. 그냥 대충 니퍼로 잘랐더니... ^^;




이미지를 클릭하시면 원본크기로 보실수 있습니다.

PCB 위에 IC 74367과 0,1uF 콘덴서, 100k 저항을 올리고 납땜한 후 D-SUB 25 까지 잘 끼워서 납땜한다. 납땜시 콘덴서는 약간 앞쪽으로 (화면으로 보이는 앞쪽) 인사하는 정도(30도) 각도로 굽혀준다. 이유는 후드 뚜껑을 닫을때 콘덴서 키가 커서 천정에 닿게 된다. ^^ 천정에 닿지 않도록 앞으로 살짝 구부려 준다. ^^

이미지를 클릭하시면 원본크기로 보실수 있습니다.

컨넥터도 땜질한다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이건 해도 그만 안해도 그만이다. 양쪽에 나사를 붙여서 PC 에 조여줄 수 있게 해주는 기능 ...

이미지를 클릭하시면 원본크기로 보실수 있습니다.
다 완성된 모양이다. 뚜껑을 닫고 나사를 조이면 끝 ^^

여기서 부터 케이블의 제작이다.
이미지를 클릭하시면 원본크기로 보실수 있습니다.

준비할 것, 14핀 플랫케이블과 10핀 플랫케이블 컨넥터다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

14핀 짜리 플랫케이블을 10핀 + 4핀 짜리의 둘로 나눈다. 끝 부분을 칼로 조금만 잘라준 후 손으로 잘 찢으면 어렵지 않게 분리 된다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.
두개로 분리된 모습


이미지를 클릭하시면 원본크기로 보실수 있습니다.

10핀짜리 플랫케이블의 끝부분에 컨넥터를 끼워야한다. 끝 부분을 가위로 깨끗하게 잘라주자.

이미지를 클릭하시면 원본크기로 보실수 있습니다.
컨넥터를 플랫케이블에 살짝 끼운다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.
조심 조심 끝 부분에 잘 맞춘다. 여기서 주의할 것은 1번 줄은 빨간색으로 맞추고, 커넥터의 약간 돌출된 부분을 보면 1번 핀의 위치가 삼각형으로 표시되어 있다. 1번선이 빨간선이 되도록 해 준다. 앞뒤 모두 동일하게 해 주어야한다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

끝부분에서 꽉 눌러주면 된다. 그냥 손으로는 힘만들고 잘 끼워지지 않는다. 펜지같은 조금은 딱딱하면서 평평한 면으로 컨넥터를 힘있게 천천히 눌러주면 된다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

이렇게 해서 잘 끼워진 컨넥터..

이미지를 클릭하시면 원본크기로 보실수 있습니다.
이것만 해도 사용에 아무 지장이 없지만 혹시나 하는 안전을 위해 한번 더 꽉 잠금새를 채워준다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

잠금새까지 한번 더 물린 상태

이미지를 클릭하시면 원본크기로 보실수 있습니다.

양쪽을 동일하게 해주면 된다.

이제 RS232 보드를 만들어보자.
이미지를 클릭하시면 원본크기로 보실수 있습니다.
준비물은 위의 그림에 있는 것 이다. 한가지, ISP 를 만들고 남은 4핀짜리 줄을 여기서 사용한다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

보드 조립은 식은 죽 먹기다... 그냥 부품들을 순서대로 잘 넣어주고 땜질만 하면 된다. 단, IC 의 방향이 틀리지 않도록 주의할 것.

이미지를 클릭하시면 원본크기로 보실수 있습니다.
극성이 있는 부품은 전해콘덴서다. 다리에 잘 보면 - 표시가 있다. PCB를 잘 보면 + 표시가 있다. +에 - 가 연결되면 부품이 손상을 입는다. + - 극성이 바뀌지 않도록 하자. 외쪽 세개는 왼쪽으로 긴 다리가 가도록하고, 오른쪽 하나는 오른쪽으로 긴 다리가 가도록 하면 된다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

왼쪽 세개를 동일한 방향으로 땜질한 모습

이미지를 클릭하시면 원본크기로 보실수 있습니다.

전체 땜질 완료, 4핀 커넥터까지 땜질 하였다. 콘덴서의 직경이 5mm 이고, PCB에서의 간격도 5mm 이다. 여유가 없다보니 너무 꽉 죄는듯한 인상이다. 땜질을 할때 조금만 주의해서 잘 붙어서 신경 거슬리지 않도록 납땜을 잘 해주자. ^^

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이제 4핀 케이블의 조립이다. 이게 제일 어려운것 같다...

이미지를 클릭하시면 원본크기로 보실수 있습니다.

앞에서 준비한 4핀 케이블을 손질한다. 끝 부분을 조금 벗겨낸다. 와이어스트리퍼라는 것을 사용한다. 없다면 이번 기회에 하나 장만하자. 가늘고 중요한 신호를 보내는 선들을 니퍼로 벗기는 것은 상당한 무리다. 와이어스트리퍼는 전자공작을 하는 사람에게 있어서 없어서는 안될 중요한 도구다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

이 선을 클램프에 땜질해야 하는데, 이건 해본 사람이 안다. 정말 힘들고 성가신 일이다. 조금 더 쉬운 방법이 없을까 찾아보게 되는 일이다. 그래서 이번에 아야 끝 부분에 클램프가 붙어있는 전선을 구입하기도 했다. ^^
여기서는 연구실에 돌아다니는 이쑤시개를 사용한다. 이쑤시개의 끝 부분에 클램프의 한쪽 끝 - 땜질 하는 반때쪽 - 을 살짝 끼워 넣는다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.
이쑤시개를 펜치등의 조금 무거운 것으로 잘 눌러놓는다. 이쑤시개는 돌아가거나 움직이지 않게 한다. 그리고 먼저 클램프에 약간의 납을 입혀둔다. 그리고 전선에도 끝 부분에 납으로 살짝 도금을 해 둔다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.
그렇게 미리 납을 입혀둔 클램프와 전선을 땜질한다. 이미 납을 입혀두었으므로 한손에는 인두를 다른 한 손에는 전선을 들고 작업하면 된다. 클램프는? 이쑤시개에 끼워져 펜치밑에 가만히 누워있다. ^^


이미지를 클릭하시면 원본크기로 보실수 있습니다.
이렇게 완성된 전선의 모습이다. ^^


이미지를 클릭하시면 원본크기로 보실수 있습니다.
전선끝에 붙은 클램프를 하우징에 끼워넣는다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.
만들어진 RS232 보드와 연결해 본다. 우선 여기서 왼쪽 선에 빨간색이 보일 것이다. 원래 14핀 짜리 플랫케이블을 잘라서 만든 4선짜리이므로 빨간색은 없다. 그걸 책상위에 있는 빨간 네임펜을 이용해 줄을 그어준다. 필자는 1번줄과 2번줄 사이에 죽 글을 그어주었다. 어차피 빨간색은 오른쪽 왼쪽만 구별이 되는 정도면 별 어려움은 없으니까말이다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.

그리고 하우징은 GND 부분에 검정색으로 GND 표시를 해주었다. 필자는 작은 검정색 동그라미나 사각형을 그려넣는다. 하우징뿐만 아니라 밑에 연결되는 컨넥터에도 GND 표시로 검정색으로 원을 그려놓는다. 앞으로 선을 연결했때는 검정색이 맞았는지만 확인하면 된다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

하우징과 커넥터 양쪽에 모두 검정색 표시가 들어있다.


이미지를 클릭하시면 원본크기로 보실수 있습니다.
선의 다른쪽 끝에도 역시 동일하게 표시해 준다. 나중에 TY52 보드에 연결할때도 이 GND 표시로 구분하면 된다.

P.S. 참고로 RS232보드의 GND 옆에 있는 선들의 이름은 무엇일까? 하나는 RXD, 또 다른 하나는 TXD, 오른쪽 끝은 Vcc(+5V)가 된다. 이 이름을 간단히 외우는 방법... GRTV 하나씩 읽어보라... 지랄...어디서 많이 듣던 소리다.. ^^ TV ... 역시 잘 아는 단어..

TV를 너무 좋아하면 안된다. 다같이 외쳐보세 ^^ GRTV ...

TY_ISP 와 RS232 보드 조립방법
http://electoy.tistory.com/42
JelicleLim(2007.12.05.)



 

Comment +0

TY52 보드 조립설명서

이 설명서는 8051 보드를 처음 접해보는 사람들을 위해서 만들었습니다.
가능하면 자세히 설명하려고 노력하였지만 혹시 이걸 보고도 잘 이해가 안되는 부분이 있다면 게시판을 통해 알려주시기 바랍니다.

맨 먼저 준비된 부품들을 점검해 보시기 바랍니다.



위 그림과 같이 부품들이 준비되어 있으면 됩니다. 혹 제가 발송한 것 말고 혼자서 준비하시더라도 위의 그림과 비슷하게 되어 있으면 됩니다.
참고로 저항은 세 종류가 들어갔는데 아래쪽 맨 오른편은 10K 짜리 두개, 그 바로 옆은 470 짜리 5개, 그 옆은 다리가 9개 달린 네트웍저항입니다. 1번핀이 공통으로 묶이는 저항입니다. 이 네트웍저항은 납땜하실때 조금 주의해서 하셔야 합니다(뒤집히지 않게 하시면 됩니다^^)

이 외에 IC 소켓으로 위 그림과 같은 것이 들어있습니다. 총 다리수는 40개 입니다. 이걸 정확히 20개씩 잘라서 준비합니다.



위 그림처럼 20개짜리 두개가 준비되었습니다.



PCB에 IC소켓과 크리스탈, 그리고 104와 30pF 짜리 콘덴서를 넣고 땜질합니다. 언뜻 보면 모르겠지만 지금 IC소켓도 올려져 있는 상태입니다. ^^


이걸 옆에서 보면 위 그림처럼 104만 혼자 덜렁 튀어나와 있습니다. 보기 안좋죠? ^^ AT89S52가 들어가야 할 자리니까 104를 과감하게 눌러서 앞으로 살짝 눕혀줍니다.



이랬던 것이



이렇게 됩니다.


위에서 보면 이렇게 되구요.



이제 LED 를 살펴봅시다. 기본적으로 애노우도 캐소우드라는 다리 명칭이 있는데, 그건 나중에 다른 책 보시면서 살피시구요.
보통 LED 를 다음과 같이 그립니다.

(a) ------|<|----- (b)

대충 짐작 가듯이 화살표방향으로 전류가 흐르게 됩니다. 그러니까 위 그림에서는 (b) 에서 (a) 로 흘러가겠죠? ..

위에 있는 진짜 그림 옆을 보면 LED 의 다리길이가 차이가 납니다. 긴 부분과 ㅉㅏㄺ은 부분이 있는데, 또 조금 더 자세히 살펴보면 짧은 다리 위쪽은 원형이 아니라 약간 잘려있는걸 보게 될 겁니다. 그 그림대로 LED를 넣으시면 됩니다.

D1, D5, D6, D10 모두 바깥쪽으로 긴 다리가 나가게 되어 있습니다. 긴다리쪽으로 전류가 흘러 들어와서 짧은 다리 쪽으로 나가게 됩니다. 일반적으로 LED 그림을 보면 앞으로 가는 화살표 같이 생긴 부분에 작대기가 그려져 있습니다. 저는 이걸보고 아, 원형에서 잘려진 부분을 이 작대기로 생각하고 플러스와 마이너스를 판단합니다. ^^
사람들마다 다른데 긴다리와 짧은 다리로 이해하시는 분도 많으십니다... 그런데 제가 쓰다가 다리를 잘라둔 LED 의 앞뒤를 구별하기는 다리길이로는 불가능해지다보니... 저는 그렇게 이해합니다. ^^
편하신대로 이해하세요. 어쨌던 TY52 보드에서는 긴다리가 모두 바깥쪽으로 향하면 됩니다.



LED를 넣었습니다.



이쯤에서 네트웍저항이라는 것도 넣어줍시다. 높이가 대충 지금까지 넣을 것들과 비슷합니다. 땜질할때 높이가 낮은것부터 순서대로 땜질해주는 것이 불필요한 손이 덜 가는 방법입니다.
네트웍저항의 1번핀이 위쪽으로 가도록 위 그림대로 해줍니다.
1번핀 위에 o 가 붙어있어서 쉽게 파악하실수 있을 겁니다.
참고로 처음 사진을 찍을때 네트웍저항이 없어서 R2 (네트웍저항)가 없는 상태로 사진을 찍고, 나중에 이 부분만 추가했습니다. 아래쪽에 갑자기 R2 가 안보이더라도 놀라지 마세요. ^^


이제 저항을 준비합니다.
우선 10K 짜리를 먼저 땜질합니다.
적당히 구부려서 준비해 주세요.
그리고 왼편위에 있는 슬라이드스위치는 이 즈음해서 땜질하시면 좋을 듯 합니다. ^^



끝이 뾰족한 라이오뺀지(맞춤법이 맞나요? ^^)와 손가락을 적절히 이용해서 위 그림처럼 모양을 만들어줍니다.

이미지를 클릭하시면 원본크기로 보실수 있습니다.

그리고 R1, R3 위치에 땜질합니다. 위치는 위 그림으로 파악하세요. 저항중 맨 위와 아래에서 두번째입니다. R2 와 R7 이 10K 짜리를 사용합니다.



같은 방법으로 470옴짜리도 준비합니다.



이렇게 준비하고,


나머지 5개자리에 땜질합니다.



이제 몇 군데 헤더 아니면 점퍼 아니면 컨넥터 같은 것을 땜질해야겠죠? ..



2개 2개 4개 짜리를 잘라서 만들어둡니다. 그리고 각각을



J2, J6, J9 자리에 끼우고 땜질합니다. J9는 전원이 들어오는 곳이고, J6은 LED 점멸을 위한 점퍼역할이고, J2는 RS232 연결을 위한 커넥터입니다.
그 다음 10uF 짜리 콘덴서를 극성에 맞춰서 잘 땜질하세요. 아래쪽에 +가 오도록 해야 합니다. 콘덴서의 옆을 보면 - 표시가 있습니다.


아래쪽에 리셋을 위한 택트스위치도 붙이세요. 조금 힘을 주어 꾹 누르면 달칵하고 잘 들어갑니다. ^^
그리고 위쪽에 10핀짜리 박스커넥터도 붙이세요. 이건 ISP 용으로 사용됩니다.

여기까지 하셨으면 다 하셨습니다. 이제 옆에 있는 19핀, 20핀짜리 커넥터는 사용하시려면 사용하시고 아니면 그냥 두셔도 됩니다.

사용하시려면 ...



40핀짜리 커넥터핀을 19 + 20 핀짜리로 둘로 나누세요. (1핀은 알아서 사용하세요 ^^보나스~입니다.)


전 이걸 아래쪽에 이렇게 붙여서 사용합니다. ^^
어떻게 사용할지는 사용자의 마음입니다. 이렇게 해두시면 빵판같은 곳에서 쓰기에도 편할것 같고, 다른 만능기판에 Female 타입 컨넥터를 붙여서 사용하기도 좋습니다.

굳이 컨넥터없이 그냥 다른 만능기판에 바로 붙이셔도 상관은 없습니다. 여기서부터는 각자의 마음에 달린 거니까요^^

위에 잘 보시면 전원 들어가는 커넥터와 RS232 커넥터의 맨윗쪽핀 옆에 검정색이 칠해져 있습니다. 혹시나 하는 마음에 - (GND) 옆에 검정색 네임펜으로 표시를 해 둔 겁니다. 실수로 전원을 거꾸로 넣지 않도록 말이죠. 여러분도 가능하면 - 옆에 검정색으로 표시를 해서 실수를 방지할수 있도록 하면 좋을것 같습니다. ^^

마지막으로 중요한 것 !!



위그림을 주목해서 봐주세요. ^^
전원의 +, - 틀리면 안됩니다. ^^ 8051이 타버릴겁니다.
역시 RS232 연결할때도 + - 틀리면 안됩니다. 그냥 RXD, TXD 가 틀리면 아무 작동도 안하고 멍청히 있지만 +, - 가 틀리면 보드가 나갈수 있습니다.
LED ON/OFF 는 들어있는 점퍼핀을 J6 에 연결시켜주세요. 나중에 LED 를 사용않을때에는 점퍼핀을 빼주시면 됩니다. 조금이라도 전류소모를 막고자 하시면 점퍼핀을 빼두시면 됩니다만, 보통때는 그냥 연결시켜 두고 사용하시기 바랍니다. ^^

조립하시다고 수고하셨습니다. 나머지는 ISP 케이블을 구해서 PC에서 프로그램을 써넣는 것이고, 전원공급장치를 구해서 전원을 넣는 것, RS232 케이블을 구해서 PC의 터미날프로그램에서 시리얼통신을 하는 것입니다.

여기에 필요한 회로도는 홈페이지에 찾아서 사용하세요. ^^ 아니면 직접 구입하셔도 좋구요. ^^


TY52 보드 조립설명서
http://electoy.tistory.com/40
JelicleLim(2007.12.5.)

Comment +0

간단한 보드였다. 간단히 LED 테스트 하기 위해 만들었던 보드다.
하다가 귀찮아서 그만 두긴 했는데...
다시 할까 하다가 그냥 다시 만들기로 했다.
그래도 만들었던 거니까 사진이라도 찍어서 올린다.

사용자 삽입 이미지

사용자 삽입 이미지


예전에 만들어봤던 8051 실험용 보드
http://electoy.tistory.com/30
JelicleLim (2006.10.06)

Comment +0

ISP 가 뭔지는 아는 사람도 있을테고 잘 모르는 사람도 있을게다.

나중에 설명하자 ^^
조금만 미리 맛을 본다면, 기본적으로 컴퓨터가 돌아가려면 프로그램이 있어야 한다는 사실은 모두 알 것이다.
hwp가 설치되지 않은 PC에서 한글문서를 열려고 아무리 노력해도 안되는 게다.
아무리 노력해도 안되는 일이 있는게다.. ^^

마찬가지로 마이크로프로세서도 내부에 일정한 작동을 하게 해주는 프로그램이 들어있어야 한다.
프로그램을 짜서 그걸 실행파일로 만들고 - 보통 여기서는 이진파일 혹은 바이너리 파일이라고 부른다 - 그걸 8051안에 넣어주어야 한다.

8051에 프로그램을 넣어주지 않으면 8051은 그냥 무식한 돌뗑이 그 이상도 그 이하도 아니다. 그냥 비싼 동뗑이일 뿐이다. ^^
그러면 어떻게 8051에 프로그램을 넣어주어야하는가?
예전에는 8051에 프로그램을 넣기가 쉽지 않았다. 그래서 외부에 롬을 달고 그 롬을 8051에 연결해서 롬안에 있는 것을 읽도록 하는 방식을 썼다. 대부분의 8051용 트레이닝보드라고 하는 것들은 이런 구조로 만들어져있다. 외부에 롬을 달고, 그 롬에 어떤 프로그램을 넣고 - 보통 그 프로그램을 모니터프로그램이라고 부른다 - 또 램도 달았다. 그래서 처음 부팅하면 8051이 롬을 읽고 모니터프로그램을 실행시키면 그 다음부터 사용자가 자기가 작성한 프로그램을 시리얼통신을 이용해 램에 올리고 그걸 작동하는 방식을 사용했다.

이 모든 것은 8051에 프로그램을 집어넣기가 힘들어서였다. 또 다른 목적도 있겠지만 - 모니터프로그램을 이용한 디버깅 - 아무래도 8051에 프로그램을 넣는게 쉽지 않다는게 제일 컸다.

롬에 프로그램을 넣으려해도 약간의 비용이 요구되는 롬라이터라는 장비가 있어야했다. 개인이 사기엔 약간 부담되는 가격, 공부할 목적으로 사기에는 왠지 조금 꺼리게 되는 것이 바로 롬라이터였다. 이게 없으면 롬을 쓸수가 없다.
어쨌거나 8051을 쓰려면 내부에 프로그램을 넣거나 아니면 외부에 롬을 달아서 거기에 프로그램을 넣어야 한다. 이게 쉬운 일이 아닌게다. - 돈이 드는 일인게다 - ^^

그래서 등장한 한가지 방식이 ISP라는 것이다.
쉽게 말하자면 8051내부에 플래시 메모리를 넣어두고 그걸 쉽게 프로그램할수 있게 구조를 만들어둔게다.
그래서 굳이 롬라이터가 아니더라도 - 롬라이터를 써도 프로그램할 수 있다. - 프로그램이 가능하게 해둔 것이다.
회로도를 보면 알겠지만 이 회로도는 매우 간단하다. 그리고 이 회로도가 바로 일종의 롬라이터라고 할수 있는 것이다. ^^ (WOW!!!)
최고의 저렴한 비용으로 만드는 롬라이터는 이런 구조로 되어 있다.

사용자 삽입 이미지
PC의 프린터포트에 연결해서 거기서 74244 를 거쳐 AT89S52 로 6개의 선이 나간다. 이게 끝이다. AT89S52가 들어있는 보드에서 6개의 선을 외부로 잘 꺼낼수 있게 단자만 만들어두면 이걸로 보드에 AT89S52 가 꼽혀있는 상태에서 바로 롬을 구울수 있다. 굳이 칩을 보드에서 꺼내서 롬라이터안에 넣지 않고, 바로 보드에 꼽혀있는 상태에서 롬을 구울수 있다는 것, 이게 바로 ISP의 커다란 장점이다.

프로그램을 수정할 때마다 칩을 꺼낼 필요가 없고, 프로그램이 업데이트될 때다마 칩을 꺼낼 필요가 없는 것이다. 그냥 보드는 두고, 거기서 6개의 선을 꺼내서 ISP로 연결해 두면 언제라도 프로그램을 수정할수 있는 것이다. 너무 쉽고 간단하고, 편한 방식이다.

자세한 내용은 역시 다음번에 다루도록 노력해 보겠다. ^^

이 회로도는 AT89S52을 구울수 있는 롬라이터라고 생각하면 되고, 프로그램은 다음의 cafe.daum.net/8051plus 에 가면 있다.

TY52 - ISP
http://electoy.tistory.com/29
JelicleLim (2006.10.06)

Comment +0

8051에는 시리얼통신을 위한 TXD 와 RXD 를 지원하고 있다.
시리얼통신에 대해서는 별도의 자료를 준비하도록 한다.
기본적으로 MAX232 는 마이크로프로세서의 시리얼통신신호를 PC 와 상호커뮤니케이션이 되도록 해주는 역할을 한다.

RS232 에 관한 자료는 인터넷등에서 찾아봐도 쉽게 구할수 있다.

사용자 삽입 이미지
TY52 - MAX232 시리얼통신
http://electoy.tistory.com/28
JelicleLim (2006.10.06)

Comment +0

이부분이 조금 이상하게 보일지 모르지만, 사실 별거 아니다.

그냥 40핀짜리 헤더를 달아놓은 것이다. 8051보드에서 할수 있는 것은 그냥 불켜고 끄는것 외에는 아무것도 없다.
이걸로 뭔가를 하려면 외부에 연결된 무언가에 접속해야만 한다.
그래서 40핀짜리 헤더를 달아놓고 거기에 모든 핀을 다 붙여 둔 것이다.

J4 는 그래서 4개의 포트 전부와 리셋핀, 그리고 전원을 연결해 두었다.
이걸로 LCD 나 기타 다른 외부접촉을 가능하게 할 것이다.

J3 는 ATAPI 방식의 CD-ROM 에 연결하게 된다.
컴퓨터 뜯어보면 알겠지만 시디롬과 메인보드에 연결되는 선이 40개짜리 플랫케이블이라는 녀석이다. 이걸 그대로 가져다가 8051보드에 꼽을수 있게 하였다. 굳이 J3 와 J4 의 핀수를 같게 한 이유는 남아도는 케이블이 있으면 사용하라는 이야기다. 굳이 작은 케이블을 살 필요없이 큰 케이블로 한꺼번에 연결해서 사용하면 자원재활용도 되고 일일이 땜질할 수고도 줄고 - 대중 보드에 40개짜리 헤더작업은 좀 귀찮겠지만 .. ^^; - 하니 주변에 잘 둘러보면서 어디 버려진 PC 가 있으면 안에 있는 케이블을 뜯어 와라. 멀쩡한 PC 안에 있는 케이블 가져가 작업하면 나중에 아빠한테 혼난다.. ^^;

사용자 삽입 이미지
TY51 보드 설명 5 - 외부 확장핀
http://electoy.tistory.com/27
JelicleLim (2006.10.06)

Comment +0


시리얼통신을 위해 선을 두개 사용하고, 아래쪽에 있는 것은 전원입력 단자이다.
굳이 설명이 필요 없을 듯...

사용자 삽입 이미지
TY52 보드 설명 4 - 시리얼통신, 전원입력
http://electoy.tistory.com/26
JelicleLim (2006.10.06)

Comment +0

크리스탈과 리셋회로다.

16MHz 의 크리스탈을 쓴다. 회로도를 급하게 그리다보니 XTAL 수치가 빠졌다. 나중에 수정해두자. 16MHz 보다 높은 것을 달수도 있다. 33MHz 까지 지원하니 필요하면 33MHz 를 쓸수도 있다. 이건 사용자 마음이다.
우선 여기서는 보편적으로 많이 쓰이는 것을 쓰자. 시리얼통신을 위해 주로 사용되는 것도 있는데 여기서는 시리얼통신보다는 ISP 와 타이머측정을 우선해서 그냥 16MHz 라는 녀석을 쓰기로 하겠다.

리셋회로는 아트멜에서 제공하는 AT89S52 스팩을 보면 두번의 머신사이클 동안 1을 주라고 되어 있다. 이걸 제대로 설계하려면 중간에 약간의 회로설계가 더 들어가야하는데 일반적으로 이렇게 간단하게 해서 사용한다. 손으로 리셋스위치를 누르면 RST 핀으로 1이 흘러들어가고 손을 놓아도 잠시동안 10uF 에 충전되는 동안 1이 RST 로 흐른다. 일정시간 - 그래도 매우 짧은 시간이지만 - 흐른뒤 10uF에 충전이 완료되면 RST 는 0가 된다.

쉽게 말을 했지만 그래도 이건 파형이 조금 불안하다. 그래서 조금 고급스런 8051을 사용하게 될때는 리셋회로를 이걸 쓰면 안된다. 나중에 이상해서 점검하는 경우가 발생하기도 한다. 실제로 TI 에서 나온 MSC1211 이라는 녀석을 써본 결과 리셋회로를 여기껄 그대로 사용하면 동작을 불안하게 하는 결과가 있었다.

사용자 삽입 이미지

TY52 보드 설명 3 - 크리스탈과 리셋회로
http://electoy.tistory.com/25
JelicleLim (2006.10.06)

Comment +0

P2.0 부터 P2.7 까지 8개의 포트는 기본적으로 LED 를 통해 보드의 동작이 원활한지 점검하기 위해 사용되었다. 점퍼를 이용해서 LED 동작이 필요없을때는 LED 를 회로에서 분리시킬수 있다. 처음 보드를 만들고 제대로 작동하는지 살피는데 LED 체크는 반드시 필요한 것은 아니지만 그래도 점멸하는 불빛을 보고 있지만 왠지 기분이 좋아져서 끼워넣었다. 보드를 굳이 다른 용도로 사용하지 않을때는 나름대로 재미있게 프로그램을 짜서 LED 를 순차적으로 - 앞으로, 뒤로, 때로는 불규칙하게, 아니면 어떤 신호같은 것을 보내든지 ... - 점멸시켜보는 것도 재미있을 것이다.

사용자 삽입 이미지



TY52 보드 설명 2 - Port2 에 붙은 LED
http://electoy.tistory.com/24
JelicleLim (2006.10.06)

Comment +0

사용자 삽입 이미지

이 그림은 TY51 보드의 왼쪽 상단부분으로 기본적으로 TY51 보드는 AT89S52 를 사용하기 때문에 외부에 롬을 달 필요가 없어 포트0 를 사용하고 있다.
포트0 는 다른 포트에 비해 약간의 특이사항을 가지고 있는데 그것은 포트0를 사용하기 위해서는 풀업을 해 주어야 한다는 점이다. 그래서 다른 포트들은 그냥 직접 LED 등에 연결할 수 있었지만 포트0는 풀업을 달아서 연결시켰다.

풀업에 대한 내용은 차후에 차근차근 설명해 보기로 한다.

또한가지 TY51 보드는 ISP 를 지원한다. 그래서 6PIN 짜리 ISP CONNECTOR 를 만들어 두었다. 칩을 꺼내서 롬라이터에 구울 필요없이 바로 보드에 꼽혀 있는 상태에서 프로그램을 내부 플래시 메모리에 쓸수 있다. 이 기능은 이전에 8051로 프로그램을 해보았던 사람들은 매우 반가워할만한 기능이다. 최근들은 ISP 프로그램과 회로도가 많이 공개되어지고 있어서 프로그램에 문제는 없을 것이다.

ISP 프로그램은 다음에 있는 8051플러스 카페의 자료를 이용하기로 한다. 혹 8051에 관한 강의자료들이 필요한 사람은 그 카페에 가서 찬찬히 읽어보는 것도 좋은 방법이다.
카페주소는 WWW.DAUM.NET/8051PLUS 이다.

여기서는 J2 CON6AP 라는 것을 통해서 AT89S52 와 PC 간에 ISP 를 연결하고 프로그램을 다운받을수 있게 되어있다. ISP 에 관해서도 차후에 차근차근 살펴볼 예정이다.

TY52 보드 설명 1 - Port 0 의 풀업저항
http://electoy.tistory.com/23
JelicleLim (2006.10.06)

Comment +1