完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我的意图是实施 FatFS,因此我使用了“ lpcopen_2_10_lpcxpresso_ea_devkit_1788 ”中的示例(我有 Embedded Artists LPC1788 OEM 板版本 E 和基板版本 C1)。因为没有任何效果,我禁用了 DMA 并最终直接调用“ Chip_SDMMC_WriteBlocks ”。
对“ Chip_SDMMC_Acquire ”的调用成功并且“ SDMMC_CARD_T ”结构似乎已正确填充,但成功部分到此结束。问题出现在接下来的步骤中: 1. 获得卡后,我调用此行(简化): Chip_SDMMC_WriteBlocks( pSDC, pCardInfo, “Abcdefghijk”, 0, 1 ); 执行然后进入位于LPCOpen,版本2.10的代码: 2. 由于在 MCIDataCtrl (0x400C 002C) 中启用了数据传输,因此使用 282624 的 MCIStatus 触发中断(第 18 位:传输 FIFO 为空,第 14 位:传输 FIFO 半空,以及第 12 位:数据传输正在进行中) 3.中断处理程序进入“ Chip_SDC_WriteFIFO ”函数(sdc_17xx_40xx.c)执行这段代码(由我简化): 对于(开始= 0;开始<= 7;开始++){ pSDC->FIFO[开始] = *pSrc; pSrc++; } 4. 第一次运行此循环后:FIFO[0] = 0x64636241(即“Abcd”)根据调试器,所有 16 个 FIFO 寄存器的增益值 0x64636241 和 MCIStatus 更改为 16(TxUnderrun) 5. 下一次中断发生在 TxUnderrun 的 MCIStatus 中,并由于错误而中止传输。 我正在寻找有关以下任何一项的建议: Q1:为什么将一个 4 字节整数写入 FIFO[0] 会影响所有 16 个整数?调试器是否显示错误? Q2:为什么向 FIFO[0] 写入单个 4 字节整数会立即触发 TxUnderrun?我通过在执行路径中进一步移动断点来验证它不是由于手动/缓慢地逐步执行调试器中的代码而引起的。 Q3:在一个循环中写入八个 FIFO 是正确的做法吗?与 UART 比较:函数“ Chip_UART_SendByte ” (uart_17xx_40xx.c) 一次发送一个字节: pUART->THR = (uint32_t) 数据; Q4:我可以使用更好的代码示例吗? |
|
相关推荐
1个回答
|
|
根据您提供的信息,TxUnderrun错误通常会在SD卡写入期间发生。这意味着SD卡控制器无法及时提供足够的数据,以满足要求的数据速率。这可能是由于多种原因引起的,包括DMA控制器的错误配置,数据传输线路的错误连接以及SD卡本身的问题。
对于您的情况,您已经尝试禁用DMA并直接调用“Chip_SDMMC_WriteBlocks”来写入SD卡。您的代码似乎已成功从SDMMC_CARD_T结构获取了卡信息。由于您的代码中没有写入缓冲区的详细信息,我无法提供更具体的建议。但是,以下可能会有所帮助: 1. 确保您正确配置了SD卡控制器并使其能够提供足够的速率来与SD卡通信。 2. 确保您的写入缓冲区大小足够大,以避免TxUnderrun错误。如果您尝试写入大量数据,则缓冲区太小可能会导致写入失败。 3. 确保您的数据传输线路正确连接,并且没有松动或短路的插头。 4. 尝试使用另一个SD卡和/或另一台运行相同代码的系统来确定问题是由SD卡本身还是代码本身引起的。 希望这些建议能帮助您解决问题。如果您仍然不确定如何解决此问题,请考虑在LPC1788用户论坛上寻求帮助。 |
|
|
|
只有小组成员才能发言,加入小组>>
1897个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36307 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4373 浏览 0 评论
6030 浏览 1 评论
6748 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4197 浏览 0 评论
605浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
598浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
589浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
678浏览 2评论
772浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-5 23:21 , Processed in 1.209141 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号