首次提交完整的python工程代码
This commit is contained in:
7
test/remove_space.py
Normal file
7
test/remove_space.py
Normal file
@@ -0,0 +1,7 @@
|
||||
s="EB 90 01 07 35 00 EB 90 B5 71 A5 09 11 C0 01 00 E5 05 F4 ED 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 DD AA AA AA AA 88 88 0C 1B 0C 02 02 33 66 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 CC CC CC CC CC CC CC CC 7F CE A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 DF 0B 91 22 57 16"
|
||||
s="EB 90 01 07 35 00 EB 90 B5 71 A5 09 11 C0 01 00 E5 05 F4 ED 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 DD AA AA AA AA 88 88 0C 1B 0C 02 02 44 77 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 CC CC CC CC CC CC CC CC B2 EB A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 DF 0B 91 94 57 16"
|
||||
s="EB 90 01 07 35 00 EB 90 B5 71 A5 09 11 C0 01 00 E5 05 F4 ED 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 DD AA AA AA AA 88 88 0C 1B 0C 02 02 33 AA A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 CC CC CC CC CC CC CC CC F2 6E A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 DF 0B 91 79 57 16"
|
||||
s="EB 90 01 07 35 00 EB 90 B5 71 A5 09 11 C0 01 00 E5 05 F4 ED 45 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 DD AA AA AA AA 88 88 0C 1B 0C 02 02 33 BB A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 CC CC CC CC CC CC CC CC EC B6 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 A5 DF 0B 91 CC 57 16"
|
||||
#去掉所有空格
|
||||
new_s = s.replace(" ","")
|
||||
print(new_s)
|
||||
50
test/test_cal.py
Normal file
50
test/test_cal.py
Normal file
@@ -0,0 +1,50 @@
|
||||
from math import log
|
||||
|
||||
|
||||
Rr = 10000.0
|
||||
A = -6.01188
|
||||
B = 4622.53337
|
||||
C = -86421.72414
|
||||
|
||||
R=13226
|
||||
|
||||
t= 2*C/((B**2-4*C*(A-log(R)))**0.5-B)-273.15
|
||||
print(R,t)
|
||||
|
||||
x=9.0878
|
||||
y= -0.112*x**3+4.8477*x**2-85.572*x+489.01
|
||||
print(y)
|
||||
|
||||
|
||||
A=0.4116
|
||||
B=0.931
|
||||
C=-9
|
||||
y= (-B+ (B**2-4*A*C)**0.5)/2/A
|
||||
print(y)
|
||||
|
||||
y=359 #180
|
||||
combined = round(y / 0.00205479)
|
||||
low16 = combined & 0xFFFF
|
||||
high4 = (combined >> 16) & 0xF
|
||||
#d = (high4 << 16) | low16
|
||||
d = (low16 << 16) | (high4 << 0)
|
||||
print(f"特殊公式8反推:y={y} low16={hex(low16)},high4 = {hex(high4)}, d={hex(d)}")
|
||||
|
||||
# y = 30
|
||||
# if y < (0.0973 * 1840 + 180): # 区间1:y < 359.032
|
||||
# m = (y - 180) / 0.0973
|
||||
# elif y > (0.0974 * 1840 - 179.46): # 区间2:y > -0.444
|
||||
# m = (y + 179.46) / 0.0974
|
||||
# else: # m=1840
|
||||
# m = 1840.0
|
||||
|
||||
y = 150 #30,240
|
||||
if y < (180): # 区间1:
|
||||
m = (y + 179.46) / 0.0974
|
||||
elif y > (180): # 区间2:
|
||||
m = (y - 180) / 0.0973
|
||||
else: # m=1840
|
||||
m = 0.0
|
||||
print(f"特殊公式11-1反推:y={y} d={ float(round(m))}")
|
||||
# 组帧需要整数,返回四舍五入
|
||||
#return float(round(m))
|
||||
22
test/test——double.py
Normal file
22
test/test——double.py
Normal file
@@ -0,0 +1,22 @@
|
||||
import struct
|
||||
|
||||
def hex_double_to_decimal(hex_str):
|
||||
# 1. 将16进制字符串转为字节流(8字节,对应double)
|
||||
byte_data = bytes.fromhex(hex_str)
|
||||
|
||||
# 2. 使用struct解包为双精度浮点数(大端模式)
|
||||
# >d 表示大端模式、double类型
|
||||
decimal_value = struct.unpack('>d', byte_data)[0]
|
||||
|
||||
return decimal_value
|
||||
|
||||
# 输入你提供的16进制double数据
|
||||
#hex_input = "4071f0f0a49d7f87"
|
||||
hex_input = "40523c3d6d8b0464"
|
||||
|
||||
# 转换
|
||||
result = hex_double_to_decimal(hex_input)
|
||||
|
||||
# 输出结果
|
||||
print(f"十六进制double: {hex_input}")
|
||||
print(f"转换后的十进制: {result}")
|
||||
Reference in New Issue
Block a user