edge / Mbed 2 deprecated testReedSimple

Dependencies:   libmDot mbed-rtos mbed

Committer:
boddeke
Date:
Thu May 19 11:54:18 2016 +0000
Revision:
1:e504b1f72d05
Parent:
0:fc05a249a095
Child:
2:a2371a150758
working simple example

Who changed what in which revision?

UserRevisionLine numberNew contents of line
boddeke 0:fc05a249a095 1 #include "mbed.h"
boddeke 0:fc05a249a095 2 #include "rtos.h"
boddeke 0:fc05a249a095 3 #include "mDot.h"
boddeke 0:fc05a249a095 4 #include "MTSLog.h"
boddeke 0:fc05a249a095 5 #include "MTSText.h"
boddeke 0:fc05a249a095 6
boddeke 0:fc05a249a095 7 using namespace mts;
boddeke 0:fc05a249a095 8
boddeke 0:fc05a249a095 9
boddeke 0:fc05a249a095 10 #define REED_PORT PA_0
boddeke 0:fc05a249a095 11
boddeke 0:fc05a249a095 12 RawSerial pc(PA_2,NC);
boddeke 0:fc05a249a095 13
boddeke 0:fc05a249a095 14 volatile int reed_has_changed = 0;
boddeke 0:fc05a249a095 15
boddeke 0:fc05a249a095 16 void isr_reed_sensor_change(void) {
boddeke 0:fc05a249a095 17 reed_has_changed++;
boddeke 0:fc05a249a095 18 }
boddeke 0:fc05a249a095 19
boddeke 0:fc05a249a095 20
boddeke 0:fc05a249a095 21 main() {
boddeke 0:fc05a249a095 22
boddeke 0:fc05a249a095 23 pc.baud(115200);
boddeke 0:fc05a249a095 24
boddeke 0:fc05a249a095 25 pc.printf("Build: " __DATE__ ", " __TIME__"\r\n");
boddeke 0:fc05a249a095 26
boddeke 1:e504b1f72d05 27 mDot* dot = mDot::getInstance();
boddeke 0:fc05a249a095 28 dot->setLogLevel(MTSLog::TRACE_LEVEL);
boddeke 0:fc05a249a095 29
boddeke 0:fc05a249a095 30
boddeke 0:fc05a249a095 31 DigitalIn reed_sensor(REED_PORT);
boddeke 0:fc05a249a095 32 // reed_sensor.mode(PullUp);
boddeke 0:fc05a249a095 33
boddeke 0:fc05a249a095 34 InterruptIn reed_sensor_change(REED_PORT);
boddeke 0:fc05a249a095 35
boddeke 0:fc05a249a095 36 reed_sensor_change.fall(&isr_reed_sensor_change);
boddeke 0:fc05a249a095 37 reed_sensor_change.rise(&isr_reed_sensor_change);
boddeke 0:fc05a249a095 38 reed_sensor_change.mode(PullUp);
boddeke 0:fc05a249a095 39
boddeke 0:fc05a249a095 40 while(1) {
boddeke 0:fc05a249a095 41
boddeke 0:fc05a249a095 42 for(int i=0;i<10;i++) {
boddeke 0:fc05a249a095 43
boddeke 0:fc05a249a095 44 pc.printf("changes %d %d\r\n",reed_has_changed,reed_sensor.read());
boddeke 0:fc05a249a095 45 wait(1.0);
boddeke 0:fc05a249a095 46 }
boddeke 0:fc05a249a095 47
boddeke 0:fc05a249a095 48 dot->sleep((int)5, mDot::RTC_ALARM_OR_INTERRUPT, true);
boddeke 0:fc05a249a095 49 }
boddeke 0:fc05a249a095 50 }