idf版本:v3.3 v4.2
esp32开发板:nodemcu,esp32s
问题描述:
esp32作为spi master与stm32g0作为spi slave进行dma 全双工通讯,在26.67MHz时钟下满带宽持续将两个芯片各自32字节的内容使用DMA发送给对方。代码修改自idf的spi master demo,修改寄存器实现SPI_DMA_CONTINUE模式持续将32字节内容发送和接收。
测试发现,在上电开始SPI开始传输后每过161秒接收到的数据都会有一个字节的丢失,导致接收到的数据错位。多次测量或修改寄存器设置后也都是这种现象。如果将时钟改慢为20M则会每215秒丢失一字节。个人推测可能是esp32接收的某种机制导致错开一个字节(8位),否则无法解释为什么每次都会每隔同样的时间、丢失同样大小的(8位bit,一个字节)数据,ESP32发给STM32的数据始终是正确的(MOSI),STM32发给ESP32的数据通过逻辑分析仪确认也没问题(MISO)。
针对这个问题现已调试多日不见解决,还望赐教。
SPI Master DMA 环形接收长时间后数据出错
Jump to
- English Forum
- Explore
- News
- General Discussion
- FAQ
- Documentation
- Documentation
- Sample Code
- Discussion Forum
- Hardware
- ESP-IDF
- ESP-BOX
- ESP-ADF
- ESP-MDF
- ESP-WHO
- ESP-SkaiNet
- ESP32 Arduino
- IDEs for ESP-IDF
- ESP-AT
- ESP IoT Solution
- ESP RainMaker
- Rust
- ESP8266
- Report Bugs
- Showcase
- Chinese Forum 中文社区
- 活动区
- 乐鑫活动专区
- 讨论区
- 全国大学生物联网设计竞赛乐鑫答疑专区
- ESP-IDF 中文讨论版
- 《ESP32-C3 物联网工程开发实战》书籍讨论版
- 中文文档讨论版
- ESP-AT 中文讨论版
- ESP-BOX 中文讨论版
- ESP IoT Solution 中文讨论版
- ESP-ADF 中文讨论版
- ESP Mesh 中文讨论版
- ESP Cloud 中文讨论版
- ESP-WHO 中文讨论版
- ESP-SkaiNet 中文讨论版
- ESP 生产支持讨论版
- 硬件问题讨论
- 项目展示
Who is online
Users browsing this forum: No registered users and 77 guests
- All times are UTC
- Top
- Delete cookies
About Us
Espressif Systems is a fabless semiconductor company providing cutting-edge low power WiFi SoCs and wireless solutions for wireless communications and Internet of Things applications. ESP8266EX and ESP32 are some of our products.