본문 바로가기

분류 전체보기

(1955)
무선 깜박이 신호 전송장치 - MSP430F2013 (MSP430F2231) 선정 무선 깜박이 신호 전송장치 - MSP430F2013 (MSP430F2231) 선정 소형에 UART가 가능한 그리고 저렴한 MCU를 선택해야 한다. 0.5$ 대로 구매 했던 MSP430이 좋을것 같다. 얼마전 소프트 UART도 테스트 했으니 UART도 문제 없고, 클럭 필요 없고 플래시 라이트도 간한하니 소형으로 만들기 좋을것 같다. 기능은 차량 깜박이 신호를 감지해서 무선으로 전송하면 된다. 이런 기능이로 쓰기는 딱 좋은것 같다. 뒷면에 MSP430F2013 (MSP430F2231)이 실장되어 있다.
dsPIC33 large const 메모리 할당 - PSV 사용하기 dsPIC33 large const 메모리 할당 - PSV 사용하기 dsPIC33보드를 이용하여 EXP-ARM TFT LCD에 이미지를 출력하려고 const 데이터를 할당받았는데 에러가 발생한다. 하드웨어 구조상 32k 이상 할당이 안된다고 한다. 해결책이 없을까? dsPIC에서 const 데이터는 코어 구조상 32byte까지 할당 가능하다. 대용량의 코드 데이터(constant)를 할당 받으려면 PSV를 이용하면 된다고 한다. 물론 psv를 할당해도 32kbye단위로 설정 가능하다.(그냥 const로 설정하면 32k 이상 할당 할 수가 없다.) 32KB 영역(0x8000 ~ 0xFFFF)을 페이지 별로 할당하여 사용할 수 있다고 한다. C30컴파일러 에서는 __attribute__((space(psv)..
[PIC32-SM EVM] W5100을 이용한 USB 메모리스틱 웹서버 테스트 [PIC32-SM EVM] W5100을 이용한 USB 메모리스틱 웹서버 테스트 PIC32의 강점은 저렴하면서도 고성능의 USB호스트 기능이 있기 때문에 웹서버 어플리케이션에 사용하기에 좋다. 웹페이지를 USB메모리 스틱에 저장하기 때문에 페이지 업데이트와 같은 관리가 편리하고 범용성이 좋다. 뿐만아니라 고용량 이기 때문에 웹페이지 제작시 메모리 문제 없이 작성할 수 있다. 물론 고용량 데이터를 처리하기 위해 PIC32의 PMP기능을 이용하여 이더넷 속도를 좀 더 올릴 필요가 있다. 간단히 웹페이지 몇개와 이미지를 이용하여 웹서버를 테스트 해 보았다. 메인페이지 PIC32 보드 LED테스트 페이지 PIC32 USB메모리스틱을 이용한 웹서버 테스트 동영상
[PIC32-SM EVM] W5100을 TCP서버 전송속도 테스트 - SPI모드 [PIC32-SM EVM] W5100을 TCP서버 전송속도 테스트 - SPI모드 PIC32를 이용하여 W5100 이더넷 테스트를 해 보았다. PIC32는 저렴하지만 W5100을 빠르게 제어할 수 있는 PMP기능과 USB호스트가 있기 때문에 웹서버 어플리케이션에 적용하기 좋을것 같다. 일단 W5100 을 테스트하기 위해 간단히 연결할 수 있는 SPI방식으로 [NET-EVM]보드에테스트 했다. W5100제어를 위한 드라이버 코드는 아래와 같다. //----------------------------------------------------------------------------- // W5100 HAL #define W5100_CS_PORT LATG #define W5100_CS_BIT BIT9 #de..
[PIC32-SM EVM] SPI 테스트 - 가속도 센서 테스트 [PIC32-SM EVM] SPI 테스트 PIC32의 SPI는 최대 25Mhz로 동작하며 8, 16, 32비트로 설정가능하다. [PIC32-SM EVM] 보드에는 SPI핀이 SPI2 RG6(SCLK), RG7(MISO), RG8(MOSI)에 할당되어 있다. PIC32 블록도 PIC32 SPI초기화 void SPI0_Init(void) { SPI2CONbits.ON = 1; // Enable SPI2CONbits.FRZ = 0; SPI2CONbits.SIDL = 0; SPI2CONbits.DISSDO = 0; SPI2CONbits.MODE32 = 0; SPI2CONbits.MODE16 = 0; //8비트 모드 //SPI 모드 설정 SPI2CONbits.SMP = 0; //위상 설정 SPI2CONbits.C..
[Bluetooth] 핸드폰을이용한 램프 제어 [Bluetooth] 핸드폰을이용한 램프 제어 MSP430G 시리즈는 아주 소형이고 저렴한 가격에 저전력 컨셉의 MCU이다. 잘 적용하면 사용할 곳이 많을것 같다. [MSP430G2231 EVM] UART테스트 예제를 활용하여 실행활에 적용해 볼것이 없을까 생각하다 핸드폰을 이용하려 램프를 제어 하면 좋을것 같아 적용해 보았다. 먼저 브레드보드에 연결하여 간단히 무선으로 LED제어하는 테스트를 진행 했다. 핸드폰과의 통신은 블루투스를 이용하고 블루투스 모듈 myBluetooth-EX 115200을 MSP430G2231 모듈에 연결한다. Bluetoorh로 핸드에서 MSP430F2231제어 테스트 동영상 4채널 220V 릴레이 제어 보드를 이용하여 램프제어 보드 구성 4채널 240V/5A 릴레이이와 릴레이..
[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..
[PIC12F EVM] Soft UART 테스트 [PIC12F EVM] Soft UART 테스트 소형 MCU에서 UART를 이용하면 디버깅 하기에 편리한 점이 많다. PIC12F683 보드도 Soft UART를 이용하여 시리얼 제어 [LCD Module] 에 디버깅 정보를 표시하는 테스트를 해 보았다. 먼저 Serial.c 코드를 좀 수정하여 기존 코드와 호환 가능하도록 수정한다. // GPIO.0 as UART Rx, and 1 as Tx #define SOFT_UART_INIT() do{ \ TRISIO = 0x39;\ ANSEL = 0x00;\ GPIO = 0;\ Soft_UART_Init(&GPIO,0, 1, 9600, 0 );\ }while(0) #define U0_PutByte Soft_UART_Write void U0_Init(unsign..