ver CAN

Revision:
14:b1b58b74dd4c
Parent:
13:ea34af94e90c
--- a/ikarashiMDC.cpp	Sat Nov 11 10:50:30 2017 +0000
+++ b/ikarashiMDC.cpp	Tue Nov 27 06:19:29 2018 +0000
@@ -1,6 +1,6 @@
+#include "mbed.h"
 #include "ikarashiMDC.h"
 
-
 ikarashiMDC::ikarashiMDC(DigitalOut* serialcontrol,uint8_t taddr,uint8_t tmotorNum,bool tmode,Serial *tserial)
 {
     serialControl = serialcontrol;
@@ -11,7 +11,14 @@
     mode = tmode;
     braking = true;
 }
-
+ikarashiMDC::ikarashiMDC(uint8_t taddr,uint8_t tmotorNum,bool tmode,CAN *can)
+{
+    can_driver = can;
+    addr = taddr;
+    motorNum = tmotorNum;
+    mode = tmode;
+    braking = true;
+}
 int ikarashiMDC::setSpeed(const double& speed)
 {
     uint8_t data[4],dataSpeed;
@@ -21,14 +28,17 @@
     dataSpeed = ((cropped_speed+1.0)/2.0)*253;
     //printf("%d\n",dataSpeed);
     //set sending data
-    data[0] = 255; //header
-    data[1] = (addr<<5) + motorNum + (mode<<4)+(braking<<3); //address
-    data[2] = dataSpeed;
-    data[3] = data[1]^data[2];
+    //msg.data[0] = 255; //header
+    msg.data[0] = (addr<<5) + motorNum + (mode<<4)+(braking<<3); //address
+    msg.data[1] = dataSpeed;
+    msg.data[2] = data[1]^data[2];
+    msg.id = 1;
+    msg.len=3;
+    can_driver->write(msg);
     //send data
-    for(int i=0; i<4; i++) {
-        serial->putc(data[i]);
-    }
+    //for(int i=0; i<4; i++) {
+        //serial->putc(data[i]);
+    //}
     return 0;
 }