tp初始化调整
authorp15692025051 <846603105@qq.com>
Wed, 17 Jan 2024 03:56:57 +0000 (11:56 +0800)
committerp15692025051 <846603105@qq.com>
Wed, 17 Jan 2024 03:56:57 +0000 (11:56 +0800)
2.sdk/Helios_SDK/services/microPython/ports/quectel/core/initTP.py [moved from 2.sdk/project/A616/sdk/services/microPython/ports/quectel/core/initTP.py with 90% similarity]
2.sdk/project/C06S/sdk/services/microPython/ports/quectel/core/initTP.py [deleted file]
2.sdk/project/K01/sdk/services/microPython/ports/quectel/core/initTP.py [deleted file]
2.sdk/project/K5/sdk/services/microPython/ports/quectel/core/initTP.py [deleted file]

@@ -81,7 +81,7 @@ def cst816d_update(startAddr, length, data):
         cmd[0] = 0xEE
         ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x04]), 2, bytearray(cmd), 1)
 
-        utime.sleep_ms(100)
+        utime.sleep_ms(250)
 
         retrycnt = 51
         for i in range (retrycnt):
@@ -92,7 +92,19 @@ def cst816d_update(startAddr, length, data):
             if r_data[0] == 0x55:
                 print("r_data[0] = 0x55,break")
                 break
-        
+            i2c_obj = I2C(I2C.I2C2, I2C.STANDARD_MODE)    
+            print("cst816d_update try:count:{}!!!".format(i))
+            # ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x14]), 2, bytearray(cmd), 2)
+            # utime.sleep_ms(5)
+
+            # ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x18]), 2, bytearray(data), PER_LEN)
+
+            # utime.sleep_ms(5)
+
+            # cmd[0] = 0xEE
+            # ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x04]), 2, bytearray(cmd), 1)
+
+            utime.sleep_ms(5)    
         startAddr = startAddr + PER_LEN
         del data[0:PER_LEN]
         sum_len = sum_len + PER_LEN 
diff --git a/2.sdk/project/C06S/sdk/services/microPython/ports/quectel/core/initTP.py b/2.sdk/project/C06S/sdk/services/microPython/ports/quectel/core/initTP.py
deleted file mode 100644 (file)
index 534ca06..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-import log
-from machine import I2C
-import utime
-from machine import Pin
-import uos
-
-# from ext import capacitive_hynitron_cst816d_update_new
-import capacitive_hynitron_cst816d_update
-
-TP_HYN_I2C_UPDATE_WRITE_ADDR = (0x6A<<1)  
-TP_HYN_I2C_UPDATE_READ_ADDR =  ((0x6A<<1)|1)
-PER_LEN = 512
-x = 0
-y = 0
-#---------------------------------------------------------------------
-# cst816d_read_checksum
-#---------------------------------------------------------------------
-def cst816d_read_checksum():
-
-    if -1 == cst816d_enter_bootmode():
-        return -1
-
-    i2c_obj = I2C(I2C.I2C2, I2C.FAST_MODE)
-    cmd = [0]
-
-    if -1 == i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x03]), 2, bytearray(cmd), 1):
-        return -1
-    utime.sleep_ms(500)#这里延时太短会读错checksum
-
-    r_data = bytearray(2)
-    if -1 == i2c_obj.read(TP_HYN_I2C_UPDATE_READ_ADDR>>1, bytearray([0xa0,0x08]), 2, r_data, 2, 0):
-        return -1
-    check_sum = (r_data[1] << 8) | r_data[0]
-    print("check_sum的值为:",check_sum)
-    return check_sum    
-#---------------------------------------------------------------------
-# GPIO_ResetTP
-#---------------------------------------------------------------------
-def GPIO_ResetTP():
-
-    print("GPIO_ResetTP")
-    
-    gpio_power = Pin(Pin.GPIO18, Pin.OUT, Pin.PULL_PU, 0)
-    gpio_power.write(1)
-
-    gpio_reset = Pin(Pin.GPIO32, Pin.OUT, Pin.PULL_PU, 0)
-    gpio_reset.write(0)
-    utime.sleep_ms(10)
-    gpio_reset.write(1)
-    utime.sleep_ms(10)
-
-#---------------------------------------------------------------------
-# cst816d_update
-#---------------------------------------------------------------------
-def cst816d_update(startAddr, length, data):
-    print("cst816d_update")
-    if -1 == cst816d_enter_bootmode():
-        return -1
-
-    sum_len = 0
-    cmd = [0,0]
-    global x
-    while 1:
-        x += 1
-        if sum_len >= length:
-            print("sum_len >= length,退出循环")
-            return
-        a = startAddr&0xFF
-        cmd[0]=a
-        b = startAddr>>8
-        cmd[1]=b
-        i2c_obj = I2C(I2C.I2C2, I2C.FAST_MODE)
-
-        ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x14]), 2, bytearray(cmd), 2)
-        utime.sleep_ms(100)
-
-        ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x18]), 2, bytearray(data), PER_LEN)
-
-        utime.sleep_ms(100)
-
-        cmd[0] = 0xEE
-        ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x04]), 2, bytearray(cmd), 1)
-
-        utime.sleep_ms(100)
-
-        retrycnt = 51
-        for i in range (retrycnt):
-            r_data = bytearray(1)
-            ret = i2c_obj.read(TP_HYN_I2C_UPDATE_READ_ADDR>>1, bytearray([0xa0,0x05]), 2, r_data, 1, 0)
-            utime.sleep_ms(50)
-
-            if r_data[0] == 0x55:
-                print("r_data[0] = 0x55,break")
-                break
-        
-        startAddr = startAddr + PER_LEN
-        del data[0:PER_LEN]
-        sum_len = sum_len + PER_LEN 
-
-#---------------------------------------------------------------------
-# cst816d_enter_bootmode
-#---------------------------------------------------------------------
-def cst816d_enter_bootmode():
-
-    GPIO_ResetTP()
-    i2c_obj = I2C(I2C.I2C2, I2C.FAST_MODE)
-
-    cmd = [0xAB]
-    #进入boot模式
-    retrycnt = 10
-    global y
-    for i in range (retrycnt):
-        y += 1
-        if 0 == i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x01]), 2, bytearray(cmd), 1):
-            utime.sleep_ms(100)
-        else:
-            print("boot模式写命令失败")
-
-        r_data = bytearray(1)
-        if -1 == i2c_obj.read(TP_HYN_I2C_UPDATE_READ_ADDR>>1, bytearray([0xa0,0x03]), 2, r_data, 1, 0):
-            utime.sleep_ms(100)
-        else:
-            if 0xc1 == r_data[0]:
-                utime.sleep_ms(100)
-                return 0
-            else:
-                print("boot模式进入失败")
-    
-    return -1
-#---------------------------------------------------------------------
-# ctp_hynitron_update
-#---------------------------------------------------------------------
-def ctp_hynitron_update():
-
-    # 初始化固件数组和数组长度
-    p_app_bin = []
-    app_bin_len = 0
-
-    #进入boot模式
-    # if -1 == cst816d_enter_bootmode():
-    #     return 
-
-    #  获取固件数组
-    # p_app_bin = capacitive_hynitron_cst816d_update_new.app_bin_816d
-    p_app_bin = capacitive_hynitron_cst816d_update.app_bin_816d
-
-    #  获取固件数组的长度
-    app_bin_len = len(p_app_bin)
-
-    if app_bin_len > 10:
-        startAddr = p_app_bin[1]
-        length = p_app_bin[3]
-        checksum = p_app_bin[5] #a8  78
-
-        startAddr <<= 8; startAddr |= p_app_bin[0]
-        length <<= 8; length |= p_app_bin[2]
-        checksum <<= 8; checksum |= p_app_bin[4] 
-
-        print("startAddr:%x"%startAddr)
-        print("length:%x"%length) 
-        print("checksum:%x"%checksum)   
-
-
-        #检查checksum
-        sum_now = cst816d_read_checksum()
-        if sum_now == -1:
-           print("初始化失败") 
-        elif sum_now != checksum:
-            print("固件包checksum不相同!")
-
-            del p_app_bin[0:6]
-            cst816d_update(startAddr, length, p_app_bin)
-
-            #升级后再次确认checksum
-            if checksum == cst816d_read_checksum():
-                print("固件升级成功!")
-
-        elif  checksum == sum_now:
-            print("固件包checksum相同,退出")
-
-
-#---------------------------------------------------------------------
-# HYN_Initial
-#---------------------------------------------------------------------
-def HYN_Initial():
-
-    #GPIO_ResetTP()
-
-    ctp_hynitron_update() 
-
-    GPIO_ResetTP()
-
-
-
-
-
-
diff --git a/2.sdk/project/K01/sdk/services/microPython/ports/quectel/core/initTP.py b/2.sdk/project/K01/sdk/services/microPython/ports/quectel/core/initTP.py
deleted file mode 100644 (file)
index 534ca06..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-import log
-from machine import I2C
-import utime
-from machine import Pin
-import uos
-
-# from ext import capacitive_hynitron_cst816d_update_new
-import capacitive_hynitron_cst816d_update
-
-TP_HYN_I2C_UPDATE_WRITE_ADDR = (0x6A<<1)  
-TP_HYN_I2C_UPDATE_READ_ADDR =  ((0x6A<<1)|1)
-PER_LEN = 512
-x = 0
-y = 0
-#---------------------------------------------------------------------
-# cst816d_read_checksum
-#---------------------------------------------------------------------
-def cst816d_read_checksum():
-
-    if -1 == cst816d_enter_bootmode():
-        return -1
-
-    i2c_obj = I2C(I2C.I2C2, I2C.FAST_MODE)
-    cmd = [0]
-
-    if -1 == i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x03]), 2, bytearray(cmd), 1):
-        return -1
-    utime.sleep_ms(500)#这里延时太短会读错checksum
-
-    r_data = bytearray(2)
-    if -1 == i2c_obj.read(TP_HYN_I2C_UPDATE_READ_ADDR>>1, bytearray([0xa0,0x08]), 2, r_data, 2, 0):
-        return -1
-    check_sum = (r_data[1] << 8) | r_data[0]
-    print("check_sum的值为:",check_sum)
-    return check_sum    
-#---------------------------------------------------------------------
-# GPIO_ResetTP
-#---------------------------------------------------------------------
-def GPIO_ResetTP():
-
-    print("GPIO_ResetTP")
-    
-    gpio_power = Pin(Pin.GPIO18, Pin.OUT, Pin.PULL_PU, 0)
-    gpio_power.write(1)
-
-    gpio_reset = Pin(Pin.GPIO32, Pin.OUT, Pin.PULL_PU, 0)
-    gpio_reset.write(0)
-    utime.sleep_ms(10)
-    gpio_reset.write(1)
-    utime.sleep_ms(10)
-
-#---------------------------------------------------------------------
-# cst816d_update
-#---------------------------------------------------------------------
-def cst816d_update(startAddr, length, data):
-    print("cst816d_update")
-    if -1 == cst816d_enter_bootmode():
-        return -1
-
-    sum_len = 0
-    cmd = [0,0]
-    global x
-    while 1:
-        x += 1
-        if sum_len >= length:
-            print("sum_len >= length,退出循环")
-            return
-        a = startAddr&0xFF
-        cmd[0]=a
-        b = startAddr>>8
-        cmd[1]=b
-        i2c_obj = I2C(I2C.I2C2, I2C.FAST_MODE)
-
-        ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x14]), 2, bytearray(cmd), 2)
-        utime.sleep_ms(100)
-
-        ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x18]), 2, bytearray(data), PER_LEN)
-
-        utime.sleep_ms(100)
-
-        cmd[0] = 0xEE
-        ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x04]), 2, bytearray(cmd), 1)
-
-        utime.sleep_ms(100)
-
-        retrycnt = 51
-        for i in range (retrycnt):
-            r_data = bytearray(1)
-            ret = i2c_obj.read(TP_HYN_I2C_UPDATE_READ_ADDR>>1, bytearray([0xa0,0x05]), 2, r_data, 1, 0)
-            utime.sleep_ms(50)
-
-            if r_data[0] == 0x55:
-                print("r_data[0] = 0x55,break")
-                break
-        
-        startAddr = startAddr + PER_LEN
-        del data[0:PER_LEN]
-        sum_len = sum_len + PER_LEN 
-
-#---------------------------------------------------------------------
-# cst816d_enter_bootmode
-#---------------------------------------------------------------------
-def cst816d_enter_bootmode():
-
-    GPIO_ResetTP()
-    i2c_obj = I2C(I2C.I2C2, I2C.FAST_MODE)
-
-    cmd = [0xAB]
-    #进入boot模式
-    retrycnt = 10
-    global y
-    for i in range (retrycnt):
-        y += 1
-        if 0 == i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x01]), 2, bytearray(cmd), 1):
-            utime.sleep_ms(100)
-        else:
-            print("boot模式写命令失败")
-
-        r_data = bytearray(1)
-        if -1 == i2c_obj.read(TP_HYN_I2C_UPDATE_READ_ADDR>>1, bytearray([0xa0,0x03]), 2, r_data, 1, 0):
-            utime.sleep_ms(100)
-        else:
-            if 0xc1 == r_data[0]:
-                utime.sleep_ms(100)
-                return 0
-            else:
-                print("boot模式进入失败")
-    
-    return -1
-#---------------------------------------------------------------------
-# ctp_hynitron_update
-#---------------------------------------------------------------------
-def ctp_hynitron_update():
-
-    # 初始化固件数组和数组长度
-    p_app_bin = []
-    app_bin_len = 0
-
-    #进入boot模式
-    # if -1 == cst816d_enter_bootmode():
-    #     return 
-
-    #  获取固件数组
-    # p_app_bin = capacitive_hynitron_cst816d_update_new.app_bin_816d
-    p_app_bin = capacitive_hynitron_cst816d_update.app_bin_816d
-
-    #  获取固件数组的长度
-    app_bin_len = len(p_app_bin)
-
-    if app_bin_len > 10:
-        startAddr = p_app_bin[1]
-        length = p_app_bin[3]
-        checksum = p_app_bin[5] #a8  78
-
-        startAddr <<= 8; startAddr |= p_app_bin[0]
-        length <<= 8; length |= p_app_bin[2]
-        checksum <<= 8; checksum |= p_app_bin[4] 
-
-        print("startAddr:%x"%startAddr)
-        print("length:%x"%length) 
-        print("checksum:%x"%checksum)   
-
-
-        #检查checksum
-        sum_now = cst816d_read_checksum()
-        if sum_now == -1:
-           print("初始化失败") 
-        elif sum_now != checksum:
-            print("固件包checksum不相同!")
-
-            del p_app_bin[0:6]
-            cst816d_update(startAddr, length, p_app_bin)
-
-            #升级后再次确认checksum
-            if checksum == cst816d_read_checksum():
-                print("固件升级成功!")
-
-        elif  checksum == sum_now:
-            print("固件包checksum相同,退出")
-
-
-#---------------------------------------------------------------------
-# HYN_Initial
-#---------------------------------------------------------------------
-def HYN_Initial():
-
-    #GPIO_ResetTP()
-
-    ctp_hynitron_update() 
-
-    GPIO_ResetTP()
-
-
-
-
-
-
diff --git a/2.sdk/project/K5/sdk/services/microPython/ports/quectel/core/initTP.py b/2.sdk/project/K5/sdk/services/microPython/ports/quectel/core/initTP.py
deleted file mode 100644 (file)
index 534ca06..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-import log
-from machine import I2C
-import utime
-from machine import Pin
-import uos
-
-# from ext import capacitive_hynitron_cst816d_update_new
-import capacitive_hynitron_cst816d_update
-
-TP_HYN_I2C_UPDATE_WRITE_ADDR = (0x6A<<1)  
-TP_HYN_I2C_UPDATE_READ_ADDR =  ((0x6A<<1)|1)
-PER_LEN = 512
-x = 0
-y = 0
-#---------------------------------------------------------------------
-# cst816d_read_checksum
-#---------------------------------------------------------------------
-def cst816d_read_checksum():
-
-    if -1 == cst816d_enter_bootmode():
-        return -1
-
-    i2c_obj = I2C(I2C.I2C2, I2C.FAST_MODE)
-    cmd = [0]
-
-    if -1 == i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x03]), 2, bytearray(cmd), 1):
-        return -1
-    utime.sleep_ms(500)#这里延时太短会读错checksum
-
-    r_data = bytearray(2)
-    if -1 == i2c_obj.read(TP_HYN_I2C_UPDATE_READ_ADDR>>1, bytearray([0xa0,0x08]), 2, r_data, 2, 0):
-        return -1
-    check_sum = (r_data[1] << 8) | r_data[0]
-    print("check_sum的值为:",check_sum)
-    return check_sum    
-#---------------------------------------------------------------------
-# GPIO_ResetTP
-#---------------------------------------------------------------------
-def GPIO_ResetTP():
-
-    print("GPIO_ResetTP")
-    
-    gpio_power = Pin(Pin.GPIO18, Pin.OUT, Pin.PULL_PU, 0)
-    gpio_power.write(1)
-
-    gpio_reset = Pin(Pin.GPIO32, Pin.OUT, Pin.PULL_PU, 0)
-    gpio_reset.write(0)
-    utime.sleep_ms(10)
-    gpio_reset.write(1)
-    utime.sleep_ms(10)
-
-#---------------------------------------------------------------------
-# cst816d_update
-#---------------------------------------------------------------------
-def cst816d_update(startAddr, length, data):
-    print("cst816d_update")
-    if -1 == cst816d_enter_bootmode():
-        return -1
-
-    sum_len = 0
-    cmd = [0,0]
-    global x
-    while 1:
-        x += 1
-        if sum_len >= length:
-            print("sum_len >= length,退出循环")
-            return
-        a = startAddr&0xFF
-        cmd[0]=a
-        b = startAddr>>8
-        cmd[1]=b
-        i2c_obj = I2C(I2C.I2C2, I2C.FAST_MODE)
-
-        ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x14]), 2, bytearray(cmd), 2)
-        utime.sleep_ms(100)
-
-        ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x18]), 2, bytearray(data), PER_LEN)
-
-        utime.sleep_ms(100)
-
-        cmd[0] = 0xEE
-        ret = i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x04]), 2, bytearray(cmd), 1)
-
-        utime.sleep_ms(100)
-
-        retrycnt = 51
-        for i in range (retrycnt):
-            r_data = bytearray(1)
-            ret = i2c_obj.read(TP_HYN_I2C_UPDATE_READ_ADDR>>1, bytearray([0xa0,0x05]), 2, r_data, 1, 0)
-            utime.sleep_ms(50)
-
-            if r_data[0] == 0x55:
-                print("r_data[0] = 0x55,break")
-                break
-        
-        startAddr = startAddr + PER_LEN
-        del data[0:PER_LEN]
-        sum_len = sum_len + PER_LEN 
-
-#---------------------------------------------------------------------
-# cst816d_enter_bootmode
-#---------------------------------------------------------------------
-def cst816d_enter_bootmode():
-
-    GPIO_ResetTP()
-    i2c_obj = I2C(I2C.I2C2, I2C.FAST_MODE)
-
-    cmd = [0xAB]
-    #进入boot模式
-    retrycnt = 10
-    global y
-    for i in range (retrycnt):
-        y += 1
-        if 0 == i2c_obj.write(TP_HYN_I2C_UPDATE_WRITE_ADDR>>1, bytearray([0xa0,0x01]), 2, bytearray(cmd), 1):
-            utime.sleep_ms(100)
-        else:
-            print("boot模式写命令失败")
-
-        r_data = bytearray(1)
-        if -1 == i2c_obj.read(TP_HYN_I2C_UPDATE_READ_ADDR>>1, bytearray([0xa0,0x03]), 2, r_data, 1, 0):
-            utime.sleep_ms(100)
-        else:
-            if 0xc1 == r_data[0]:
-                utime.sleep_ms(100)
-                return 0
-            else:
-                print("boot模式进入失败")
-    
-    return -1
-#---------------------------------------------------------------------
-# ctp_hynitron_update
-#---------------------------------------------------------------------
-def ctp_hynitron_update():
-
-    # 初始化固件数组和数组长度
-    p_app_bin = []
-    app_bin_len = 0
-
-    #进入boot模式
-    # if -1 == cst816d_enter_bootmode():
-    #     return 
-
-    #  获取固件数组
-    # p_app_bin = capacitive_hynitron_cst816d_update_new.app_bin_816d
-    p_app_bin = capacitive_hynitron_cst816d_update.app_bin_816d
-
-    #  获取固件数组的长度
-    app_bin_len = len(p_app_bin)
-
-    if app_bin_len > 10:
-        startAddr = p_app_bin[1]
-        length = p_app_bin[3]
-        checksum = p_app_bin[5] #a8  78
-
-        startAddr <<= 8; startAddr |= p_app_bin[0]
-        length <<= 8; length |= p_app_bin[2]
-        checksum <<= 8; checksum |= p_app_bin[4] 
-
-        print("startAddr:%x"%startAddr)
-        print("length:%x"%length) 
-        print("checksum:%x"%checksum)   
-
-
-        #检查checksum
-        sum_now = cst816d_read_checksum()
-        if sum_now == -1:
-           print("初始化失败") 
-        elif sum_now != checksum:
-            print("固件包checksum不相同!")
-
-            del p_app_bin[0:6]
-            cst816d_update(startAddr, length, p_app_bin)
-
-            #升级后再次确认checksum
-            if checksum == cst816d_read_checksum():
-                print("固件升级成功!")
-
-        elif  checksum == sum_now:
-            print("固件包checksum相同,退出")
-
-
-#---------------------------------------------------------------------
-# HYN_Initial
-#---------------------------------------------------------------------
-def HYN_Initial():
-
-    #GPIO_ResetTP()
-
-    ctp_hynitron_update() 
-
-    GPIO_ResetTP()
-
-
-
-
-
-