AndroidのBLEラジコンプロポアプリ「BLEPropo」と接続し、RCサーボとDCモータを制御するプログラムです。 BLE Nanoで動作を確認しています。 BLEPropo → https://github.com/lipoyang/BLEPropo
BLEを使ったAndroid用ラジコンプロポアプリ「BLEPropo」に対応するBLE Nano用ファームウェアです。
BLEPropoは、GitHubにて公開中。
https://github.com/lipoyang/BLEPropo
ラジコンは、mbed HRM1017とRCサーボやDCモータを組み合わせて作ります。
回路図
/media/uploads/lipoyang/ministeer3.pdf
nRF51822/nordic/ble/ble_advdata_parser.cpp@5:7f89fca19a9e, 2015-03-14 (annotated)
- Committer:
- lipoyang
- Date:
- Sat Mar 14 12:02:48 2015 +0000
- Revision:
- 5:7f89fca19a9e
-convert nRF51822 library to a folder
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
lipoyang | 5:7f89fca19a9e | 1 | #include "ble_advdata_parser.h" |
lipoyang | 5:7f89fca19a9e | 2 | |
lipoyang | 5:7f89fca19a9e | 3 | uint32_t ble_advdata_parser_field_find(uint8_t type, uint8_t * p_advdata, uint8_t * len, uint8_t ** pp_field_data) |
lipoyang | 5:7f89fca19a9e | 4 | { |
lipoyang | 5:7f89fca19a9e | 5 | uint32_t index = 0; |
lipoyang | 5:7f89fca19a9e | 6 | |
lipoyang | 5:7f89fca19a9e | 7 | while (index < *len) |
lipoyang | 5:7f89fca19a9e | 8 | { |
lipoyang | 5:7f89fca19a9e | 9 | uint8_t field_length = p_advdata[index]; |
lipoyang | 5:7f89fca19a9e | 10 | uint8_t field_type = p_advdata[index+1]; |
lipoyang | 5:7f89fca19a9e | 11 | |
lipoyang | 5:7f89fca19a9e | 12 | if (field_type == type) |
lipoyang | 5:7f89fca19a9e | 13 | { |
lipoyang | 5:7f89fca19a9e | 14 | *pp_field_data = &p_advdata[index+2]; |
lipoyang | 5:7f89fca19a9e | 15 | *len = field_length-1; |
lipoyang | 5:7f89fca19a9e | 16 | return NRF_SUCCESS; |
lipoyang | 5:7f89fca19a9e | 17 | } |
lipoyang | 5:7f89fca19a9e | 18 | index += field_length+1; |
lipoyang | 5:7f89fca19a9e | 19 | } |
lipoyang | 5:7f89fca19a9e | 20 | return NRF_ERROR_NOT_FOUND; |
lipoyang | 5:7f89fca19a9e | 21 | } |