TI CC2650STK - как управлять встроенным светодиодом через приложение iOS - PullRequest
0 голосов
/ 10 декабря 2018

Я использую этот код из этого репозитория: https://git.ti.com/sensortag-ios-source-code-example/sensortag-ios-source-code-example

Я пытаюсь включить красный встроенный светодиод CC2650STK, когда датчик температуры объекта превышает 30 ° C, и выключить его, когда температураснова ниже 30 ° C.

Я даже не уверен, что мой текущий подход правильный, но я застрял здесь.Кто-нибудь знает, что я делаю неправильно?

Заранее спасибо!

Я не менял прошивку аппаратного обеспечения

Я уже добавил следующее в "calcValue"метод в файле 'sensorTagAmbientTemperaService.m':

if (tObj >= 30.0){
    uint8_t valueRedLedOn = 0x01;
    NSData *data = [NSData dataWithBytes:&valueRedLedOn length:sizeof(valueRedLedOn)];
    [self.btHandle writeValue:data toCharacteristic:TI_SENSORTAG_IO_CONFIG];
    redLedOn = true;
}
else {
    if(redLedOn == true){
        uint8_t valueRedLedOff = 0x00;
        NSData *data = [NSData dataWithBytes:&valueRedLedOff length:sizeof(valueRedLedOn)];
        [self.btHandle writeValue:data toCharacteristic:TI_SENSORTAG_IO_CONFIG];
        redLedOn = false;
    }
}

, но когда приложение работает и температура достигает 30 ° C, я получаю ошибку SIGABRT (также см. вывод журнала):

снимок экрана с кодом ошибки и журналом

хранилище с моими изменениями

1 Ответ

0 голосов
/ 11 декабря 2018

Спасибо за ваши ответы.

Я должен это исправить.Проблема заключалась в том, что я забыл инициализировать сервис и характеристику.

Я добавил 'sensorTagIoService.h' и '.m' и инициализировал его, как и другие сервисы.

(значения для индикаторав моем вопросе, кажется, что-то не так)

...