硬汉嵌入式论坛

 找回密码
 立即注册
查看: 7099|回复: 23
收起左侧

[emWin] F429使用32位SDRAM刷800*480分辨率,16位色位图仅需15ms,比F407使用SRAM的100ms强

[复制链接]

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
发表于 2016-1-15 20:15:24 | 显示全部楼层 |阅读模式
实际在V5和V6开发板上面进行测试:
1. F429使用32位SDRAM刷800*480分辨率,16位色流位图仅需15ms,而F407+RA8875+SRAM刷同样的图得需要100ms左右。
   这个速度已经相当的给力。
2. 近期正在谋划F429的综合Demo设计,充分展现F429的emWin性能。
回复

使用道具 举报

0

主题

14

回帖

0

积分

新手上路

积分
0
发表于 2016-1-17 12:01:25 | 显示全部楼层
位图数据是从哪里读取的?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
 楼主| 发表于 2016-1-17 12:27:02 | 显示全部楼层

回 jackywinter 的帖子

jackywinter:位图数据是从哪里读取的? (2016-01-17 12:01) 
JEPG解码后写到SDRAM即可。
回复

使用道具 举报

0

主题

14

回帖

0

积分

新手上路

积分
0
发表于 2016-1-17 14:45:57 | 显示全部楼层
JPEG->解码->全局数组->复制->SDRAM 这样吗?如果只计"复制"的时间是不准确的吧?因为有cache,CPU复制不是真正的每个数据都复制的,复制之前需要清cache才行。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
 楼主| 发表于 2016-1-17 14:51:21 | 显示全部楼层

回 jackywinter 的帖子

jackywinter:JPEG->解码->全局数组->复制->SDRAM 这样吗?如果只计"复制"的时间是不准确的吧?因为有cache,CPU复制不是真正的每个数据都复制的,复制之前需要清cache才行。 (2016-01-17 14:45)
你想多了,F429哪来的cache。
这个是通过emWin实现解码后直接写到SDRAM中,注意,这部分SDRAM不是显存SDRAM。需要这两部分SDRAM做复制的。
回复

使用道具 举报

30

主题

90

回帖

180

积分

初级会员

积分
180
发表于 2016-1-18 10:27:40 | 显示全部楼层

回 eric2013 的帖子

eric2013:你想多了,F429哪来的cache。
这个是通过emWin实现解码后直接写到SDRAM中,注意,这部分SDRAM不是显存SDRAM。需要这两部分SDRAM做复制的。
 (2016-01-17 14:51) 
也就是说:比如有几幅图片存在外部FLASH中,上电后,通过emwin解码后写入SDRAM当显示时候SDRAM地址复制,这样显示时间就是15MS,我这样的理解对不?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
 楼主| 发表于 2016-1-18 10:28:51 | 显示全部楼层

回 sss3s 的帖子

sss3s:也就是说:比如有几幅图片存在外部FLASH中,上电后,通过emwin解码后写入SDRAM当显示时候SDRAM地址复制,这样显示时间就是15MS,我这样的理解对不? (2016-01-18 10:27) 
对,其实底层是通过DMA2D进行复制。
回复

使用道具 举报

30

主题

90

回帖

180

积分

初级会员

积分
180
发表于 2016-1-18 10:35:56 | 显示全部楼层
期待综合Demo1
回复

使用道具 举报

0

主题

5

回帖

0

积分

新手上路

积分
0
发表于 2016-2-16 23:39:34 | 显示全部楼层
想請問是如何把圖片解碼後寫到SDRAM裡面?
最近在搞這個一直搞不定
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
 楼主| 发表于 2016-2-17 12:15:39 | 显示全部楼层

回 hanhan0427 的帖子

hanhan0427:想請問是如何把圖片解碼後寫到SDRAM裡面?
最近在搞這個一直搞不定 (2016-02-16 23:39) 
我这里是转换成了RGB565格式。
/* 第1步:绘制桌面窗口的背景图片 ------------------------------------------*/
    hMempic = GUI_MEMDEV_CreateFixed(0,
                                     0,
                                     LCD_GetXSize(),
                                     LCD_GetYSize(),
                                     GUI_MEMDEV_HASTRANS,
                                     GUI_MEMDEV_APILIST_16,
                                     GUICC_M565);
    GUI_MEMDEV_Select(hMempic);
    GUI_JPEG_Draw(_acbkpic, sizeof(_acbkpic), 0, 0);
    GUI_MEMDEV_Select(0);

使用的时候调用
GUI_MEMDEV_WriteAt(hMempic,0,0);即可
回复

使用道具 举报

0

主题

5

回帖

0

积分

新手上路

积分
0
发表于 2016-2-18 05:03:16 | 显示全部楼层

回 eric2013 的帖子

eric2013:我这里是转换成了RGB565格式。
/* 第1步:绘制桌面窗口的背景图片 ------------------------------------------*/
    hMempic = GUI_MEMDEV_CreateFixed(0,
               & .. (2016-02-17 12:15)
你好,目前圖片可以顯示了,但是在正常顯示前會閃爍三到四次,想請問是否我在GUIConf.c的設定有誤?剛踏入這塊看過很多您的文章了還請指點一下謝謝~~
還是能提供顯示桌面的源碼嗎?萬分感激!
#define GUI_BUFFER_IN_EXT_RAM                  //comment this to run from internal RAM
#define GUI_NUMBYTES  ((1024) *  150)        //was 1024*150
#ifdef GUI_BUFFER_IN_EXT_RAM
#define GUI_BUFFER_ADDRESS  0xC0100000  //is first free space after last buffer ending = Nlayers*LAYER_BYTES see LCD conf
#endif


/*********************************************************************
*
*       Public code
*
**********************************************************************
*/
/*********************************************************************
*
*       GUI_X_Config
*
* Purpose:
*   Called during the initialization process in order to set up the
*   available memory for the GUI.
*/
void GUI_X_Config(void) {
    //
    // 32 bit aligned memory area
    //

    #ifdef GUI_BUFFER_IN_EXT_RAM
        static U32 aMemory[GUI_NUMBYTES / 4]__attribute__((at(GUI_BUFFER_ADDRESS)));        
    #else
        static U32 aMemory[GUI_NUMBYTES / 4];        
    #endif
    //
    // Assign memory to emWin
    //
    GUI_ALLOC_AssignMemory(aMemory, GUI_NUMBYTES);
    //
    // Set default font
    //
    GUI_SetDefaultFont(GUI_FONT_6X8);
}
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
 楼主| 发表于 2016-2-18 10:12:56 | 显示全部楼层

回 hanhan0427 的帖子

hanhan0427:你好,目前圖片可以顯示了,但是在正常顯示前會閃爍三到四次,想請問是否我在GUIConf.c的設定有誤?剛踏入這塊看過很多您的文章了還請指點一下謝謝~~
還是能提供顯示桌面的源碼嗎?萬分感激!
#define GUI_BUFFER_IN_EXT_RAM        &nbs .. (2016-02-18 05:03) 
动态内存可以使用外部SDRAM,搞得大一些,最好除了显存以外的空间都作为emWin动态内存。
回复

使用道具 举报

0

主题

5

回帖

0

积分

新手上路

积分
0
发表于 2016-2-18 21:30:11 | 显示全部楼层
你好,那是我在這邊的設定有錯嗎?
回复

使用道具 举报

0

主题

5

回帖

0

积分

新手上路

积分
0
发表于 2016-2-19 21:03:22 | 显示全部楼层

回 eric2013 的帖子

eric2013:动态内存可以使用外部SDRAM,搞得大一些,最好除了显存以外的空间都作为emWin动态内存。 (2016-02-18 10:12) 
找到問題已經解決了,已把外部sdram設定好,再次感謝^_^
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
 楼主| 发表于 2016-2-19 22:13:24 | 显示全部楼层

回 hanhan0427 的帖子

hanhan0427:找到問題已經解決了,已把外部sdram設定好,再次感謝^_^ (2016-02-19 21:03) 
[s:142][s:142]
回复

使用道具 举报

17

主题

121

回帖

172

积分

初级会员

积分
172
发表于 2016-11-27 10:24:49 | 显示全部楼层
敢问硬汉大哥,店里的10寸屏涮图用种方法有多快,能用于实际项目不?我想买个
回复

使用道具 举报

17

主题

121

回帖

172

积分

初级会员

积分
172
发表于 2016-11-27 11:12:44 | 显示全部楼层
敢问硬汉大哥,店里的10寸屏涮图用这种方法有多快,能用于实际项目不?我想买个
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
 楼主| 发表于 2016-11-27 21:23:51 | 显示全部楼层

回 王小波 的帖子

王小波:敢问硬汉大哥,店里的10寸屏涮图用这种方法有多快,能用于实际项目不?我想买个 (2016-11-27 11:12) 
你说的是那个RA8876的10.1寸屏吗,那个屏我没有用过。
回复

使用道具 举报

17

主题

121

回帖

172

积分

初级会员

积分
172
发表于 2016-11-28 11:29:20 | 显示全部楼层
@eric2013老大帮忙解答一下以下两个问题
V6-512_STemWin实验_2D图形库之流位图绘制(RTOS)例程
     1、  把emwin初始化
    GUI_Init(); 函数 放到 开始任务里面(也就是bsp_Init(); 之后或者BSP_Tick_Init();  之后) 图片不显示是原因?
   2、显示图之前图片短时乱码(上传了小视频 VID20161128110345.zip (6.28 MB, 下载次数: 71) )是什么原因?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
 楼主| 发表于 2016-11-29 10:32:55 | 显示全部楼层

回 王小波 的帖子

王小波:@eric2013老大帮忙解答一下以下两个问题
V6-512_STemWin实验_2D图形库之流位图绘制(RTOS)例程
     1、  把emwin初始化
    GUI_Init(); 函数 放到 开始任务里面(也就是bsp_Init(); 之后或者BSP_Tick_Init();  之 .. (2016-11-28 11:29) 
不太清楚你的是什么回事,帮顶。
回复

使用道具 举报

17

主题

121

回帖

172

积分

初级会员

积分
172
发表于 2016-11-29 11:20:11 | 显示全部楼层
@eric2013    谢谢你。不管是不是客户都有问必答,这才叫技术支持。其他家多数都是样子,问了也是白问和没有技术支持一样。emwin 2.0 里面  LCDConf_Lin_Template.c 文件能不能细讲一下,会不会出书?我珍藏一本。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115778
QQ
 楼主| 发表于 2016-11-29 11:28:32 | 显示全部楼层

回 王小波 的帖子

王小波:@eric2013      谢谢你。不管是不是客户都有问必答,这才叫技术支持。其他家多数都是样子,问了也是白问和没有技术支持一样。emwin 2.0 里面  LCDConf_Lin_Template.c 文件能不能细讲一下,会不会出书?我珍藏一本。 (2016-11-29 11:20) 
看看后面是否时间充足,充足的话,我深入整理下。
回复

使用道具 举报

17

主题

121

回帖

172

积分

初级会员

积分
172
发表于 2016-11-29 12:53:42 | 显示全部楼层

回 eric2013 的帖子

eric2013:看看后面是否时间充足,充足的话,我深入整理下。 (2016-11-29 11:28) 
[s:151]
回复

使用道具 举报

57

主题

908

回帖

1079

积分

至尊会员

积分
1079
发表于 2019-2-10 16:32:34 | 显示全部楼层
感觉精通emwin都不错了。。。tfx没精力搞了。。
得看tfx有没有本质上的飞跃。
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-17 16:57 , Processed in 0.347283 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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