본문 바로가기

[ST_MICRO]/STM32WB

STM32WB55 SSM - Aduino 환경에서 BLE UART 테스트

STM32WB55 용으로 STM32CubeIDE 에서 제공하는  BLE 개발 예제는 많이 않고 독자적인 라이브러리를 사용하기 때문에 호환성이 많이 떨어진다.

ST에서 제공하는 Arduino 도 BLE 기능을 제공하지만 거의 안되는 기능이 많아 사용하기 힘들다. 

찾아보니 STM32WB 용 BLE 라이브러리를 Arduino 코드로 제공하는 곳이 있다.

 

 

Boards Manager 에서 SWM32WB로 검색해서 Tlera Corp STM32WB를 설치 한다.

 

 

STM32WB의 BLE를 가장 간단하게 테스트 할수 있는 BLEUart를 테스트 해보자.

코드는 정말 심플하다.

#include "Arduino.h"
#include "STM32WB.h"
#include "BLE.h"

BLEUart SerialBLE(BLE_UART_PROTOCOL_NORDIC);

void setup()
{
    Serial.begin(115200);
    
    while (!Serial) { }

    BLE.begin();
    BLE.setLocalName("STM32WB-UART");
    BLE.setAdvertisedServiceUuid(SerialBLE.uuid());

    BLE.addService(SerialBLE);
    
    BLE.advertise();

    delay(1000);
}

void loop()
{ 
    int c;
    
    if (!BLE.advertising() && !BLE.connected()) {
        BLE.advertise();
    }

    SerialBLE.println();

    while ((c = SerialBLE.read()) >= 0)
    { 
    	if (c == '\n')
        { 
        	Serial.write('\r');
        }
        Serial.write(c); 
    }
    
    delay(1);
}

 

 

다운로드 후 실행하면 ST에서 제공하는 앱에서 BLE UART로 인식이 되고 데이터 송수신이 가능하다.

 

 

다른 BLE용 터미널 프로그램에서도 인식되고 데이터가 송수신 되는것을 확인 할 수 있다.

 

 

 

 

반응형