当前位置: 首页 > news >正文

python调用图莫斯+can通讯

图莫斯产品手册地址

一、产品手册 - 重庆图莫斯产品帮助文档

常用图莫斯库函数

链接:https://pan.baidu.com/s/1oe4xPvgJ_KWAQ_epoZi5bw?pwd=8888 提取码:8888 复制这段内容后打开百度网盘手机App,操作更方便哦

设备连接代码:

1.连接图莫斯,can通讯初始化

import ctypes import datetime import time import os import sys from intelhex import IntelHex import threading # <--- 新增 import queue # <--- 新增 try: import generateKeyEx from func import hexStr2IntList from usbapi import * except ImportError as e: print(f"导入失败: {e}") sys.exit(1) dev_handle = (ctypes.c_uint64 * 20)() CAN_INDEX = 0 g_CANAddr = CAN_UDS_ADDR() g_CANAddr.ReqID = 0x78D g_CANAddr.ResID = 0x7CD g_CANAddr.MaxDLC = 8 g_DBC_Handle = ctypes.c_longlong(0) def load_dbc(dev_handle, dbc_path): global g_DBC_Handle if not os.path.exists(dbc_path): print(f"DBC文件不存在: {dbc_path}") return False handle_val = DBC_ParserFile(dev_handle, dbc_path.encode()) if handle_val <= 0: print("DBC解析失败") return False g_DBC_Handle = ctypes.c_longlong(handle_val) msg_cnt = DBC_GetMsgQuantity(g_DBC_Handle) return True def can_init_and_start(DevHandle, baudrate_kbps): if baudrate_kbps not in BAUDRATE_TABLE: return False sjw, bs1, bs2, brp = BAUDRATE_TABLE[baudrate_kbps] cfg = CAN_INIT_CONFIG() cfg.CAN_BRP = brp cfg.CAN_SJW = sjw cfg.CAN_BS1 = bs1 cfg.CAN_BS2 = bs2 cfg.CAN_Mode = 0x80 cfg.CAN_ABOM = 0 cfg.CAN_NART = 1 cfg.CAN_RFLM = 0 cfg.CAN_TXFP = 1 ret = CAN_Init(DevHandle, CAN_INDEX, ctypes.byref(cfg)) if ret != 0: return False filt = CAN_FILTER_CONFIG() filt.Enable = 1 filt.FilterIndex = 0 filt.FilterMode = 0 filt.ExtFrame = 1 filt.MASK_IDE = 0 filt.MASK_RTR = 0 filt.MASK_Std_Ext = 0 CAN_Filter_Init(DevHandle, CAN_INDEX, ctypes.byref(filt)) CAN_StartGetMsg(DevHandle, CAN_INDEX) return True if __name__ == '__main__': driver_file = ".\\9S12ZVM_LIN_FlashDriver.s19" ScanDevice(dev_handle) if OpenDevice(dev_handle) != 1: exit() can_init_and_start(dev_handle[0], CAN_BAUDRATE) load_dbc(dev_handle[0], parse_file)


————————————————
版权声明:本文为CSDN博主「学 无止境」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_64205091/article/details/161659809

http://www.zskr.cn/news/1465902.html

相关文章:

  • PCF8563实时时钟芯片裸机驱动源码(含I2C底层适配)
  • 云加速与CDN加速区别在哪?网络加速底层逻辑讲解
  • 被DeepSeek和豆包“忽略”的品牌,正在错失什么?2026年武汉企业GEO布局指南与优质服务商推荐 - 资讯速览
  • 网易云音乐NCM文件解密:ncmdump让你真正拥有付费音乐
  • 桂林临桂区金价高位回落 卖金时机精细把握 - 上门黄金回收
  • 无人机机载电脑Unbuntu20.04配置ROS环境及备份
  • 逆向思维:当夜神模拟器抓包失败时,我是如何用雷电模拟器+Proxifier+Fiddler搞定顽固APP的
  • 2026杭州室内游玩乐园新玩法|告别日晒雨淋,未来城市乐园成团队首选 - 资讯速览
  • 从游戏脚本到测试工具:探索pyautogui在Python自动化中的N种玩法
  • 金华建盾工贸:绍兴比较好的铸铝门安装怎么联系 - LYL仔仔
  • 模板驱动型文档自动化:结构化填充与一键交付实践
  • 跳出“背锅、修电脑”偏见:新时代运维的价值重构与职业破局之路
  • 百度网盘直链解析:3分钟告别龟速下载,重获文件传输自由
  • 统信UOS服务器上,达梦DM8数据库安装避坑全记录(附大小写敏感设置)
  • 2026青岛门窗选购权威白皮书:本地源头工厂深度实测与五大技术派品牌年度榜单 - GrowthUME
  • C#上位机开发实战:封装一个可复用的欧姆龙NX PLC通讯库(含读写位、字、字符串完整代码)
  • 为什么越精准的算法,越容易产生刻板偏见?
  • 多任务并行时项目经理怎么分配精力? - 众智商学院职业教育
  • 别再死记硬背了!用‘名字’和‘标识符’的日常例子,5分钟搞懂编译原理里的语法与语义
  • Qt C++实现的可视化停车场收费系统,含车位监控、自动计费与结算功能,课程设计开箱即用
  • STC90C516RD+驱动4路DS18B20温度采集,带数码管实时显示与串口ASCII数据上传
  • 长三角电商一件代发平台实测评测:哪家更可靠 - 奔跑123
  • 碧蓝航线自动化助手Alas:让游戏回归乐趣的智能管家
  • 如何在谷歌Chrome浏览器中配置代理IP?2026Chrome代理管理插件教程
  • 从科幻到现实:聊聊‘子空间’在阵列信号处理里的那些事儿(MUSIC/ESPRIT算法通俗解读)
  • SpringBoot拦截器防重复提交实战
  • 告别手动配置:用Netplan和systemd-resolved在Debian10上优雅管理网络与DNS
  • 2026舟山市权威认证贵金属回收 TOP5+黄金回收白银回收铂金回收门店地址电话推荐
  • 2026杭州室内游玩乐园畅玩攻略|告别酷暑阴雨一站式解锁未来城市乐园 - 资讯速览
  • 二〇二六年石家庄六家正规黄金回收机构实测:权威背书下的口碑门店深度测评 - 薛定谔的梨花猫