반응형
[다시 쓰는 8051 따라하기] 8051 핀 설명
+------------------------------------------------------+
게시장소 : 다음 tinyrobo
작성자 : Timy(me^^;)
작성일 : 2004.10.28
문의 : 다음카페 tinyrobo 혹은 블로그 http://electoy.cafe24.com/blog
+------------------------------------------------------+
[시작]

## 8051 핀 설명

대충 약 40개 정도의 핀들이 있는걸 봤다.
그럼 그 핀들이 하는 일들이 뭘까?
모든것을 한번에 알수는 없겠지만, 조금씩 맛을 한번 보기로 하자.

1. Vcc/GND

20번 핀과 40번핀은 각각 GND/Vcc 로 전원이 들어오는 곳이다.
보통 많은 사람들이 이 부분에서 실수를 한다고 한다. 특히 학생들이...

칩은 밥통이다. 밥통에 밥을 하려면 쌀이 있어야 하고, 물이 있어야 한다. 얼마나 물을 잘 맞추는가가 중요하다. 그런데, 그것들보다 더 중요한 것이 있으니, 바로 그것은 밥통에 전기가 들어와야 한다는 것이다. !!!

당연한 거라고? 당연하다. 그렇게 밥통을 전기플러그에 꼽지 않고 밥을 하는 사람을 밥통이라고 할수 있다. 마찬가지로 IC 에 전기를 흘려주지도 않으면서 IC 가 작동하기를 바라는 사람이 있다면 그 사람도 밥통이다. ^^

8051이 잘 작동을 안하면, 혹 만능기판에서 작업을 한 경우 GND 와 Vcc 가 잘 연결되어 있는지 봐라. 혹시 거꾸로 연결되어 있는지도 확인해라. 물론 거꾸로 되어 있다면 아마도 그 칩은 영원히 하직했을수도 있다. ^^

핀들을 볼때는 앞에서 설명했던 AT89S52 앞부분에 있는 핀들의 번호와 이름이 새겨져 있는 부분을 좀 살펴보면서 읽기 바란다.


2. PORT0, PORT1, PORT2, PORT3

8051은 4개의 포트를 지원한다. 나름대로 각 포트마다 특징들이 있다. 우선 Port0 는 외부메모리 사용하지 않을때 일반포트로 사용할 수 있다. 외부메모리 사용시 Port0 는 하위 어드레스에 대한 정보를 담당한다(A0-A7까지). TY51 에서는 일반포트로 사용했다. 이 경우 외부 풀업저항을 달게 된다. 풀업저항이라는 것은 다음에 설명하자. 쉽게 말해서 아주 약간의 전류를 Port0 에 흘려보내고 Port0 가 1을 보내거나 혹은 0을 보내서 그 약간의 전류를 흡수할수 있도록 하겠다는 것이다.

Port1 은 가장 일반적으로 많이 쓰는 포트다. 여기에 AT89S52 는 ISP 를 붙여 두었다. P1.5 1.6 1.7 세 핀이 ISP 용으로 사용된다. P1.0과 1.1 이 TIMER/COUNTER2 로 사용된다. 일반 8051에서는 아니다. 8052 계열에서 사용된는 핀이다.

Port2 는 역시 일반포트로 사용될 수 있고, 외부 메모리 제어시 상위 어드레스(A8-A15) 출력용으로 사용될 수 있다.

Port3 는 특별한 핀들이 모여있다. I/O 쪽으로도 사용되지만, 인터럽트, 타이며, 외부 데이타 메모리 관리, 시리얼통신용으로 사용될 수 있도록 되어 있다.


3. PORT3 의 핀들 - 세부자료

    P3.0 RXD
    P3.1 TXD
    P3.2 /INT0
    P3.3 /INT1
    P3.4 T0
    P3.5 T1
    P3.6 /WR
    P3.7 /RD

위와 같다. 위 두개는 시리얼통신을 위해서 사용될수 있고, 그 다음 두개는 인터럽트용으로, 그 다음 두개는 TIMER/COUNTER 용이고, 마지막 두개는 외부 메모리 사용시 쓰고 읽을수 있게 해주는 용도이다.


4.
(29) : /PSEN => 롬을 읽을때 사용한다.
(31) : /EA_VPP => 1이 입력되면 내부롬을 사용하고, 0이 입력되면 외부롬을 사용한다. TY51 에서는 내부롬을 사용하므로 이 핀은 1로 고정되어 있다.
(30) : ALE_/PROG => ADDRESS LATCH ENABLE 약자로, 외부 메모리를 사용할 때 - 혹의 외부의 장치에 어드레스를 이용해 무언가를 할때 - 사용한다. 래치라는 걸 알고 있으면 설명이 쉽지만 잘 모르면 우선은 그냥 넘어가자.
(18)(19) : XTAL1,2 => 크리스탈을 다는 장소이다. 콘덴서와 함께 연결해서 사용한다. 주파수에 따라 8051에서 처리하는 속도가 달라진다. 기본적으로 AT89S52 는 3 부터 33 MHz 까지 사용이 가능하다.
33 MHz 란 1초에 33,000,000 번 신호가 주어진다는 의미이다. 이정도 속도로 진동을 하는 크리스탈을 두 단자에 연결하면 한번 진동할 때마다 일정한 신호가 8051 내부로 주어지고, 그 때마다 일정한 동작을 하게 된다는 뜻이다. 8051은 이 크리스탈이 12번 진동하면 아주 기초적인 하나의 명령을 수행할 수 있다. 조금 복잡한 명령은 24번 진동해야 하고, 그보다 조금 더 큰 명령은 48번 진동해야 명령 하나를 수행할 수 있다.

그러면 XTAL 에 큰 값을 넣으면 장땡이겠다고 생각하는 사람들에게 단점까지 하나 말해야겠다. 단점은 간단하다.  XTAL 값이 커지면 그만큼 CPU 가 많은 활동을 하게 되므로 적은 값일 때보다 전력소모가 커진다는 점이다. 이것은 AC 전원에 어댑터로 연결되어 있다면 상관이 별로 없겠지만, 이동을 위해서 배터리로 전원이 공급되어진다면 적지 않은 문제다. 그래서 가능한 활동에 지장이 없는 범위에서 작은 크리스탈을 다는 것이 좋다.


오늘은 ... 여기까지 ...


+------------------------------------------------------+
[끝]
Kay
안녕하세요 Timy님^_^ 8051 강좌 참 재밌게 잘 보구 있습니다.

AT89S52 매뉴얼을 보다가 뭔가 좀 다른 내용이 있어서 그러는데요..

31번 pin /EA&VPP의 역할중 하나가 0이면 외부롬을 사용하고 1이면 내부롬을 사

용하는 거 아닌가요? 반대로 설명해 놓으신 거 같아서요.
반응형

+ Recent posts