본문 바로가기

[INTERFACE]/ZIGBEE

[CC2500] ez430-RF2500 가지고 놀기 2 - UART 통신

[CC2500] ez430-RF2500 가지고 놀기 2 - UART 통신
임베디드 환경에서 가장 간단히 하고 강력한 디버거는 printf가 아닐까... 아무튼 TI에서 제공 되는 예제는 UART사용이 좀 지저분하다. 물론 코드 사이즈 줄이기엔 좋지만 디버깅할때는 너무 불편하다. printf 사용할 수 있도록 환경을 구성해서 테스트 해보려고 한다.

ez430 키트에서 제공되는 USB동글은 JTAG기능 및 UART통신이 가능하지만 보레이트를 9600이상 올리면 깨지는 현상이 많다(아주 많이 심각함)
그래서 USB2UART에 연결해서 테스트 하려고 하는데... RF2500의 확장 포트에는 UART를 뽑아 놓지 않았다.
윽... 아래와 같이 점퍼 날려서 확장핀을 뽑았다.



CC2500 UART통신 테스트 예제 코드
간단히 시리얼 포트로 데이터 받아서 LED On/Off하고 카운트 값을 printf를 이용하여 표시하는 예제 코드를 작성하였다.

#include "system.h"
#include "serial.h"
 
//-----------------------------------------------------------------------------
int main(void)
{
   int cnt = 0;

    //System Init
 SystemInit();
 
    //LED Init
 Led1Init();
 Led1On();
 
 //Serial Init
 DebugInit(BAUD_115200);
 DebugPrint("Serial Test Program.\r\n");

 while (1)
 {
  switch(U0_GetByte())
  {
  case '0':
     Led1Off();
   DebugPrint("LED OFF %d\r\n", cnt);  
   cnt ++; 
     break;

  case '1':
   Led1On();
   DebugPrint("LED ON %d\r\n", cnt);  
   cnt ++; 
     break;
  }  
 }
}
//-----------------------------------------------------------------------------

반응형