Tufts Hybrid Racing Sensor Node

Committer:
wsalis01
Date:
Sun Apr 15 00:12:28 2012 +0000
Revision:
1:fbb17be9a65d
Parent:
0:1f9ada316815
Initial Commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wsalis01 0:1f9ada316815 1 /*
wsalis01 0:1f9ada316815 2 * File: SensorNode/SensorNode.h
wsalis01 0:1f9ada316815 3 * Author: William Jessup Salisbury
wsalis01 0:1f9ada316815 4 * Company: Tufts Hybrid Racing Team
wsalis01 0:1f9ada316815 5 * Copyright: CC BY-NC-SA 3.0
wsalis01 0:1f9ada316815 6 * Date: 1/12/2012
wsalis01 0:1f9ada316815 7 */
wsalis01 0:1f9ada316815 8
wsalis01 0:1f9ada316815 9 #ifndef SENSOR_NODE_H
wsalis01 0:1f9ada316815 10 #define SENSOR_NODE_H
wsalis01 0:1f9ada316815 11
wsalis01 0:1f9ada316815 12 #include "mbed.h"
wsalis01 0:1f9ada316815 13
wsalis01 1:fbb17be9a65d 14 const PinName CAN_RX = p30;
wsalis01 1:fbb17be9a65d 15 const PinName CAN_TX = p29;
wsalis01 0:1f9ada316815 16 const PinName LW_PIN = p11;
wsalis01 0:1f9ada316815 17 const PinName RW_PIN = p12;
wsalis01 0:1f9ada316815 18
wsalis01 0:1f9ada316815 19 const int ticksPerRevolution = 32;
wsalis01 0:1f9ada316815 20 const int tickerTimeout = 1;
wsalis01 0:1f9ada316815 21
wsalis01 0:1f9ada316815 22 class SensorNode {
wsalis01 0:1f9ada316815 23 public:
wsalis01 0:1f9ada316815 24 SensorNode();
wsalis01 0:1f9ada316815 25 ~SensorNode();
wsalis01 0:1f9ada316815 26 private:
wsalis01 0:1f9ada316815 27 inline void Reset();
wsalis01 0:1f9ada316815 28 void leftTick();
wsalis01 0:1f9ada316815 29 void rightTick();
wsalis01 0:1f9ada316815 30 void canSend();
wsalis01 0:1f9ada316815 31 void canReceive();
wsalis01 0:1f9ada316815 32
wsalis01 0:1f9ada316815 33 InterruptIn _leftWheel, _rightWheel;
wsalis01 0:1f9ada316815 34 CAN _can;
wsalis01 0:1f9ada316815 35 Serial _console;
wsalis01 0:1f9ada316815 36 Ticker _statusTicker;
wsalis01 0:1f9ada316815 37 volatile int _leftTicks, _rightTicks;
wsalis01 0:1f9ada316815 38 volatile int _leftRevolutions, _rightRevolutions;
wsalis01 0:1f9ada316815 39 volatile char _syncID;
wsalis01 0:1f9ada316815 40 };
wsalis01 0:1f9ada316815 41
wsalis01 0:1f9ada316815 42 #endif