Ich möchte Gleitkommawerte in Festkommawerte umwandeln.In Python Gleitkommazahlen in Festkommawerte umwandeln
import matplotlib.pyplot as plt
import numpy as np
Fs = 8000
f = 5
sample = 8000
x = np.arange(sample)
y = np.sin(2 * np.pi * f * x/Fs)
Wie kann ich diese y Fließkomma-Samples einfach in Festkomma-Samples umwandeln?
Jedes Element sollte aus 16 Bit und 1 Bit Integer-Teil bestehen und 15 Bit sollten einen Bruchteil haben, damit ich diese Abtastwerte an einen DAC-Chip weitergeben kann.
Multiplizieren Sie jedes y-Objekt mit 2 ** 15, um es in Q15 umzuwandeln. Mit der angeforderten Darstellung können Sie nicht den Wert 1 darstellen. – omegatre
ja Sie sind rite, kann der höchste + ve Wert ist 0,999 .... der dac Eingang ausgenommen die 2er Komplement Werte von Q1.15 .... –
Wie erwähnt von omegatre Sie können den Wert 1 nicht mit dem gewünschten Festkommaformat darstellen. Daher empfehle ich, jedes y mit (2 ** 15 - 1) zu multiplizieren, um einen möglichen Überlauf zu vermeiden. – maniacmic