micro:bit Gateway

1 χιλ.+
Λήψεις
Αξιολόγηση περιεχομένου
Κατάλληλο για όλους
Εικόνα στιγμιότυπου οθόνης
Εικόνα στιγμιότυπου οθόνης
Εικόνα στιγμιότυπου οθόνης
Εικόνα στιγμιότυπου οθόνης

Περιγραφή εφαρμογής

Αυτή η εφαρμογή δημιουργεί ένα κανάλι μεταξύ δύο μικρο: συσκευές bit. Το κανάλι θα handeled η επικοινωνία UART. Θα πρέπει να αναπτύξει μια programm σε κάθε μικρο: συσκευή λίγο με τη μεταφορά UART.

Ένδειξη Aktive: BLE Ένδειξη (Προεπιλογή)
Ένδειξη inaktive: BLE Κοινοποίηση

Silent Aktive: Δεν υπάρχει οπτική καταγραφή
Silent inaktive: Καταγραφή

απαιτήσεις:
- Min. Android 4.4
- Bluetooth Low Energy (BLE)
- Αξιόπιστες συσκευές
- Μικρο: programm bit (που αναπτύχθηκε από τον εαυτό σας)


MBED παράδειγμα:

#include "MicroBit.h"
#include "MicroBitUARTService.h"

MicroBit uBit?
MicroBitUARTService * UART?

int συνδέεται = 0?

άκυρη onConnected (MicroBitEvent ε)
{
    uBit.display.scroll ( "C")?
    
    συνδεδεμένος = 1?
}

άκυρη onDisconnected (MicroBitEvent ε)
{
    uBit.display.scroll ( "D")?
    συνδεδεμένος = 0?
}

άκυρη onButtonA (MicroBitEvent ε)
{
    αν (συνδεδεμένο == 0) {
        uBit.display.scroll ( "NC")?
        απόδοση;
    }
    uart-> Αποστολή ( "Yes")?
    uBit.display.scroll ( "Υ")?
}

άκυρη onButtonB (MicroBitEvent ε)
{
    αν (συνδεδεμένο == 0) {
        uBit.display.scroll ( "NC")?
        απόδοση;
    }
    uart-> Αποστολή ( "Όχι")?
    uBit.display.scroll ( "Ν")?
}

άκυρη onButtonAB (MicroBitEvent ε)
{
    αν (συνδεδεμένο == 0) {
        uBit.display.scroll ( "NC")?
        απόδοση;
    }
    uart-> στείλετε ( «SK»)?
    uBit.display.scroll ( "SK")?
}

άκυρη processBLEUart () {
    uint8_t readBuf [22]?
    ενώ (1) {// βρόχο για πάντα
        αν ((! συνδεδεμένο) || (! uart-> isReadable ())) {
            uBit.sleep (50)? // Περιμένετε 50mS και ελέγξτε και πάλι
            να συνεχίσει; // Βρόχο?
        }
        // Αλλιώς είμαστε συνδεδεμένοι και υπάρχει κάποια είσοδο για να διαβάσετε
        αν (uart-> isReadable ()) {
            ενώ (uart-> isReadable ()) {
                int charCount = uart-> διαβάζουν (readBuf, 22, ASYNC)?
                αν (charCount! = 0) {
                    for (int i = 0? i                         uBit.display.scroll ((char) readBuf [i])?
                }
            }
        }
    }
}


/ *
ΣΗΜΑΝΤΙΚΌ !!!
Oherwise θα ξεμείνει από μνήμη!

Προτείνουμε την απενεργοποίηση των υπηρεσιών DFU και εκδηλώσεων σε MicroBitConfig.h δεδομένου ότι δεν χρειάζονται εδώ:
microbit-> microbit-dal-> inc-> πυρήνος> MicroBitConfig.h

#define MICROBIT_BLE_DFU_SERVICE 0
#define MICROBIT_BLE_EVENT_SERVICE 0
#define MICROBIT_SD_GATT_TABLE_SIZE 0x500
* /

int main ()
{
    // Initialise το μικρο: runtime bit.
    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 ( "Go")?
    create_fiber (& processBLEUart)? // Δημιουργούν ίνες και το χρονοδιάγραμμα αυτό.

    release_fiber ()?
}
Ενημερώθηκε στις
30 Δεκ 2020

Ασφάλεια δεδομένων

Η ασφάλειά σας ξεκινά από την κατανόηση του τρόπου με τον οποίο οι προγραμματιστές συλλέγουν και κοινοποιούν τα δεδομένα σας. Οι πρακτικές απορρήτου και ασφάλειας δεδομένων μπορεί να διαφέρουν ανάλογα με τη χρήση, την περιοχή και την ηλικία σας. Αυτές οι πληροφορίες παρέχονται από τον προγραμματιστή και ενδέχεται να ενημερωθούν με την πάροδο του χρόνου.
Δεν κοινοποιούνται δεδομένα σε τρίτα μέρη
Μάθετε περισσότερα σχετικά με τον τρόπο δήλωσης κοινοποίησης από τους προγραμματιστές
Δεν συλλέχθηκαν δεδομένα
Μάθετε περισσότερα σχετικά με τον τρόπο δήλωσης συλλογής από τους προγραμματιστές
Δεσμεύεται να ακολουθεί την πολιτική για Οικογένειες του Play

Τι νέο υπάρχει

Android 11