See app luuakse kanal kahe mikro: natuke seadmeid. Kanal handeled kui UART side. Sa pead arendamisega kätt programm igal micro: natuke seade UART üleandmist.
Märge Aktive: BLE tähis (Vaikimisi)
Märge inaktive: BLE teatamine
Silent Aktive: No visuaalne raie
Silent inaktive: Raie
nõuded:
- Min. Android 4.4
- Bluetooth Low Energy (BLE)
- Seotud seadmed
- Micro: natuke programm (arenenud ise)
MBED näiteks:
#include "MicroBit.h"
#include "MicroBitUARTService.h"
MicroBit UBIT;
MicroBitUARTService * uart;
int ühendatud = 0;
kehtetuks onConnected (MicroBitEvent e)
{
uBit.display.scroll ( "C");
ühendatud = 1;
}
kehtetuks onDisconnected (MicroBitEvent e)
{
uBit.display.scroll ( "D");
ühendatud = 0;
}
kehtetuks onButtonA (MicroBitEvent e)
{
if (ühendatud == 0) {
uBit.display.scroll ( "NC");
tagasi;
}
uart-> saata ( "Jah");
uBit.display.scroll ( "Y");
}
kehtetuks onButtonB (MicroBitEvent e)
{
if (ühendatud == 0) {
uBit.display.scroll ( "NC");
tagasi;
}
uart-> saata ( "Ei");
uBit.display.scroll ( "N");
}
kehtetuks onButtonAB (MicroBitEvent e)
{
if (ühendatud == 0) {
uBit.display.scroll ( "NC");
tagasi;
}
uart-> saata ( "SK");
uBit.display.scroll ( "SK");
}
void processBLEUart () {
uint8_t readBuf [22];
while (1) {// ahel kunagi
if ((! ühendatud) || (! uart-> isReadable ())) {
uBit.sleep (50); // Oodata 50ms ja kontrollige uuesti
jätkata; // Loop;
}
// Muidu oleme ühendatud ja seal on mõned sisend lugeda
if (uart-> isReadable ()) {
while (uart-> isReadable ()) {
int charCount = uart-> lugeda (readBuf, 22, ASYNC);
if (charCount! = 0) {
jaoks (int i = 0; i uBit.display.scroll ((char) readBuf [i]);
}
}
}
}
}
/ *
TÄHTIS !!!
Oherwise teile otsa mälu!
Soovitavad keelamine DFU ja Event teenuste MicroBitConfig.h sest need ei ole vajalikud siin:
microbit-> microbit-dal-> Inc-> Põhikursus-> MicroBitConfig.h
#define MICROBIT_BLE_DFU_SERVICE 0
#define MICROBIT_BLE_EVENT_SERVICE 0
#define MICROBIT_SD_GATT_TABLE_SIZE 0x500
* /
int main ()
{
// Programmeerida micro: natuke tööaega.
uBit.init ();
uBit.messageBus.listen (MICROBIT_ID_BLE, MICROBIT_BLE_EVT_CONNECTED, onConnected);
uBit.messageBus.listen (MICROBIT_ID_BLE, MICROBIT_BLE_EVT_DISCONNECTED, onDisconnected);
uBit.messageBus.listen (MICROBIT_ID_BUTTON_A, MICROBIT_BUTTON_EVT_CLICK, onButtonA);
uBit.messageBus.listen (MICROBIT_ID_BUTTON_B, MICROBIT_BUTTON_EVT_CLICK, onButtonB);
uBit.messageBus.listen (MICROBIT_ID_BUTTON_AB, MICROBIT_BUTTON_EVT_CLICK, onButtonAB);
uart = uus MicroBitUARTService (* uBit.ble, 32, 32);
uBit.display.scroll ( "Go");
create_fiber (& processBLEUart); // Luua kiudaineid ja ajastada.
release_fiber ();
}
Värskendatud:
30. dets 2020