This is the encoder code

Dependencies:   mbed

Committer:
vceyssens3
Date:
Sun Apr 30 23:48:27 2017 +0000
Revision:
0:ddf6b258e38a
This is encoder code;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
vceyssens3 0:ddf6b258e38a 1 #include "mbed.h"
vceyssens3 0:ddf6b258e38a 2
vceyssens3 0:ddf6b258e38a 3 DigitalOut myled(LED1);
vceyssens3 0:ddf6b258e38a 4 InterruptIn encoder(p15);
vceyssens3 0:ddf6b258e38a 5 Serial pc(USBTX, USBRX);
vceyssens3 0:ddf6b258e38a 6 int ticker;
vceyssens3 0:ddf6b258e38a 7
vceyssens3 0:ddf6b258e38a 8 void ticker_func()
vceyssens3 0:ddf6b258e38a 9 {
vceyssens3 0:ddf6b258e38a 10 ticker++;
vceyssens3 0:ddf6b258e38a 11
vceyssens3 0:ddf6b258e38a 12 }
vceyssens3 0:ddf6b258e38a 13 int main() {
vceyssens3 0:ddf6b258e38a 14
vceyssens3 0:ddf6b258e38a 15 encoder.mode(PullUp);
vceyssens3 0:ddf6b258e38a 16 encoder.fall(&ticker_func);
vceyssens3 0:ddf6b258e38a 17 encoder.rise(&ticker_func);
vceyssens3 0:ddf6b258e38a 18 double distance = 0;
vceyssens3 0:ddf6b258e38a 19
vceyssens3 0:ddf6b258e38a 20 while(1) {
vceyssens3 0:ddf6b258e38a 21 myled=encoder;
vceyssens3 0:ddf6b258e38a 22 distance = double(ticker)*2.5/12;
vceyssens3 0:ddf6b258e38a 23 pc.printf("\r\n distance covered '%i'", ticker);
vceyssens3 0:ddf6b258e38a 24 wait(1);
vceyssens3 0:ddf6b258e38a 25
vceyssens3 0:ddf6b258e38a 26 }
vceyssens3 0:ddf6b258e38a 27 }