Emergency Button Test Code

Dependencies:   mbed mbed-rtos

Committer:
t1jain
Date:
Wed Jun 26 16:13:45 2019 +0000
Revision:
1:3a8cde678b38
Parent:
0:e23e7393f8cc
Updated to OS 5

Who changed what in which revision?

UserRevisionLine numberNew contents of line
t1jain 0:e23e7393f8cc 1 #include "mbed.h"
t1jain 0:e23e7393f8cc 2 #include "rtos.h"
t1jain 0:e23e7393f8cc 3
t1jain 0:e23e7393f8cc 4 DigitalIn button(D4, PullDown);
t1jain 0:e23e7393f8cc 5 DigitalOut signal(D5);
t1jain 0:e23e7393f8cc 6 Serial pc(USBTX, USBRX, 57600);
t1jain 0:e23e7393f8cc 7
t1jain 0:e23e7393f8cc 8 int i = 0;
t1jain 0:e23e7393f8cc 9 int val;
t1jain 0:e23e7393f8cc 10 Thread thread;
t1jain 0:e23e7393f8cc 11
t1jain 0:e23e7393f8cc 12
t1jain 0:e23e7393f8cc 13 void Printing () {
t1jain 0:e23e7393f8cc 14 i = 0;
t1jain 0:e23e7393f8cc 15 pc.printf("RESET\n");
t1jain 0:e23e7393f8cc 16 while(1) {
t1jain 0:e23e7393f8cc 17 pc.printf("I'm running! Iteration: %d \n", i);
t1jain 0:e23e7393f8cc 18 i++;
t1jain 0:e23e7393f8cc 19 }
t1jain 0:e23e7393f8cc 20 }
t1jain 0:e23e7393f8cc 21
t1jain 0:e23e7393f8cc 22
t1jain 0:e23e7393f8cc 23 int main() {
t1jain 0:e23e7393f8cc 24
t1jain 0:e23e7393f8cc 25 bool killed = 1;
t1jain 0:e23e7393f8cc 26 thread.start(Printing);
t1jain 0:e23e7393f8cc 27 //Main Code
t1jain 0:e23e7393f8cc 28
t1jain 0:e23e7393f8cc 29 while(1) {
t1jain 0:e23e7393f8cc 30 signal = 0;
t1jain 0:e23e7393f8cc 31 while(!button) {
t1jain 0:e23e7393f8cc 32
t1jain 0:e23e7393f8cc 33 //Send something to stop wheelchair
t1jain 0:e23e7393f8cc 34 signal = 1;
t1jain 0:e23e7393f8cc 35 pc.printf("Hello there!\n");
t1jain 0:e23e7393f8cc 36 pc.printf("I'm dead\n\n\n");
t1jain 0:e23e7393f8cc 37 //Reset Board
t1jain 0:e23e7393f8cc 38 NVIC_SystemReset();
t1jain 0:e23e7393f8cc 39
t1jain 0:e23e7393f8cc 40 }
t1jain 0:e23e7393f8cc 41
t1jain 0:e23e7393f8cc 42 }
t1jain 0:e23e7393f8cc 43 }