打印
[综合信息]

使用 DMA 传输单一颜色时屏幕颜色不正确

[复制链接]
719|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
泡椒风爪|  楼主 | 2024-8-31 02:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在配置DMA时,如果需要传输单一颜色数据,内存地址递增是否应该禁用?如果内存地址递增未禁用,是否会导致每次从不同的内存位置读取数据,进而使屏幕显示的颜色不一致?

使用特权

评论回复
沙发
lamanius| | 2025-2-8 17:24 | 只看该作者
如果希望在整个传输过程中都使用同一内存位置的数据(即单一颜色数据),那么应该禁用内存地址递增。这样,DMA将反复从同一内存地址读取数据,并将其传输到目标设备(如屏幕)。这种情况下,屏幕将显示一致的颜色。

使用特权

评论回复
板凳
p0gon9y| | 2025-2-8 18:33 | 只看该作者
一般来说如果内存地址递增未禁用,DMA将在每次传输时从下一个内存地址读取数据。这意味着,如果内存中包含不同的数据(即不同的颜色值),那么屏幕将显示不同的颜色。这可能导致屏幕显示的颜色不一致,特别是在需要显示单一颜色的场景下

使用特权

评论回复
地板
suw12q| | 2025-2-8 19:37 | 只看该作者
即使内存地址递增未禁用,也不一定会导致每次从不同的内存位置读取数据,进而使屏幕显示的颜色不一致

使用特权

评论回复
5
liu96jp| | 2025-2-8 20:42 | 只看该作者
其实取决于内存中的数据布局。如果内存中连续存储的是相同的数据(即相同的颜色值),那么即使内存地址递增未禁用,屏幕也可能显示一致的颜色。但这种情况较为特殊,且在实际应用中不常见。

使用特权

评论回复
6
t1ngus4| | 2025-2-8 22:14 | 只看该作者
为了确保屏幕显示一致的颜色,在配置DMA传输单一颜色数据时,建议禁用内存地址递增。这样可以确保DMA始终从同一内存地址读取数据,并将其传输到目标设备

使用特权

评论回复
7
d1ng2x| | 2025-2-9 08:39 | 只看该作者
对于是否需要禁用内存地址递增,应根据具体的应用场景和需求来决定。在需要传输单一颜色数据的场景下,为了确保屏幕显示一致的颜色,建议禁用内存地址递增。

使用特权

评论回复
8
zhizia4f| | 2025-2-9 11:20 | 只看该作者
单一颜色不正确?是不是数据传输错误了

使用特权

评论回复
9
q1ngt12| | 2025-2-9 13:05 | 只看该作者
一般DMA配置的问题吧,可能数据错了就这样了

使用特权

评论回复
10
w2nme1ai7| | 2025-2-9 14:09 | 只看该作者
我觉得应该禁用吧,你可以试试的

使用特权

评论回复
11
ex7s4| | 2025-2-9 16:15 | 只看该作者
我觉得禁用应该问题不大吧,不是可以调试吗,试试呗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

39

主题

252

帖子

0

粉丝