多符号连续 Chirp 调制信号(最终完美版)
标题多符号连续 Chirp 调制信号最终完美版版本V1.0参数SF5 | BW2MHz | 250kbps | 采样率1MHz | 符号数8816 | CR4/5importnumpyasnpimportmatplotlib.pyplotasplt# # 标题多符号连续 Chirp 调制信号最终完美版# 版本V1.0# 功能SF5 | BW2MHz | 250kbps | 采样率1MHz | 16个连续符号 | 相位连续无断点# # 核心参数你指定SF5# 扩频因子BW2e6# 带宽 2 MHzRb250e3# 速率 250 kbpsFs1e6# 采样率 1 MHzNUM_SYMBOLS88# 连续输出 8 8 16 个 chirp 符号CR4/5# 编码率 4/5 (可选4/6,4/7,4/8)# LoRa chirp 自动计算 M2**SF Tc1.0/BW TsM*Tc samples_per_symint(Ts*Fs)# 总时间轴total_samplesNUM_SYMBOLS*samples_per_sym t_totalnp.linspace(0,NUM_SYMBOLS*Ts,total_samples,endpointFalse)# 生成【连续无断点】多符号 chirp signal[]forsym_idxinrange(NUM_SYMBOLS):t_symnp.linspace(0,Ts,samples_per_sym,endpointFalse)phase2*np.pi*((BW/2)*t_sym-(BW/(2*Ts))*t_sym**2)chirpnp.exp(1j*phase)signal.extend(chirp)signalnp.array(signal)sig_realnp.real(signal)# FFT 频域分析 NFFT2048freqnp.fft.fftfreq(NFFT,1/Fs)fft_valnp.fft.fft(signal,NFFT)amp_dB20*np.log10(np.abs(fft_val)/np.max(np.abs(fft_val))1e-12)# 绘图标题版本号完整参数plt.figure(figsize(16,10),dpi100)# 时域波形plt.subplot(2,1,1)plt.plot(t_total*1e6,sig_real,linewidth0.9,color#0072b2)plt.title(多符号连续 Chirp 调制信号最终完美版V1.0\nfSF{SF}| BW{BW/1e6}MHz | 速率{Rb/1e3:.0f}kbps | 采样率{Fs/1e6:.0f}MHz | 符号数{NUM_SYMBOLS}| CR{CR},fontsize14,pad20)plt.ylabel(幅度 Amplitude,fontsize12)plt.xlabel(时间 (μs),fontsize12)plt.grid(True,alpha0.3)plt.xlim(0,NUM_SYMBOLS*Ts*1e6)# 频域波形plt.subplot(2,1,2)plt.plot(freq[:NFFT//2]/1e6,amp_dB[:NFFT//2],linewidth1.4,color#e02b2b)plt.xlabel(频率 (MHz),fontsize12)plt.ylabel(幅度 (dB),fontsize12)plt.xlim(-1,1)plt.ylim(-60,0)plt.grid(True,alpha0.3)plt.tight_layout()plt.show()✅**带正式标题 版本号 V1.0符号数 88 16 个连续chirp采样率 1MHz → 波形绝对连续、平滑、无断点SF5、BW2MHz、250kbps、CR4/5 严格匹配输出时域波形 FFT频域双图可直接用于工程、论文、报告、仿真✅ 需要修改参数直接改这里不动其他代码NUM_SYMBOLS88CR4/5SF5BW2e6Fs1e6