import matplotlib.pyplot as plt
import numpy as np
ADDR_Bit = 10
Data_Bit = 10
P = 0
Fs = 2**ADDR_Bit ## sample cnt
t= np.linspace(0,(Fs-1)/Fs,Fs)
#DC = 2**(Data_Bit-1)
##DC = 51.2
DC = 42.7
Gain = 42.7
#Gain = 2**(Data_Bit-1)
sin_singal = Gain*np.sin(2*np.pi*t+np.pi*P/180)+DC
plt.figure(1)
plt.plot(sin_singal)
out_signal = []
outfile = open("sin_wav_1024.mem",'wt')
for i in range(Fs):
outdata = int(np.ceil(sin_singal[i]))
out_signal.append(outdata)
outfile.write("%X\n"%outdata)
outfile.close()
plt.figure(2)
plt.plot(out_signal)
三角波
复制代码
import matplotlib.pyplot as plt
import numpy as np
ADDR_Bit = 10
Data_Bit = 10
P = 0
Fs = 2**ADDR_Bit ## sample cnt
t= np.linspace(0,(Fs-1)/Fs,Fs)
DC = 2**(Data_Bit-1)
Gain = 42.7 #Gain = 2**(Data_Bit-1)
half_size= 2**(ADDR_Bit-1)
tri = np.linspace(0,(half_size-1)/half_size,half_size)
tri_signal =[]
for i in range(half_size):
tri_signal.append(tri[i]*Gain+DC)
for i in range(half_size):
tri_signal.append(np.flip(tri)[i]*Gain+DC)
plt.figure(1)
plt.plot(tri_signal)
out_signal = []
outfile = open("tri_wav_1024.mem","wt")
for i in range(Fs):
outdata = int(np.ceil(tri_signal[i]))
out_signal.append(outdata)
outfile.write("%X\n"%outdata)
outfile.close()
plt.figure(2)
plt.plot(out_signal)