1.完整项目描述和程序获取
>面包多安全交易平台:https://mbd.pub/o/bread/ZZiZlp5s
>如果链接失效,可以直接打开本站店铺搜索相关店铺:
>如果链接失效,程序调试报错或者项目合作也可以加微信或者QQ联系。
2.部分仿真图预览
3.算法概述
脉冲相位调制(PPM)最早由Pierce提出并应用于空间通信,是利用脉冲的相对位置来传递信息的一种调制方式。在光通信中,这种调制方式可以以最小的光平均功率达到最高的数据传输速率。PPM的优点在于:它仅需根据数据符号控制脉冲位置,不需要进行极性和脉冲幅度的控制,便于以较低的复杂度实现调制与解调,PPM特别适用于室内计算机红外线通信和对潜通信等要求低平均功率传输信息的场合。PPM信号调制广泛应用于超宽带移动通信、光通信等现代通信前沿技术领域。PPM信号的调制和接收对通信系统的性能起很大作用。
4.部分源码
`timescale 1ns / 1ps
//
// Company:
// Engineer:
//
// Create Date: 2023/12/21 16:01:10
// Design Name:
// Module Name: test
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
//
module test();
reg i_clock;
reg i_rst;
initial
begin
i_clock=1'b1;
i_rst=1'b1;
#1000;
i_rst=1'b0;
end
always #5 i_clock=~i_clock;
reg[19:0]cnts;
always@(posedge i_clock or posedge i_rst)
begin
if(i_rst)begin //同步复位
cnts <= 20'd0;
end
else begin
if(cnts==151)
cnts <= 16'd1;
else
cnts <= cnts + 16'd1;
end
end
reg[7:0]data1;
always@(posedge i_clock or posedge i_rst)
begin
if(i_rst)begin //同步复位
data1<=8'd0;
end
else begin
if(cnts==151)
data1<=data1 + 8'd1;
else
data1<=data1;
end
end
wire o_t_dat;
TPPM TPPM_u1(
.i_clock (i_clock),//100MHz,input
.i_rst (i_rst),//input
.i_din (data1), //input [7:0]
.o_t_dat (o_t_dat),//output reg
.o_t_en ()//output reg
);
wire[7:0]rx_data;
RPPM RPPM_u1( //ppm解调模块
//时钟和复位
.i_clock (i_clock),//100MHz,input
.i_rst (i_rst),//input
.i_t_dat (o_t_dat),//input
//输入的数据和有效信号
.o_dout (rx_data), //output [7:0]
.o_en ()
//ppm输入信号
);
endmodule
00_054m
---