Konwersja pomiędzy uint8_t a float

0

Jak w pythonie zamienić tablicę 8 uint8_t czy jak kto woli bajtów na dwa floaty. Interesuej mnie też zamiana w drugą stronę tzn. dwa floaty na tablicę 8 bajtów.
Próbowałem za pomoą stuct.pack i sruct.unpack i zakończyło się to niepowodzeniem.

1

Pokaż jak próbowałeś, bo generalnie jak najbardziej powinno działać.

0

Nie rozumiem pytania. Masz jednowymiarową tablicę, która składa się z ośmiu bitów reprezentujących w sumie jedną wartość uint8, czy może masz jednowymiarową tablicę składającą się z ośmiu wartości uint8? A może masz dwuwymiarową tablicę, gdzie każdy z wymiarów składa się z czterech bitów, razem reprezentując jedną wartość uint8? Rozumiesz o co mi chodzi...? Opisz dokładniej problem i pokaż kod.

1

Konwersja z 8 elementowej tablicy u8_t na 2 floaty już mi działa.

teraz próbuję przekonwertować dwa floaty na jedną tablicę 8 elementową typu u8_t

Chcę wysłać magistralą dwa floaty.

import struct

f1=1.25
f2=2.25

bf1 = struct.pack("f", f1)
print(bf1)

bf2 = struct.pack("f", f2)
print(bf2)

bf3 = bf1+bf2

print(bf3)
#send(bf3)

rezulatat tego programu to

�?
@
�?@
0

No a jaki miałby być rezultat? Wyświetliło ci reprezentacje tych bajtów na konsoli. Jak wypiszesz sobie print(bf1.encode("hex")) to widać że jest to w miare sensowne.

0

No tak:) Dziękuję i przepraszam.

1 użytkowników online, w tym zalogowanych: 0, gości: 1