OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2902|回复: 4

emwin 的内存配置问题

[复制链接]

1

主题

6

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2016-1-6
在线时间
5 小时
发表于 2018-12-5 17:21:13 | 显示全部楼层 |阅读模式
u8 emwin_lcd_framebuf[8*1024*1024] __attribute__((at(0XC0000000+(2*1280*800)+(8*1024*1024))));        //定义最大屏分辨率时,LCD所需的帧缓存数组大小

//__attribute__((section (".SDRAM"))) u8 emwin_lcd_framebuf[16*1024*1024];
哪位大神看看,为何前一句话可以运行,而后一句话的不行?
前一句话改为
u8 emwin_lcd_framebuf[8*1024*1024] __attribute__((at(0XC0000000+(2*1280*800))));        //定义最大屏分辨率时,LCD所需的帧缓存数组大小
也不可运行?
2*1280*800是ltdc的缓冲。这个次序到底是正序,还是逆序?很懵圈啊!多谢开悟了!


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2016-1-6
在线时间
5 小时
 楼主| 发表于 2018-12-5 17:27:00 | 显示全部楼层
aMemory = (U32 *)SDRAM_APP_BUF; 安福来的是从后面往前分配的,为何?
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2016-1-6
在线时间
5 小时
 楼主| 发表于 2018-12-5 17:32:16 | 显示全部楼层
//u8 emwin_lcd_framebuf[8*1024*1024] __attribute__((at(PQWAVE1_FRAME_BUF_ADDR)));        //定义最大屏分辨率时,LCD所需的帧缓存数组大小

__attribute__((section (".SDRAM"))) u8 emwin_lcd_framebuf1[8*1024*1024];
__attribute__((section (".SDRAM"))) u8 emwin_lcd_framebuf[8*1024*1024];
改成这样,是有后面的buf也可以运行,到底是什么原因?
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2016-1-6
在线时间
5 小时
 楼主| 发表于 2018-12-5 17:32:51 | 显示全部楼层
非要倒序?吗?
回复 支持 反对

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2018-12-6 09:05:46 | 显示全部楼层
就是定义一段内存做为LCD的显存,那里来的什么逆序和顺序!数组首地址就是显存的首地址
开往春天的手扶拖拉机
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 03:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表