
本人最近正正在调试STM32F405两块处理器间的SPI通讯,主片的发送程序已调好,功能是循环发送1-100的数字(数据格式为16位),从机的数据接收打算采用中断的方式用一个数组去接收发送的数据,丛机和主机的SPI配置基本一致,只是主从的区别,另外从机的使能采用硬件控制,主机通过一个IO口置地来控制从机的使能。另外中断使能,中断优先级也设置好了。主机的时钟速率为2M多,中断接收数据的程序采用以下流程:查询中断标志位,清除中断标志位,接收本次数据,计数器加1,判断计数器是否大于99,大于则归0,否则出中断。然后调试过程中诡异的事情发生了,如果在中断函数中设置断点,查看变量,可以看到接收到数据,如果全速运行,数据一直是0,及时偶尔有的数据变化,也是跳动一下归0,后来我通过在中断函数中加入标志位的方法(进入中断数组接收完毕置位的方法)去全速运行看标志位,标志位一直为0,也就是说基本没怎么进入中断。。。求解各位大神帮忙解答 |
另外SPI这东西实在折磨死我了,还有就是我用SPI口去读写一个SPI接口的E2PROM,怎么读都读不对,看波形的时序没问题,但是读进来的数不对 |
问题已经解决,之前发送端采用DMA发送,每两个相邻数据之间没有时间间隔,接收端采用接收中断接收不过来,改成正常发送就好了 |
TOF传感器(VL53L5),无法得到data ready
在CUBEMX生成的STM32F407VET6的I2S主机接收模式与I2S主机发送模式能正常运行,如何进行动态调整或者如何实现主机全双工?
STM32F407 多机RS485串口通讯+地址位唤醒+DMA空闲线接收,无法进入中断服务程序。
设置RDP等级为2的同时,有什么办法可以确保后续还能够烧录程序
STM32F407VET6 I2S 采用DMA传输问题
有STM32F4倒车雷达响应例程吗?
STM32F429I倒车雷达响应
STM32多通道FFT运算异常
在其他电脑上编译成功没有错误并且能够烧录,换了电脑之后编译出现一堆错误,并且不能烧录程序
SD卡初始化第一次初始化后再次初始化时会失败。