본문 바로가기

[MSP430]

(140)
[MSP430] 풀업저항 설정 - 스위치 입력처리 [MSP430] 풀업저항 설정 - 스위치 입력처리 MSP430의 내부 풀업 저항 설정은 REN레지스터를 셋팅해 주면 된다. 내부 풀업을 사용할경우 저항이 고정되어 있어서 1.6uA정도가 소모된다.(MSP430자체는 nA단위로 소모한다.) 만약 저전류로 동작하기를 원한다면 외부에 더 큰저항으로 풀업 하는것이 좋다. #define SW_BIT (BIT0|BIT1|BIT2|BIT3) #define SW_PORT P1IN #define SwInit() Sbi(P1REN, SW_BIT);Cbi(P1DIR, SW_BIT); #define GetSw() ((~SW_PORT)&SW_BIT) main() { SwInit(); while(1) { sw_new = GetSw(); if(sw_new != sw_old) { }..
[MSP430G2213 적용 사례] 저전력에 저렴한 MCU [MSP430G2213 적용 사례] 저전력에 저렴한 MCU 멀티 채널 MIC입력 프로젝트 진행중 저렴한 MCU를 선정해야 하는데... 회사에 많이 가지고 있는것 중에 MSP430G2231(MSP430F2013)이 있다. 14핀 크기작고 클럭 내장이고 0.5$대라 사용하기 좋은것 같다. 기능은 단순하다. 스위치 입력 받고 I2C로 게인 설정하는 역할만 하면된다. 이런 용도로 사용하기 딱 좋은것 같다.
[MSP430G2231] ADC테스트 [MSP430G2231]ADC테스트 MSP430G2231에는 10비트 ADC가 내장되어 있다. VR을 이용해 간단히 ADC테스트를 해 보았다. 외부 ADC입력으로 P0.0~P0.7에 8채널 입력 가능하다. P1.1에 VR을 연결하여 전압변화를 측정할 수 있도록 했다. ADC 레지스터 초기화 설정 //클럭설정 #define ADC10SHT_0 (0*0x800u) /* 4 x ADC10CLKs */ #define ADC10SHT_1 (1*0x800u) /* 8 x ADC10CLKs */ #define ADC10SHT_2 (2*0x800u) /* 16 x ADC10CLKs */ #define ADC10SHT_3 (3*0x800u) /* 64 x ADC10CLKs */ #define ADC10ON (0x010)..
[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 }
[MSP430G2231] FND테스트 [MSP430G2231] FND테스트 예전에 만들어 두었던 3핀으로 제어 가능한 FND모듈을 이용하여 간단한 테스트를 해보았다. FND모듈의 핀맵은 아래와 같다. config.h #define SHIFT_DATA_PORT P1OUT #define SHIFT_DATA_DDR P1DIR #define SHIFT_DATA_BIT BIT4 #define SHIFT_CLK_PORT P1OUT #define SHIFT_CLK_DDR P1DIR #define SHIFT_CLK_BIT BIT5 #define SHIFT_LATCH_PORT P1OUT #define SHIFT_LATCH_DDR P1DIR #define SHIFT_LATCH_BIT BIT7 #define SHIFT_PORT_INIT() Sbi(SHIFT_D..
[MSP430G2231] UART 테스트 [MSP430G2231] UART 테스트 MSP430G2231은 USI인터페이스로 I2C, SPI가 있지만 UART는 없기 때문에 소프트웨어로 구현해야 한다. TI에서 제공 예제가 있으므로 적당히 수정해서 PC와 통신을 테스트 해 보았다. PC와 연결은 USB2UART를 이용했다.MSP430G2231 UART 테스트용 핀은 아래와 같이 할당 했다. P1.1 - TXD P1.2 - RXD P1.4 - Switch MSP430G2231 UART테스트 소스코드 #include "system.h" #include "serial.h" unsigned int flag_send = 0; void main(void) { unsigned char cnt = 0; SystemInit(); Led1Init(); Led1On..
[MSP430G2231] Low Cost Value Line MCU 관련 자료 [MSP430G2231] Low Cost Value Line MCU 관련 자료 TI에서 새롭게 출시된 저렴한 Value Line MCU MSP430G2231을 테스트 해 보았다. 0.35$부터 시작하는 Value Line은 기존 MSP430F2013과 같은 코어및 개발환경으로 별다른 기존 코드 수정없이 개발 가능하다. 물론 새롭게 출시되었기 때문에 컴파일러는 최신 IAR, CCS 4.0이 필요하다(TI에서 무료로 받을 수 있다.) 주요 특징으로 전력의 16비트 MCU이며 10비트 ADC까지 내장하고 있고 저렴하다는 것이다. 특히 ADC의 경우 DTC가 있어 소프트웨어 독립적으로 동작하기 때문에 CPU부하 없이 ADC샘플이 가능하고 전력도 거의 소비를 하지 않는다고 한다. 아래 그림과 같이 ADC샘플해서 ..
MSP430 소비전류 측정 실험 MSP430 소비전류 측정 실험 MSP430F2013 기준으로 소비전류를 측정해 보았다. 우선 MSP430 데이터시트를 보면 아래와 같이 나타나 있다. Low Supply Voltage Range 1.8 V to 3.6 V Ultra-Low Power Consumption Programming Voltage Needed, Programmable - Active Mode: 220uA at 1 MHz, 2.2V - Standby Mode: 0.5uA - Off Mode (RAM Retention): 0.1uA 우선 가장 기본 코드로 루프를 돌면서 3초에 한번씩 LED를 순간적으로 On/Off하는 코드를 돌려보았다. 기본코드는 1Mhz에서 동작한다. 측정 결과 340uA정도로 측정된다. 3.3V이므로 데이터시..

반응형