[MSP430]/MSP430-S2011. 3. 16. 15:38

무선 깜박이 신호 전송장치 - MSP430F2013 (MSP430F2231) 선정

무선 깜박이 신호 전송장치 - MSP430F2013 (MSP430F2231) 선정
소형에 UART가 가능한 그리고 저렴한 MCU를 선택해야 한다.
0.5$ 대로 구매 했던 MSP430이 좋을것 같다. 얼마전 소프트 UART도 테스트 했으니  UART도 문제 없고, 클럭 필요 없고 플래시 라이트도 간한하니 소형으로 만들기 좋을것 같다.

기능은 차량 깜박이 신호를 감지해서 무선으로 전송하면 된다. 이런 기능이로 쓰기는 딱 좋은것 같다. 뒷면에 MSP430F2013 (MSP430F2231)이 실장되어 있다.



Posted by nexp

댓글을 달아 주세요

[INTERFACE]/Bluetooth2011. 3. 4. 23:00

[Bluetooth] 핸드폰을이용한 램프 제어

[Bluetooth] 핸드폰을이용한 램프 제어



MSP430G 시리즈는 아주 소형이고 저렴한 가격에 저전력 컨셉의 MCU이다. 잘 적용하면 사용할 곳이 많을것 같다.
[MSP430G2231 EVM] UART테스트 예제를 활용하여 실행활에 적용해 볼것이 없을까 생각하다 핸드폰을 이용하려 램프를 제어 하면 좋을것 같아 적용해 보았다.

먼저 브레드보드에 연결하여 간단히 무선으로 LED제어하는 테스트를 진행 했다.
핸드폰과의 통신은 블루투스를 이용하고 블루투스 모듈 myBluetooth-EX 115200을 MSP430G2231 모듈에 연결한다.



Bluetoorh로 핸드에서 MSP430F2231제어 테스트 동영상




4채널 220V 릴레이 제어 보드를 이용하여 램프제어 보드 구성
4채널 240V/5A 릴레이이와 릴레이제어제어 및 MCU전원 공급을 위한 220V입력 12V출력 Power모듈을 실장할 수 있는 보드이다. 나머지 공간은 100밀 패드로 되어 있으므로 자유롭게 회로를 꾸밀 수 있다.

추후 SSR로 교체하면 좀더 소형으로 만들수 있으므로 형광등 스위치등으로 활용하면 좋을것 같다.
Posted by nexp

댓글을 달아 주세요

[MSP430]/MSP430-S2011. 3. 4. 11:31

[MSP430G ] 양방향 Soft UART 테스트

[MSP430G ] 양방향 Soft UART 테스트



MSP430G2231을 이용하여 양방향 UART통신을 테스트 해 보았다. MSP430G 시리즈는 저전력, 저렴함을 강점으로 내새우기 때문에 UART가 없어 소프트웨어 UART를 이용하는데 지난번에는 간단히 송신만 테스트 했었다. 이번에는 송수신 모두 되도록 수정해서 테스트 해 보았다.

실험 결과 8Mhz에서 115200bps까지 통신이 잘된다.



UART 드라이버 함수의 U0_PutByte(), U0_GetByte() 부분을 수정하고 나머지는 TimerA인터럽트에서 처리 하면 간한히 송수신 가능하다.
[config.h]
#define  TXD  BIT1    // TXD on P1.1
#define  RXD  BIT2    // RXD on P1.2

#define SOFT_UART_INIT()  P1SEL |= TXD;\
        P1DIR |= TXD;\
        P1IES |= RXD;\
        P1IFG &= ~RXD;\
        P1IE |= RXD;


[serial.c]
void U0_PutByte(unsigned char Data)
{
 TXByte = Data;
 
 while(isReceiving);   // Wait for RX completion
 TXByte |= 0x100;   // Add stop bit to TXByte (which is logical 1)
 TXByte = TXByte << 1;   // Add start bit (which is logical 0)
 BitCnt = 0xA;    // Load Bit counter, 8 bits + ST/SP

 CCTL0 = OUT;    // TXD Idle as Mark
 TACTL = TASSEL_2 + MC_2;  // SMCLK, continuous mode
 CCR0 = TAR;    // Initialize compare register 
 CCR0 += Bit_time;   // Set time till first bit 
 CCTL0 =  CCIS0 + OUTMOD0 + CCIE;  // Set signal, intial value, enable interrupts
 while ( CCTL0 & CCIE );   // Wait for previous TX completion
}

unsigned char U0_GetByte(void)
{
 while(!hasReceived);

 // Clear the flag 
 hasReceived = 0; 
    return RXByte;
}




MSP430G2231 Soft UART 테스트 예제 코드
#include "system.h"
#include "serial.h"

void main(void)
{
 //System Initialize
 SystemInit();
 
 //UART초기화
 U0_Init(BAUD_115200);
 
 Led1Init();
 Led1On();

  U0_PutStr("MSP430 Serial Test\r\n"); 
 
 while (1)
 {
  if(U0_IsGetByte())
  {
   switch(U0_GetByte())
   {  
    case '0':
     Led1Off();
     U0_PutStr("Led1Off()\r\n"); 
     break;
     
    case '1':
     Led1On();
     U0_PutStr("Led1On()\r\n");      
     break;   
   }
  }




MSP430G2231 UART테스트 동영상



핸드폰과 Bluetooth을 이용한 램프제어 테스트 동영상
Posted by nexp

댓글을 달아 주세요

[MSP430]/MSP430-S2010. 9. 4. 15:22

[MSP430G2213 적용 사례] 저전력에 저렴한 MCU

[MSP430G2213 적용 사례] 저전력에 저렴한 MCU

멀티 채널 MIC입력 프로젝트 진행중 저렴한 MCU를 선정해야 하는데... 회사에 많이 가지고 있는것 중에 MSP430G2231(MSP430F2013)이 있다.
14핀 크기작고 클럭 내장이고 0.5$대라 사용하기 좋은것 같다.
기능은 단순하다. 스위치 입력 받고 I2C로 게인 설정하는 역할만 하면된다. 이런 용도로 사용하기 딱 좋은것 같다.


Posted by nexp

댓글을 달아 주세요

[MSP430]/MSP430-S2010. 7. 17. 12:05

[MSP430G2231] 내장 온도센서 테스트

[MSP430G2231] 내장 온도센서 테스트



MSP430G2231 ADC 블록도
내부 온도 센서는 ADC 채널 10번에 연결되어 있다.



MSP430 내부 온도센서 특성 그래프



MSP430 온도센서 테스트 소스코드

void main(void)
{
 //System Initialize
 SystemInit();

   FndInit();
 ADC_Init();
 
 while (1)
 { 
    ADC16_Channel(10);

  temp = ADC_Read();
  deg_c = ((temp - 673) * 423) / 1024;

  FndOut(deg_c);
 
  Delay(100);
 } // while
}



Posted by nexp

댓글을 달아 주세요