一、依赖库
- import subprocess
- import serial
- from serial.tools import list_ports
- import logging
- import time
复制代码 二、代码
- import subprocess
- import serial
- from serial.tools import list_ports
- import logging
- import timedef openAdb(com): # com = [] # for i in list_ports.comports(): # if 'USB Serial' in i.description: # print(i.description) # com = i.name # print(com) # logging.debug(f'serial port:{com}') # break print("try to open adb") ser = serial.Serial(com, 115200, timeout=0.1) if ser.is_open: ser.write(b"\n") time.sleep(1) ser.write(b"root\n") ser.write(b"\n") time.sleep(1) ser.write(b"Visteon@JMC23651\n") time.sleep(1) ser.write(b"dtach -a /tmp/glconsole\n") ser.write(b"su\n") ser.write(b"Vist@jmc789\n") time.sleep(1) ser.write(b"start setmode_device\n") time.sleep(1) ser.close()def check_adb(com): count = 0 while True: try: subprocess.run(["adb", "kill-server"], check=True) subprocess.run(["adb", "start-server"], check=True) output = subprocess.check_output("adb devices", shell=True).decode('utf-8') # print("Output of adb devices:", output.strip()) devices = [] lines = output.strip().split('\n') for line in lines[1:]: if '\tdevice' in line: device_info = line.split('\t')[0] devices.append(device_info) print(devices) if devices is not None and len(devices) > 0: print("Device found. Performing operations...") break else: print("Device not found. Switching modes and retrying...") openAdb(com) count += 1 if count >= 5: print("Please check if the environment is OK") break except subprocess.CalledProcessError as e: print("An error occurred while executing adb command:", e) breakif __name__ == '__main__': com = 'COM24' # openAdb(com) check_adb(com)
复制代码 三、使用场景
必要外接继电器,通过串口下令打开车机调试模式
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |