MSCAN Updated
Fork of MSCAN by
Comms.cpp@6:c857749f9c0c, 2013-03-06 (annotated)
- Committer:
- veskokaradzhov
- Date:
- Wed Mar 06 17:33:14 2013 +0000
- Revision:
- 6:c857749f9c0c
- Parent:
- 1:a723bdf44e10
c
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
intrinseca | 1:a723bdf44e10 | 1 | #include "mbed.h" |
intrinseca | 1:a723bdf44e10 | 2 | #include "State.h" |
intrinseca | 1:a723bdf44e10 | 3 | #include "Comms.h" |
intrinseca | 1:a723bdf44e10 | 4 | |
intrinseca | 1:a723bdf44e10 | 5 | //Process incoming data from Comms interfaces |
intrinseca | 1:a723bdf44e10 | 6 | |
intrinseca | 1:a723bdf44e10 | 7 | //Initialise members |
intrinseca | 1:a723bdf44e10 | 8 | Comms::Comms(State* _values) |
intrinseca | 1:a723bdf44e10 | 9 | { |
intrinseca | 1:a723bdf44e10 | 10 | values = _values; |
intrinseca | 1:a723bdf44e10 | 11 | } |
intrinseca | 1:a723bdf44e10 | 12 | |
intrinseca | 1:a723bdf44e10 | 13 | //Process an incoming data packet |
intrinseca | 1:a723bdf44e10 | 14 | void Comms::process_packet(unsigned char id, int length, unsigned char data[]) |
intrinseca | 1:a723bdf44e10 | 15 | { |
intrinseca | 1:a723bdf44e10 | 16 | switch(id) |
intrinseca | 1:a723bdf44e10 | 17 | { |
intrinseca | 1:a723bdf44e10 | 18 | case 100: |
intrinseca | 1:a723bdf44e10 | 19 | values->rpm = data[0] + (data[1] << 8); |
intrinseca | 1:a723bdf44e10 | 20 | values->throttle_pos = data[2]; |
intrinseca | 1:a723bdf44e10 | 21 | values->manifold_pres = data[3]; |
intrinseca | 1:a723bdf44e10 | 22 | values->air_temp = data[4]; |
intrinseca | 1:a723bdf44e10 | 23 | values->coolant_temp = data[5]; |
intrinseca | 1:a723bdf44e10 | 24 | values->lambda = data[6]; |
intrinseca | 1:a723bdf44e10 | 25 | break; |
intrinseca | 1:a723bdf44e10 | 26 | case 200: |
intrinseca | 1:a723bdf44e10 | 27 | values->speed = data[0]; |
intrinseca | 1:a723bdf44e10 | 28 | values->accel_x = data[1]; |
intrinseca | 1:a723bdf44e10 | 29 | values->accel_y = data[2]; |
intrinseca | 1:a723bdf44e10 | 30 | values->gear = data[3]; |
intrinseca | 1:a723bdf44e10 | 31 | values->oil_temp = data[4]; |
intrinseca | 1:a723bdf44e10 | 32 | values->voltage = data[5]; |
intrinseca | 1:a723bdf44e10 | 33 | values->warnings = data[6]; |
intrinseca | 1:a723bdf44e10 | 34 | break; |
intrinseca | 1:a723bdf44e10 | 35 | } |
intrinseca | 1:a723bdf44e10 | 36 | } |