[Microchip]/PIC16F2012. 6. 11. 01:44

[PIC16F723] RF 전송 테스트 - 무선으로 ACD값 그래프 표시 하기

 [PIC16F723] RF 전송 테스트 - 무선으로 ACD값 그래프 표시 하기

 

 

PIC16F723은 마아크로칩사의 저렴한 저전력  MCU(실제 쇼핑몰에서 600원대에 구매 했다)이다. 저전력으로 구동할 수 있는 어플리케이션으로 RF가 좋은데 915(433)Mhz RF 모듈로 ADC값을 전송하는 테스트를 해 보았다.

 

 

 테스트 보드는 기존에 다른 용도로 제작되었던 보드인데 핀맵이 호환되므로 PIC16F723 보드를 연결하여 사용이 가능하다.

 

 

 

RF모듈 드라이버 코드

 

//-----------------------------------------------------------------------------
#define NRF_PWR_UP                   BIT6
#define NRF_PWR_HIGH()     Sbi(PORTB, NRF_PWR_UP)
#define NRF_PWR_LOW()     Cbi(PORTB, NRF_PWR_UP)

 

#define NRF_TXEN                     BIT3
#define NRF_TXEN_HIGH()     Sbi(PORTA, NRF_TXEN)
#define NRF_TXEN_LOW()     Cbi(PORTA, NRF_TXEN)


#define NRF_TRX_CE                   BIT7
#define NRF_TXCE_HIGH()     Sbi(PORTB, NRF_TRX_CE)
#define NRF_TXCE_LOW()     Cbi(PORTB, NRF_TRX_CE)

 

#define NRF_CS_PORT      PORTC
#define NRF_CS_BIT      BIT2

#define NRF_CS_HIGH()     Sbi(NRF_CS_PORT, NRF_CS_BIT)
#define NRF_CS_LOW()     Cbi(NRF_CS_PORT, NRF_CS_BIT)

 

#define NRF_DR_BIT      BIT2
#define NRF_GET_DR()     (PORTB&NRF_DR_BIT)

#define NRF_AM_BIT      BIT3
#define NRF_GET_AM()     (PORTB&NRF_AM_BIT)

 

 

#define NRF_SendByte     SPI0_WriteReadByte
#define NRF_InitSpi()     SPI0_Init()
#define NRF_SpiSpeed_Low()    SPI0_SetSpeed(SPI_SPEED_1MHZ)
#define NRF_SpiSpeed_High()    SPI0 _SetSpeed(SPI_SPEED_4MHZ)

 

 

#define NRF_PORT_INIT()     Cbi(TRISB, (BIT6|BIT7));Sbi(TRISB, (BIT2|BIT3));Cbi(ANSELB, (BIT2|BIT3|BIT6|BIT7));\
          Cbi(TRISA, BIT3);Cbi(ANSELA, BIT3);\
          Cbi(TRISC, BIT2);
//-----------------------------------------------------------------------------

 

 

 

PIC16F723 RF테스트 동영상

저렴하게 구성한 RF모듈임에도 실제 전송되는 속도는 2ms로 아주 고속으로 전송이 가능하다.

아래는 PIC16F723 보드에서 가변저항의 ADC값을 RF로 전송하는 테스트 데모이다.

 

 

Posted by nexp

댓글을 달아 주세요

[INTERFACE]/ZIGBEE2012. 6. 3. 18:18

SUB 1Ghz RF 모듈 제작

 SUB 1Ghz RF 모듈 제작

 

 

 

 

SUB 1Ghz (915/433 Mhz) 저렴한 소형의 RF모듈 보드를 제작했다. 

 

 

 

 

여러 MCU에 적용할 수 있도록 모듈형태로 제작했는데, 전적력 MCU모듈인 MSP430 보드에 바로 연결 가능하므로 제어를 위한 MCU가 필요하다면 연결 가능하다.

 

 

 

RF모듈 핀맵

 

 

 

테스트 동영상 보기

 

 


 

 

SPI 표준 핀맵으로 여러 확장 보드에서 테스트 가능하도록 했다.

 

 

 

 

 

 

 

 

 

Posted by nexp
TAG NRF905, Zigbee

댓글을 달아 주세요

[INTERFACE]/ZIGBEE2011. 4. 7. 19:25

[nRF24L01] Nordic Zigbee 모듈 제작

[nRF24L01] Nordic Zigbee 모듈 제작


NORDIC사의 nRF24L01 모듈 보드를 SM-Type모듈에 연결될 수 있는 형태로 제작해 Bluetooth, Zigbee를 UART형태로 사용할 수 있다.

nRF24L01 예제 소스코드


최대 2Mbps까지 전송가능하다고 하니 여러형태로 사용할 곳이 많을것 같다.



MCU는 저전력에 저렴한 Cortex-M0를 사용하였다.



모듈대 모듈또는 모듈대 PC로 연결하여 UART형태로 사용가능하다.



기존 SM-Type EVM보드에 USB2UART, Bluetooth, Zigbee 등으로 연결 가능하다.
Posted by nexp

댓글을 달아 주세요

  1. 우루사

    관리자의 승인을 기다리고 있는 댓글입니다

    2011.05.23 00:27 [ ADDR : EDIT/ DEL : REPLY ]

[INTERFACE]/ZIGBEE2011. 1. 7. 22:10

[Zigbee] 무선모듈을 이용한 가속도 센서 데이터 전송 테스트

[Zigbee] 무선모듈을 이용한 가속도 센서 데이터 전송 테스트



Zigbee기반의 RF2UART 모듈의 성능 테스트를 위해 가속도 센서 데이터를 무선으로 전송하는 테스트를 진행했다.

기존 Zigbee모듈들은 UART를 지원하지만 속도가 느리거나 패킷방식으로 전송해야 되서 디버깅에 어려움이 많아 USB2UART를 대체하는 용도로 제작해 보았다. (아래 동영상은 115200에서 100Hz로 데이터 전송하는 예이다. 다른 Zigbee모듈로는 20Hz이상 힘들었다)
MCU입장에서는 그냥 시리얼 통신으로 보면 된다. USB2UART모듈과 핀맵이 호환되므로 개발및 디버깅때는 유선으로 테스트 하고 최종적으로 모듈만 변경하면 무선으로 데이터 송수신 할 수 있다.

테스트 동영상
아래 테스트 동영상은 STM32를 이용하여 가속도 센서 데이터를 수집하고 100Hz주기로 UART로 전송하면 Zigbee 무선모듈으로 PC에 전송하여 표시하는 테스트이다.

Posted by nexp

댓글을 달아 주세요

[INTERFACE]/ZIGBEE2010. 10. 22. 21:30

[CC2500] 소형 Zibee 모듈 제작

[CC2500] 소형 Zibee 모듈 제작


소형의 RF to UART모듈을 제작 했다. 기존 USB2UART, Bluetooth2UART 모듈과 호환되는 핀맵으로 제작하여 기존 보드에 연결하여 무선으로 시리얼 데이터 전송이 가능하다.
UART로 입력되는 데이터를 UART로 전송하고 수신된 데이터를 UART로 출력한는 기능을 한다.

기본적으로 모듈간 시리얼 통신을 무선으로 변경해 주는 기능을 하지만 PC에 연결도 가능하다. 만들면서  STM32를 이용하여 USB2UART 도 함께 제작하였다. 장점이라면 펌웨어를 수정할 수 있기 때문에 보레이트나 기타 여러 기능을 추가 할수 있다.




Posted by nexp

댓글을 달아 주세요

  1. 설동국

    관리자의 승인을 기다리고 있는 댓글입니다

    2011.07.16 10:31 [ ADDR : EDIT/ DEL : REPLY ]