뉴티씨



  • HOME
  • 고객지원
  • 자주하는 질문

 
손쉽고 빠른 포트 제어(출력 및 입력 쉽게)
 글쓴이 : 관리자
작성일 : 12-02-14 12:34
조회 : 1,468  

1.  define문을 사용하는 방법 (매우 빠름)

#define ON    1
#define OFF    0
#define LED0(m) m? (PORTC|=0x01):(PORTC&=~0x01)

사용시 :
   끄기    LED0( OFF);
   켜기    LED0( ON);

2. 해당 포트의 특정 비트를 ON OFF 하는 방법

// ***** Define I/O pins *****
#define BIT7 0x80
#define BIT6 0x40
#define BIT5 0x20
#define BIT4 0x10
#define BIT3 0x08
#define BIT2 0x04
#define BIT1 0x02
#define BIT0 0x01


#define BIT(x)             (1 << (x))
#define SETBIT(x, y)        (x |= y)
#define CLEARBIT(x, y)      (x &= ~y)
#define CHECKBIT(x, y)      (x & y)

사용시 :
  PORTC의 비트 1을 1로 셋트하고 싶을때 :
      SETBIT(PORTC, BIT1);
  PORTB의 비트 0을 0로 클리어하고 싶을때 :
      CLEARBIT(PORTC, BIT1);
  PINF의 비트 0값을 체크하고 싶을때 :
      if( CHECKBIT(PINF, BIT0) )

3. 함수를 사용하여 비트를 제어(가장 느림)

#define ON    1
#define OFF    0

  void LED0(int m){
      if(m==1){
          PORTC |= 0x01;   // PORTC = PORTC | 0x01;
      }else{
          PORTC &= ~0x01;  // PORTC = PORTC & ~0x01;
      }
  }

 사용시 :
   끄기    LED0( OFF);
   켜기    LED0( ON);

수고하세요.