tao_z
2022-05-29 ada7b40da88974c6f4596c7c9d1317eb19095a0e
USBCAN.py
@@ -6,7 +6,7 @@
import logging
from can import BusABC, Message
import time
from multiprocessing import Queue, Value
from multiprocessing import Queue, Value, Pipe
USBCAN_DEVICE_TYPE = c_uint
@@ -412,7 +412,7 @@
            needClose {Value} -- disconnect when needed
            msgQueue {Queue} -- received data
        '''
        loopCnt = 0
        while True:
        while connectRet.value == 1:
            # print(connectRet.value, needClose.value, start.value)
            if needClose.value == 1:
@@ -421,17 +421,14 @@
                    needClose.value = 0
                    connectRet.value = 0
                return
            msgToSendCnt = sendQueue.qsize()
            if msgToSendCnt > 0:
                msg = Message()
                for i in range(msgToSendCnt):
                    msg = sendQueue.get()
                    self.send(msg, 1)
                    time.sleep(0.001)
            loopCnt += 1
            if loopCnt >= 15:
                loopCnt = 0
                # restNum = self.GetReceiveNum() if self.GetReceiveNum() <= 10 else 10
                # msgToSendCnt = sendQueue.qsize()
                # if msgToSendCnt > 0:
                #     msg = Message()
                #     for i in range(msgToSendCnt):
                #         msg = sendQueue.get()
                #         self.send(msg, 1)
                #         time.sleep(0.001)
                # loopCnt += 1
                revRet, num = self.Receive(len=10)
                if num == 0:
                    pass
@@ -440,3 +437,4 @@
                        msgQueue.put(revRet[i])
                        self.logger.info(
                            "received can message.it't id is:{}".format(str(revRet[i].arbitration_id)))
                time.sleep(0.05)