|
@@ -41,8 +41,6 @@ CANSend_Producer* can_send_producer;
|
|
CANSend_Consumer* can_send_consumer;
|
|
CANSend_Consumer* can_send_consumer;
|
|
CANRecv_Consumer* can_recv_consumer;
|
|
CANRecv_Consumer* can_recv_consumer;
|
|
|
|
|
|
-uint64_t gTime_ms = QDateTime::currentMSecsSinceEpoch();
|
|
|
|
-
|
|
|
|
void ListenCANMsg(const char * strdata,const unsigned int nSize,const unsigned int index,const QDateTime * dt,const char * strmemname)
|
|
void ListenCANMsg(const char * strdata,const unsigned int nSize,const unsigned int index,const QDateTime * dt,const char * strmemname)
|
|
{
|
|
{
|
|
if(nSize<1)
|
|
if(nSize<1)
|
|
@@ -58,12 +56,14 @@ void ListenCANMsg(const char * strdata,const unsigned int nSize,const unsigned i
|
|
std::cout<<"radar ListenCANMsg parse fail."<<std::endl;
|
|
std::cout<<"radar ListenCANMsg parse fail."<<std::endl;
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
-
|
|
|
|
CANRecv.Produce_Elements_From_CANMsg(xmsg);
|
|
CANRecv.Produce_Elements_From_CANMsg(xmsg);
|
|
- if(xmsg.rawmsg(0).len() == 2)
|
|
|
|
- {
|
|
|
|
- std::cout<<"recieve a msg:"<<QDateTime::currentMSecsSinceEpoch()<<std::endl;
|
|
|
|
- }
|
|
|
|
|
|
+// for(int i=0;i<xmsg.rawmsg_size();i++)
|
|
|
|
+// {
|
|
|
|
+// if(xmsg.rawmsg(i).id() == setupConfig.sonarCAN_ID && xmsg.rawmsg(i).len() == 2)
|
|
|
|
+// {
|
|
|
|
+// std::cout<<"recieve a sonar msg:"<<QDateTime::currentMSecsSinceEpoch()<<std::endl;
|
|
|
|
+// }
|
|
|
|
+// }
|
|
}
|
|
}
|
|
|
|
|
|
void ExitFunc()
|
|
void ExitFunc()
|
|
@@ -116,17 +116,20 @@ int main(int argc, char *argv[])
|
|
shmCANRecv.mnBufferCount = 3;
|
|
shmCANRecv.mnBufferCount = 3;
|
|
shmCANRecv.mpa = iv::modulecomm::RegisterRecv(shmCANRecv.mstrmsgname,ListenCANMsg);
|
|
shmCANRecv.mpa = iv::modulecomm::RegisterRecv(shmCANRecv.mstrmsgname,ListenCANMsg);
|
|
|
|
|
|
- std::this_thread::sleep_for(std::chrono::milliseconds(1000));
|
|
|
|
|
|
+ std::this_thread::sleep_for(std::chrono::milliseconds(250));
|
|
|
|
|
|
can_send_consumer = new CANSend_Consumer(&CANSend);
|
|
can_send_consumer = new CANSend_Consumer(&CANSend);
|
|
can_send_consumer->start();
|
|
can_send_consumer->start();
|
|
- can_send_producer = new CANSend_Producer(&CANSend);
|
|
|
|
|
|
+ std::this_thread::sleep_for(std::chrono::milliseconds(100));
|
|
can_recv_consumer = new CANRecv_Consumer(&CANRecv);
|
|
can_recv_consumer = new CANRecv_Consumer(&CANRecv);
|
|
|
|
+ can_send_producer = new CANSend_Producer(&CANSend);
|
|
qRegisterMetaType<uint8_t>("uint8_t");
|
|
qRegisterMetaType<uint8_t>("uint8_t");
|
|
QObject::connect(can_send_producer,&CANSend_Producer::Enable_DecodeResult,can_recv_consumer,&CANRecv_Consumer::Enable_DecodeResult_Slot);
|
|
QObject::connect(can_send_producer,&CANSend_Producer::Enable_DecodeResult,can_recv_consumer,&CANRecv_Consumer::Enable_DecodeResult_Slot);
|
|
QObject::connect(can_recv_consumer,&CANRecv_Consumer::Enable_Ask,can_send_producer,&CANSend_Producer::Enable_Ask_Slot);
|
|
QObject::connect(can_recv_consumer,&CANRecv_Consumer::Enable_Ask,can_send_producer,&CANSend_Producer::Enable_Ask_Slot);
|
|
- can_send_producer->start();
|
|
|
|
can_recv_consumer->start();
|
|
can_recv_consumer->start();
|
|
|
|
+ std::this_thread::sleep_for(std::chrono::milliseconds(100));
|
|
|
|
+ can_send_producer->start();
|
|
|
|
+
|
|
|
|
|
|
int rtn = a.exec();
|
|
int rtn = a.exec();
|
|
|
|
|