2月25日
Dependencies: mbed SpeedController___2_25 ros_lib_kinetic
can.cpp
00001 //#include "mbed.h" 00002 //#include "can.h" 00003 // 00004 //CAN can1(p30,p29); 00005 //Ticker can_ticker; //can用ticker 00006 // 00007 //DigitalOut cansend_led(LED1); //cansend -> on 00008 //DigitalOut canread_led(LED2); //canread -> on 00009 // 00010 //double mt_out1=0.0,mt_out2=0.0; 00011 // 00012 //int t1_r=0, T1=0; //動作番号(受け取った値、送信する値(int型)) 00013 // 00014 //void can_readsend() 00015 //{ 00016 // CANMessage msg; 00017 // 00018 // 00019 // if(can1.read(msg)) { 00020 // //printf(" CAN success\n\r"); 00021 // if(msg.id == 4) { 00022 // //mt_out1 = 1/(double)50*(short)((msg.data[0]<<8) | msg.data[1]); 00023 // //mt_out2 = 1/(double)50*(short)((msg.data[2]<<8) | msg.data[3]); 00024 // mt_out1 = 1/(double)200*(short)((msg.data[4]<<8) | msg.data[5]); 00025 // mt_out2 = 1/(double)200*(short)((msg.data[6]<<8) | msg.data[7]); 00026 // //debug_printf("usw_data1 = %f\n\r",usw_data1); 00027 // printf("mt_out3 = %f,mt_out4 = %f\n\r",mt_out1,mt_out2); 00028 // } 00029 // // if(msg.id == 7){ 00030 //// mt_out2 = 1/(double)50*(short)((msg.data[0]<<8) | msg.data[1]); 00031 //// printf("id = 5 mt_out2 = %f, data[0] = %d, data[1] = %d\n\r",mt_out2,msg.data[0],msg.data[1]); 00032 //// } 00033 // 00034 // } else { 00035 // canread_led = 0; 00036 // printf("fale\n\r"); 00037 // } 00038 // 00039 // 00040 // // can_ashileddata[1] = T1; //動作番号(id節約のため、can_ashileddata[]と一緒に送る) 00041 // 00042 //// can_ashileddata2[0] = m1 >> 8; 00043 //// can_ashileddata2[1] = m1 &255; 00044 //// 00045 //// can_ashileddata3[0] = m1 >> 8; 00046 //// can_ashileddata3[1] = m1 &255; 00047 //// 00048 //// can_ashileddata4[0] = m1 >> 8; 00049 //// can_ashileddata4[1] = m1 &255; 00050 //// 00051 //// can_ashileddata5[0] = m1 >> 8; 00052 //// can_ashileddata5[1] = m1 &255; 00053 //// 00054 //// if(can1.write(CANMessage(4,can_ashileddata2,2))) { //IDを4にして送信 00055 //// cansend_led = 1; 00056 //// } else { 00057 //// cansend_led = 0; 00058 //// } 00059 //// 00060 //// if(can1.write(CANMessage(4,can_ashileddata3,2))) { //IDを4にして送信 00061 //// cansend_led = 1; 00062 //// } else { 00063 //// cansend_led = 0; 00064 //// } 00065 //// 00066 //// if(can1.write(CANMessage(4,can_ashileddata4,2))) { //IDを4にして送信 00067 //// cansend_led = 1; 00068 //// } else { 00069 //// cansend_led = 0; 00070 //// } 00071 //// 00072 //// if(can1.write(CANMessage(4,can_ashileddata5,2))) { //IDを4にして送信 00073 //// cansend_led = 1; 00074 //// } else { 00075 //// cansend_led = 0; 00076 //// } 00077 // 00078 // /*if(t1_r > T1) { 00079 // T1 = t1_r; 00080 // }*/ 00081 //} 00082 // 00083 //void can_start() 00084 //{ 00085 // 00086 // while(1) { 00087 // 00088 // CANMessage msg; 00089 // 00090 //// debug_printf("wait\n\r"); 00091 // printf("wait\n\r"); 00092 // wait(0.1); 00093 // if(can1.read(msg)) { 00094 // break; 00095 // } 00096 // } 00097 //} 00098 // 00099 //void UserLoopSetting_can() 00100 //{ 00101 // can1.frequency(1000000); 00102 // can_ticker.attach(&can_readsend,0.01); //遅かったら早める 00103 //}
Generated on Sun Jul 17 2022 14:41:21 by
1.7.2