仅从机发送原理代码,可添加其他模块;
没有接收;
主机CS信号没有处理
需主机自行定义处理所接收数据;
按键没有消抖,可自行设置;
预留了个发送标志端口SEND可以给主机用,也可以不用;
此为上升沿采样数据
测试芯片:ALTERA cyclone IV EP4CE6F17C8N
代码:
发送模块
//从机发送程序
module send_Module
(
//输入端口
CLK_50M,RST_N,MOSI,SCLK,CS,
KEY,
//输出端口
MISO,SEND
);
//外部端口声明
input CLK_50M; //时钟的端口,开发板用的50MHz晶振
input RST_N; //复位的端口,低电平复位
input SCLK; //spi时钟
input MOSI; //主机发送,从机接受
input CS; //从机片选
output reg MISO; //从机发送,主机接受
output reg SEND;
input KEY; //按键端口
//内部端口声明
reg send; //发送标志寄存器(判断是否要发送)
reg send_n; //发送标志寄存器下个状态
reg [7:0]txd_data; //初始数据寄存器
reg [7:0]txd_data_n; //初始数据寄存器下个状态
reg [7:0]byt; //发送的位寄存器(8位数据该发送第几位了)(直接覆盖赋值,会出现warning,不影响