完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,我现在正在做一个项目,我需要把数据块从一个区域转移到SPI1端口。为了加快进程,我尝试使用DMA传输,因为我想在这个时间计算下一个数据。我遇到的问题是,当我通过UART端口输出数据时,传输似乎有问题。更具体地说,我传输数据(对于RGB LED立方体),然后伽马校正,发送到帧缓冲器,然后通过SPI传输到LED驱动器。所有的工作都很好,直到我在UART端口输出任何数据。看起来DMA此时停止,之后恢复,或者数据在UART传输任何数据时损坏。如果在for循环中手动传输数据而不是使用DMA端口,则不会发生这种情况。也许我配置DMA控制器不正确或某种原因ng但是我已经看过数据表了,看起来还可以。我使用的设备是PIC32MZ2048ECG144,相关代码如下。我使用MPLAB X IDE v3.4和XC32编译器v1.42任何帮助将不胜感激。UART代码:DMA初始化:虚拟到物理地址:
|
|
相关推荐
5个回答
|
|
我不明白使用DMA传输一个字节怎么能帮到你。你为什么注释掉USART发送例程中的繁忙检查?无论如何,你应该测试TXIF,而不是trMT。为什么你要注释发送字符串例程中的循环?显然,它只能发送一个字符。而且,如果使用指针而不是数组索引,它会生成更好的代码。即
|
|
|
|
我理解DMA是用于SPI的,但是没有注意到您传递了一个指针,认为这是一个要发送的值。确保你没有TXYE位设置。
|
|
|
|
问得好。一个月前我尝试过很多东西——五月份就是其中之一,我将在启动时删除CHEN。UART Tx的TXIE没有设置。这里的Init:
|
|
|
|
未设置UART TX的TXIE。这里是Init:我只看到您注释掉了可以设置它的代码。因为您只是发布代码片段,所以不可能检查它实际上是否在其他地方设置的。与其注释掉它,我宁愿将其更改为将位设置为零的代码。
|
|
|
|
只是用ICD3检查它,默认情况下它被设置为零。
|
|
|
|
只有小组成员才能发言,加入小组>>
5178 浏览 9 评论
2003 浏览 8 评论
1931 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3177 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2228 浏览 5 评论
738浏览 1评论
622浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
509浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
636浏览 0评论
533浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 09:19 , Processed in 1.526292 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号