test

Dependencies:   mbed ros_lib_kinetic nhk19mr2_can_info splitData SerialHalfDuplex_HM

Committer:
shimizuta
Date:
Wed Feb 13 06:43:05 2019 +0000
Revision:
16:0069a56f11a3
Parent:
15:3fd1d5698d10
can is ok

Who changed what in which revision?

UserRevisionLine numberNew contents of line
shimizuta 14:d7cb429946f4 1 #include "can.h"
shimizuta 14:d7cb429946f4 2 #include "mbed.h"
shimizuta 16:0069a56f11a3 3 #include "nhk19mr2_can_info.h"
shimizuta 15:3fd1d5698d10 4 #include "pinnames.h"
shimizuta 15:3fd1d5698d10 5 #include "splitData.h"
shimizuta 16:0069a56f11a3 6 CAN can(pin_can_rd, pin_can_td);
shimizuta 14:d7cb429946f4 7
shimizuta 14:d7cb429946f4 8 void MakeCanRad(OneLeg leg0, OneLeg leg1, char *candata);
shimizuta 16:0069a56f11a3 9 void SendRad(OneLeg leg0, OneLeg leg1)
shimizuta 14:d7cb429946f4 10 {
shimizuta 16:0069a56f11a3 11 char candata[kByteEachRad * 4] = {};
shimizuta 14:d7cb429946f4 12 MakeCanRad(leg0, leg1, candata);
shimizuta 14:d7cb429946f4 13 CANMessage msg(CANID_SERVO_RAD, candata, kByteCanSevoRad);
shimizuta 14:d7cb429946f4 14 can.write(msg);
shimizuta 14:d7cb429946f4 15 }
shimizuta 14:d7cb429946f4 16 void MakeCanRad(OneLeg leg0, OneLeg leg1, char *candata)
shimizuta 14:d7cb429946f4 17 {
shimizuta 16:0069a56f11a3 18 float rad[4] = {
shimizuta 16:0069a56f11a3 19 leg0.GetRad(0),
shimizuta 16:0069a56f11a3 20 leg0.GetRad(1),
shimizuta 16:0069a56f11a3 21 leg1.GetRad(0),
shimizuta 16:0069a56f11a3 22 leg1.GetRad(1),
shimizuta 16:0069a56f11a3 23 };
shimizuta 14:d7cb429946f4 24 int rad_multi[4];
shimizuta 16:0069a56f11a3 25 for (int i = 0; i < 4; i++)
shimizuta 16:0069a56f11a3 26 {
shimizuta 14:d7cb429946f4 27 rad_multi[i] = rad[i] * kRadToData;
shimizuta 16:0069a56f11a3 28 Intobyte(rad_multi[i], kByteEachRad, candata, i * kByteEachRad);
shimizuta 14:d7cb429946f4 29 }
shimizuta 14:d7cb429946f4 30 }