회원가입 ID/PW 찾기

1) 지식 창고는 본인이 작성한 콘텐츠(팁/노하우/리소스/강좌 등)을 무료 혹은 가상화폐인 납포인트를 통해 공유하는 공간입니다.
2) 본인이 작성한 콘텐츠에 대해서만 지식 창고에 등록할 수 있으며, 저작권에 위배되는 콘텐츠는 사전경고 없이 삭제될 수 있습니다.
3) 콘텐츠 구매 및 첨부파일 다운로드는 회원그룹 '연구원' 이상 가능하오니, 경험치를 쌓아 진급한 후에 이용 부탁드립니다.
4) 무료 콘텐츠의 본문은 구매절차 없이 즉시 이용할 수 있으며, 판매 납포인트가 있는 콘텐츠는 구매 후 이용할 수 있습니다.
5) 콘텐츠 판매에 따른 납포인트 수익은 지정한 비율(50%)에 따라 판매자에게 지급하며, 납포인트 수익을 통해 진급을 빨리할 수 있습니다.
6) 구매 후 평가를 하면 구매 납포인트의 20%를 돌려 드립니다.

콘텐츠 수 69

8051입출력포트

마이크로프로세서 구매수 0 2010.06.25 10:27:51
판매자 양치기광녀 판매 납포인트 무료 평점 0점 / 총 0명 참여

8051의 포트

맨처음에 설명했지만 다시 보면,

 

 1) 포트 0 (P0.0 ~ P0.7)

 8 비트 양방향 입출력 단자, 내부 풀업 저항이 없기 때문에 풀업 저항이 필요하다. 포트 0은 외부 메모리를 연결할 때는 하위 AD0 ~ AD7 로 어드레스 신호와 데이터 신호가 함께 나오는 라인이다.

 출력으로 사용할 경우 8개의 LS TTL에 사용이 가능하다.

 

 2) 포트 1 (P1.0 ~ 1.7)

 8 비트 양방향 입출력 단자, 내부적으로 풀업이 되어 있어서 따로 외부에풀업 저항 없이 출력 값을 유지할 수 있다.

 출력으로 사용할 경우 4개의 LS TTL에 사용이 가능.

 

 3) 포트 2 (P2.0 ~ 2.7)

 8 비트 양방향 입출력 단자, 내부적으로 풀업이 되어 있어서 따로 외부에풀업 저항 없이 출력 값을 유지할 수 있다.

 포트 2는 외부 메모리나 다른 입출력 장치들을 확장할 때 상위 AD8 ~ AD 15로 어드레스 버스로 이용한다.

 출력으로 사용할 경우 4개의 LS TTL에 사용이 가능

 

 4) 포트 3 (P3.0 ~ 3.7)

 8 비트 양방향 입출력 단자, 내부에 풀업 저항이 있다.

 출력으로 사용할 경우 4개의 LS TTL에 사용이 가능.

 포트 3는 입출력 기능외에 다른 기능을 가짐.

      

 Pin

 Name

Alternate Function 

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7

RXD

TXD

INT0

INT1

T0

T1

WR

RD

Serial Input LIne

Serial output Line

External Interrupt 0

External Interrupt 1

Timer 0 external input

Timer 1 external input

External Data Memory Write Strobe

External Data Memory Read Strobe

                       포트3의 구성

 

예제 소스를 보며 어떻게 포트로 출력하는지 보자.

 

#include <reg51.h>

void delay(unsigned int i);

void main(void) {
    unsigned int i;

    for(i=0; i<5; i++) {
        P1 = 0xAA;
        delay(20000);
        P1 = 0x55;
        delay(20000);
    }

    while(1) {
        P1 = 0x01;
            for(i=0; i<7; i++) {
                P1 <<= 1;
                delay(5000);
            }
            for(i=0; i<7; i++) {
                P1 >>=1;
                delay(5000);
            }
    }
    }


void delay(unsigned int i) {
    while(i--);
}

 

 내용은 간단하다. main()의 for() 문을 보면 P1에 각각 0xAA와 0x55 값을 넣어 주는데, AA(16) = 170(10) = 10101010(2) 이며, 55(16) = 85(10) = 01010101(2) 이 된다. 8051보드에 있는 LED를 보면 변환된 이진수 값과 같이 LED가 깜박거리는 것을 5번 반복하게 된다.

 다음에 while()문에서 반복을 하는데, LED에 차례로 1값을 쉬프트하게 된다. 프로그램이 동작하는 동안 LED가 왔다 갔다 하게 된다.

 

※ 참고

Pull Up 저항 (풀업저항)

간단하게 요약하면,

디지털 회로에서 pull up저항이 필요한 이유에 대해 알아봅시다.
우선 두개의 IC사이에 Interface 전압이 다른 경우입니다. 한쪽은 3.3V를 사용하는데
다른쪽은 5V를 사용하는 경우또는 그 반대의 경우 가장 많이 사용하는 방법이
출력을 Open Collector 또는 Open Drain 에 필요한 전압을 걸어 전압을 맞출때 사용합니다.

 

 

 

출처 - http://blog.paran.com/mcu/5310538


profile
younglhh 2010.12.03 08:44

입문할때는 led 켜는 겨도 신기했는데 ^^ 잘 읽고 갑니다.

profile
컴쟁이 2012.11.24 00:02
자료감사요
profile
시나브로69 2016.07.16 16:31

좋은 자료 감사합니다.

search
List of Articles
번호 분류 제목 평점 포인트 판매자 등록일 구매수 조회 수
공지 공공의 목적으로 공유하고자 하는 소프트웨어는 '소프트웨어 자료실'에 업로드를 요청드립니다.
공지 구매후 평점 댓글을 남겨주시면 구매포인트의 20%를 돌려드립니다.
69 머신러닝, AI & 알고리즘 matlab 쉽게 배우는 방법없나요? [7] 무료 kayle 2013-09-26 0 441
68 머신러닝, AI & 알고리즘 Kalman 필터로 쉽게 센서통합하기 [8] 무료 아크마 2011-08-01 0 2993
67 머신러닝, AI & 알고리즘 매크로 이름에 괄호를 사용하기 [5] 무료 밝은전기구슬 2011-03-28 0 4923
66 머신러닝, AI & 알고리즘 Solving ODEs with MATLAB [3] 무료 HALU13 2010-11-29 0 2153
65 머신러닝, AI & 알고리즘 A Guide to MATLAB Object-Oriented Programming - Andy H. Register [5] 무료 HALU13 2010-11-29 0 2299
64 머신러닝, AI & 알고리즘 매트랩 한글 메뉴얼 입니다. [33] 무료 우당탕카 2010-06-01 0 5727
63 머신러닝, AI & 알고리즘 보간법 매틀랩 코드입니다. 무료 나얼제자 2010-05-25 0 4140
62 머신러닝, AI & 알고리즘 매틀랩 명령어 정리 입니다 [14] 무료 지노쟁이 2010-04-29 0 4648
61 머신러닝, AI & 알고리즘 matlab이 저에게 필요한가요 [5] 무료 딘재 2010-04-16 0 2250
60 머신러닝, AI & 알고리즘 공업수학요약정리4 [10] 무료 알라뷰 2010-03-07 0 2525
59 머신러닝, AI & 알고리즘 공업수학요약정리3 [8] 무료 알라뷰 2010-03-07 0 2483
58 머신러닝, AI & 알고리즘 공업수학요약정리2 [8] 무료 알라뷰 2010-03-07 0 2061
57 머신러닝, AI & 알고리즘 공업수학요약정리1 [12] 무료 알라뷰 2010-03-07 0 3187
56 머신러닝, AI & 알고리즘 proxmity sensing 알고리즘입니다. [2] 무료 퀴아쿠 2010-02-19 0 2047
55 머신러닝, AI & 알고리즘 알고리즘 설계 및 실습 - Huffman & Dijkstra [5] 무료 블루미르7 2010-01-05 0 3471
54 머신러닝, AI & 알고리즘 간단한 비례 공식입니다 ㅎㅎ [2] 무료 karismapong 2009-10-20 0 2648
53 머신러닝, AI & 알고리즘 Euler 미분법[MATLAB] [4] 무료 아크마 2009-10-01 0 4642
52 머신러닝, AI & 알고리즘 Matlab코드를 C코드로 변환할 수 있다는데.. 무료 kezman 2009-09-25 0 4195
51 머신러닝, AI & 알고리즘 MPLAB 컴파일을 했더니 에러가 떠요..ㅠㅠ [2] 무료 로이lee 2009-04-16 0 3968
50 머신러닝, AI & 알고리즘 (MATLAB) S-ALOHA의 Throughput 시뮬레이션 소스 [2] 무료 태상노군 2008-09-23 0 5172
  • 현명해 지기는 아주 쉽다. 그저 머릿속에 떠오르는 말 중에 바보같다 생각되는 말을 하지 않으면 된다.
    - 샙 레븐슨
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.