ബിറ്റ് ഉപകരണങ്ങൾ: ഈ ആപ്ലിക്കേഷൻ രണ്ടു മൈക്രോ തമ്മിലുള്ള ഒരു ചാനൽ സ്ഥാപിക്കുന്നു. ചാനൽ UART ആശയവിനിമയം ആയി handeled ചെയ്യും. UART കൈമാറ്റം ബിറ്റ് ഡിവൈസ്: ഓരോ മൈക്രോ ഒരു പ്രോഗ്രാം develope ഞങ്ങൾക്കുണ്ട്.
സൂചന aktive: BLE സൂചന (സ്വതേ)
സൂചന inaktive: BLE അറിയിപ്പ്
സൈലന്റ് aktive: ഇല്ല വിഷ്വൽ ലോഗിംഗ്
സൈലന്റ് inaktive: ലോഗിംഗ്
ആവശ്യകതകൾ:
- മിൻ. ആൻഡ്രോയിഡ് 4.4
- ബ്ലൂടൂത്ത് ലോ എനർജി (BLE)
- പെയർ ഉപകരണങ്ങൾ
- മൈക്രോ: ബിറ്റ് പ്രോഗ്രാം (സ്വയം വികസിപ്പിച്ചത്)
ബാഗിലേക്ക് ഉദാഹരണം:
#include "MicroBit.h"
#include "MicroBitUARTService.h"
MicroBit uBit;
MicroBitUARTService * uart;
കണക്ട് = 0 യ;
ശൂന്യവുമായിരിക്കും onConnected (MicroBitEvent ഇ)
{
uBit.display.scroll ( "സി");
= 1 ബന്ധിപ്പിച്ചുകൊ്
}
ശൂന്യവുമായിരിക്കും onDisconnected (MicroBitEvent ഇ)
{
uBit.display.scroll ( "ഡി");
= 0 ബന്ധിപ്പിച്ചുകൊ്
}
ശൂന്യവുമായിരിക്കും onButtonA (MicroBitEvent ഇ)
{
എങ്കിൽ (ബന്ധിപ്പിച്ച == 0) {
uBit.display.scroll ( "എൻ.സി");
മടങ്ങിപ്പോകുവിൻ;
}
uart-> അയയ്ക്കുക ( "അതെ");
uBit.display.scroll ( "വൈ");
}
ശൂന്യവുമായിരിക്കും onButtonB (MicroBitEvent ഇ)
{
എങ്കിൽ (ബന്ധിപ്പിച്ച == 0) {
uBit.display.scroll ( "എൻ.സി");
മടങ്ങിപ്പോകുവിൻ;
}
uart-> അയയ്ക്കുക ( "അല്ല");
uBit.display.scroll ( "വ");
}
ശൂന്യവുമായിരിക്കും onButtonAB (MicroBitEvent ഇ)
{
എങ്കിൽ (ബന്ധിപ്പിച്ച == 0) {
uBit.display.scroll ( "എൻ.സി");
മടങ്ങിപ്പോകുവിൻ;
}
uart-> അയയ്ക്കുക ( "എസ്.കെ");
uBit.display.scroll ( "എസ്.കെ");
}
ശൂന്യവുമായിരിക്കും processBLEUart () {
readBuf [22] uint8_t;
അതേസമയം (1) {// എന്നേക്കും ലൂപ്പ്
എങ്കിൽ ((! ബന്ധപ്പെട്ടു) || (! uart-> isReadable ())) {
uBit.sleep (50); // 50mS കാത്തിരുന്ന ശേഷം വീണ്ടും പരിശോധിക്കുക
തുടരുക; // ലൂപ്പ്;
}
// നാമും കണക്റ്റുചെയ്തിട്ടുണ്ടെന്നതും വായിക്കാൻ ചില ഇൻപുട്ടൊന്നും
എങ്കിൽ (uart-> isReadable ()) {
അതേസമയം (uart-> isReadable ()) {
യ charCount = uart-> (readBuf, 22, async) വായിക്കുക;
എങ്കിൽ (charCount! = 0) {
(ഞാൻ uBit.display.scroll ((ചാർ) readBuf [ക]);
}
}
}
}
}
/ *
പ്രധാനപ്പെട്ടത് !!!
Oherwise ള് മെമ്മറി ചെയ്യും!
അവർ ഇവിടെ ആവശ്യമില്ലാത്ത ശേഷം MicroBitConfig.h ലെ DFU ഇവന്റ് സേവനങ്ങൾ രഹിതമാക്കുവാൻ:
microbit-> microbit-dal-> inc-> core-> MicroBitConfig.h
#define MICROBIT_BLE_DFU_SERVICE 0
#define MICROBIT_BLE_EVENT_SERVICE 0
#define MICROBIT_SD_GATT_TABLE_SIZE 0x500
* /
പ്രധാന int ()
{
ബിറ്റ് പ്രവർത്തനസമയം: // മൈക്രോ സമാരംഭിക്കുന്നതിന്.
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 = പുതിയ MicroBitUARTService (* uBit.ble, 32, 32);
uBit.display.scroll ( "ഗോ");
create_fiber (& processBLEUart); // ഫൈബർ സൃഷ്ടിക്കാനും ഷെഡ്യൂൾ.
release_fiber ();
}
അപ്ഡേറ്റ് ചെയ്ത തീയതി
2020 ഡിസം 30