MCU & FPGA调试

  1. MCU(dsPIC33) SPI调试
    a. MOSI output
    /Data change at rising edge, and slave sample at falling edge
c 复制代码
void InitSPI2(void) 
{  // since sending only, no need for INTS.
	FPGA_CS_N_OUT_LED16_En; //FPGA_CS# select
	FPGA_CS_N_LED16_En = 1;//FPGA_CS# high
	
	IFS2bits.SPI2IF = 0; //Clear the interrupt flag
	IFS2bits.SPI2EIF = 0; //0-Dis Int, 1--En

	SPI2CON1bits.DISSCK = 0;// 0-enable clk
	SPI2CON1bits.DISSDO = 0;// 0-enable SDO
	SPI2CON1bits.MODE16 = 0;// 1--16bits transfer.0--8 bit
	SPI2CON1bits.SMP = 0; //0--sample during data; 1--sample end of data
	//Data change at rising edge, and slave sample at falling edge
	SPI2CON1bits.CKE = 1; //1--Data shift out at clk from work to idle
	SPI2CON1bits.CKP = 1;// 1--CLK is 1 at idle state and clk is 0 at work
	SPI2CON1bits.SSEN = 0; //0--Not use CS pin
	SPI2CON1bits.MSTEN = 1; //1--Master mode
	SPI2CON1bits.SPRE = 0x06;//b110--Sub clock 2:1 presale
	SPI2CON1bits.PPRE = 0x10; //b10--main clock 4:1 prescale�� b01-16:1

	SPI2BUF = 0x0000;
	
//	SPI1CON1 = 0x057A;				// 0000 0000 0111 1111
	SPI2STATbits.SPIROV = 0;		// Clear Overflow bit
	SPI2STATbits.SPIEN = 1;			// Enable the peripheral

	IEC2bits.SPI2IE = 0;   //0-- Dis SPI INT, 1-En
	FPGA_CS_N_LED16_En = 0;//Enable FPGA CS#
}
复制代码
**?现在问题,怎么MCU读取FPGA数据 Via MISO** 
  1. FPGA调试
    a: FPGA收到的数据是正确的 via MOSI, 通过FPGA Reveal analyzer抓取的数据。

b. 但是发送出的数据是错误的 via miso

发送8'h44, 现在FPGA代码是错误的

相关推荐
F137298015572 小时前
WD5081,85V转5V,1A异步降压芯片
stm32·单片机·嵌入式硬件·51单片机
傻童:CPU2 小时前
如何快速阅读芯片数据手册
单片机·嵌入式硬件
iCxhust2 小时前
如何查看一个51单片机的库文件内容
单片机·嵌入式硬件·51单片机
浩子智控2 小时前
EtherCAT技术概述
嵌入式硬件·fpga开发·硬件工程·信号处理
Purple Coder3 小时前
MgB2参考论文
嵌入式硬件
都在酒里3 小时前
FreeRTOS 综合实战:串口命令控制 LED 闪烁模式与系统监控
stm32·单片机·嵌入式硬件·嵌入式·rtos·嵌入式软件
济6173 小时前
ROS2 Humble 开发专栏Ubuntu22.04|基于OpenCV 实现机器视觉人脸检测实验指南
嵌入式硬件·嵌入式·ros2·机器人方向
我爱C编程3 小时前
【仿真测试】基于FPGA的8ASK扩频通信链路实现,包含帧同步,定时点,扩频伪码同步,信道,误码统计
fpga开发·帧同步·定时点·扩频通信·8ask·扩频伪码
榴莲llll3 小时前
VK16K33BA 点阵数码屏驱动芯片高亮数显屏驱动LED驱动控制器工作温度-40~+8
单片机