From 698b17133dd304fe293f495aa3b96c4274ccdd50 Mon Sep 17 00:00:00 2001 From: tao_z <tzj0429@163.com> Date: Wed, 22 Jun 2022 23:03:00 +0800 Subject: [PATCH] 新增换挡逻辑功能 --- test.py | 46 +++++++++++++++++++++++++++++++++------------- 1 files changed, 33 insertions(+), 13 deletions(-) diff --git a/test.py b/test.py index d5a5927..584fe6b 100644 --- a/test.py +++ b/test.py @@ -1,9 +1,8 @@ - - # # def send_msg(): # # meg = Message() # # msg = VCI_CAN_OBJ() from ast import arg +import encodings import threading from tkinter.tix import Tree from USBCAN import * @@ -12,6 +11,9 @@ from mainwindows import * from multiprocessing import Process, Queue, Value, Pipe import datetime +from ShifterDefine import * +import cantools +from pprint import pprint # def rece_msg(bus): # msg = bus.Receive(0.1) # if msg[0] is not None: @@ -58,7 +60,6 @@ # print(conn.recv()) # conn.close() - # if __name__ == "__main__": # parent_conn, child_conn = Pipe() # 产生两个返回对象,一个是管道这一头,一个是另一头 # p = Process(target=f, args=(child_conn,)) @@ -78,12 +79,10 @@ # ) # bus.send(msg) - # # bus = open_device() # # while True: # # send_msg(bus) # # # rece_msg(bus) - # device_type = DEVICETYPE['USBCAN-II'] # device_index = 0 @@ -102,7 +101,6 @@ # data=bytearray([0x02, 0x3e, 0, 0, 0, 0, 0, 0]) # ) - # q_rx = Queue() # q_tx = Queue() # connect = Value('i', 1) @@ -112,7 +110,6 @@ # # def start(): - # # def rece_msg(): # # # num = bus.GetReceiveNum(device_type, device_index, can_channel) # # print(num) @@ -120,7 +117,6 @@ # # # while not q_rx.empty(): # # print(q_rx.get()) # # # time.sleep(0.1) - # # bus.CloseDevice() # # start() @@ -148,7 +144,6 @@ # data.append(' '.join(['{:0<2x}'.format(a) for a in list(item.data)])) # return data - # def rece_msg(): # # msg, num = bus.Receive(len=10) # num = q_rx.qsize() @@ -157,12 +152,10 @@ # # print(msg[0].arbitration_id) # print(formatedata(i, q_rx.get(), True)) - # def tx_task(bus: USBCAN): # while True: # bus.send(msg=msg) # time.sleep(0.1) - # def rx_task(bus: USBCAN): # while True: @@ -173,7 +166,6 @@ # if msg[i].arbitration_id == 0x77a: # # print(formatedata(i, msg[i], True)) # print(msg[i].data) - # if __name__ == '__main__': # bus.InitAndStart() @@ -202,7 +194,6 @@ # item.setFont(QFont("微软雅黑", 12, QFont.Black)) # 设置字体 # table.setItem(0, column, item) - # if __name__ == '__main__': # app = QApplication(sys.argv) @@ -225,3 +216,32 @@ # # w.show() # sys.exit(app.exec_()) + +dbc = cantools.database.load_file("DBC/SX7H.dbc") +# print(dbc.messages) +sa_message = dbc.get_message_by_name('SA1') +# print(sa_message) +# pprint(sa_message.signals) +frame = [0x00, 0x0A, 0x00, 0xF0, 0, 0, 0, 0] +input_signal = dbc.decode_message(0x420, frame) +part_str = str(input_signal['SA1_Status_ParkButtonReq']) +pprint(part_str) +if input_signal['SA1_Status_ParkButtonReq'] == 'No request': + print('yes') + +data = sa_message.encode({ + 'SA1_Status_PRNDL': 0, + 'SA1_Status_GearShftPosReq': 0, #'Shifter position Zero', + 'SA1_Status_ParkButtonReq': 2, + "SA1_ShifterManualSignal": 0, + "SA1_ShifterModeSignal": 1, + "SA1_Status_ShftSensSng_Fault": 0, + "SA1_IND_ShifterMisUsd": 0, + "SA1_Live_counter": 1, + "SA1_Status_UnlockButtonReq": 1, + "SA1_Status_EcoShifterModeReq": 0, + "SA1_Status_RqGearPosInV": 0xf, + "SA1_Status_ShiftPosValidFlag": 0, +}) +# print(data) +# print(SA1_Status_ParkButtonReq_dic['No request']) -- Gitblit v1.8.0