Intereting Posts
Как вы перезагружаете представление UIViewController из XIB после того, как предупреждение о памяти удаляет его? Прикосновение не называется Не удается установить AdHoc или Dev IPAs только на iOS10 Не удается войти в систему как тестовая учетная запись Facebook на iOS Simulator Как установить цвет текста в месте установки UISearchBar Изображение яркости iOS 8 не отображается на устройстве GPUImage – используйте NSMutableArray для применения фильтров последовательно Я хочу знать поток управления памятью после исключения времени выполнения в iOS SpriteKit – комбинация SKView / SKScene / SKCameraNode создает проблемы Как добиться функциональности stickyheader, такой как instagram в моем групповом представлении таблицы? Сравнение NSDateComponents Как изменить представление в моем раскадровке для поддержки прокрутки в Xcode? React Native UITabBar выглядит слишком мало на iPad Swift 3 Game Center Leaderboard не сохраняет ценность оценки Создание IBAction для CollectionViewCell

Вопросы по iOS bluetooth

Я хочу использовать свой iPad для подключения к низкомощному модулю Bluetooth OLS426 для отправки данных по последовательному порту модуля Bluetooth. Я успешно подключился к модулю Bluetooth. В связи с этим iPad работает как центральный, а модуль Bluetooth – как периферийный.

Вот мои вопросы:

(1)

[peripheral setNotifyValue:YES forCharacteristic:characteristic]; 

Я подписываюсь на модуль Bluetooth в didDiscoverCharacteristicsForService.

  - (void)peripheral:(CBPeripheral *)peripheral didUpdateNotificationStateForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error{ NSLog(@"Subscribed"); 

}

После подписки на терминале печатается журнал «Подписка». Означает ли это, что я успешно подписался на устройство?

(2)

Я также пытаюсь написать значение для характеристики в didDiscoverCharacteristicsForService.

  [peripheral writeValue: data forCharacteristic:characteristic type:CBCharacteristicWriteWithResponse]; 

Поскольку я задал тип CBCharacteristicWriteWithResponse, я думаю, что если запись не будет успешной, произойдет ошибка. Однако ошибок нет.

  - (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error{ NSLog(@"Hello sent"); } 

Мой вопрос в том, почему «Hello sent» не печатается после того, как я установил значение для характеристики?

(3)

Я хочу отправить некоторые данные на последовательный порт модуля bluetooth. Я могу только читать данные с характеристики, например, монитора сердечного ритма, или записывать данные в характеристику. В сервисах модуля Bluetooth я нахожу, что называется «Последовательный порт», под которым есть характеристика, называемая «FIFO». Поэтому я предполагаю, что я должен записать данные в этот признак, чтобы отправить данные в последовательный порт. Может ли кто-нибудь сказать мне, правильно ли я думаю?

1) Да.

2) didUpdateValueForCharacteristic вызывается, когда значение признака изменяется независимо от вашей собственной записи на этот признак.

3) Прочитали ли вы документ connectBlue о том, как читать / записывать данные через FIFO-характеристику?