background image

Σχεδιασμός και υλοποίηση συστήματος IoT ασύρματου ελέγχου και μέτρησης ενέργειας 

 

52 

 

 

Τέλος,  πρέπει  να  γίνει  αναφορά  στον  κώδικα  που  επιτρέπει  στο  χρήστη  να 

αλληλοεπιδρά με την συσκευή μέσω των κουμπιών της. Αρχικά, κατά την εκκίνηση της 
συσκευής,  οι  επαφές  γενικής  χρήσης  (GPIO)  12  (SET_MODE_WIFI_PIN),  14 

(SET_MODE_BLE_PIN)  και  18  (RESET_PIN),  ορίζονται  ως  είσοδοι  με  τον  κώδικα  στην 
Εικόνα  29  μέσα  στην  μέθοδο  setup().  Η  μέθοδος  setup  εκτελείται  μια  φορά,  κατά  την 
εκκίνηση της συσκευής. 

 

Εικόνα 29 : Κώδικας αρχικοποίησης εισόδων κουμπιών 

 

Στην  συνέχεια,  δημιουργήθηκε  η  μέθοδος  button_press_listener(),  η  οποία 

καλείται κατά την εκτέλεση του κώδικα, ώστε να ελεγχθεί αν ο χρήστης πατάει κάποιο 
κουμπί. Ο κώδικας της μεθόδου αυτής, φαίνεται στην Εικόνα 30. Αν πατηθεί το κουμπί 

για  την  ενεργοποίηση  του  Bluetooth,  τότε  το  WiFi  θα  πρέπει  να  απενεργοποιηθεί  και 
αντίστροφα. Αν πατηθεί το κουμπί της επαναφοράς, η συσκευή θα κάνει επανεκκίνηση. 
Ελέγχεται  επίσης,  αν  το  κουμπί  έμεινε  πατημένο  για  κάποιο  διάστημα,  ώστε  να 

αποφευχθούν λάθη. 
 

 

Εικόνα 30 : Κώδικας για τον έλεγχο του πατήματος των κουμπιών της συσκευής