硬汉嵌入式论坛

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

[emWin] 使用emwin 显示字符 有黑点 ??

[复制链接]

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
发表于 2016-6-25 10:50:10 | 显示全部楼层 |阅读模式
最近在捣鼓 emwin v5.28 OS 的,目前基本能够显示出 字符,但是显示的字符有黑点,

这个显示有黑点是在 rtc 的显示里面,如果初始化后就显示貌似没有,这种情况是神马问题造成的啊 ??

图片1 没有在rtc任务里显示出来的字符效果,还行
无.png

下面的图片是在rtc 任务里面显示的,有黑点或者黑条

有1.png

有2.png

有3.png


emwin 底层显示函数

/*********************************************************************
*
*       Local functions
*
**********************************************************************
*/

static void LcdWriteReg(U16 Data) {

  FMC_LCD->REG = Data;
}

static void LcdWriteData(U16 Data) {
  FMC_LCD->RAM = Data;
}

static void LcdWriteDataMultiple(U16 * pData, int NumItems) {
  while (NumItems--) {
    FMC_LCD->RAM = *pData++;
  }
}

static void LcdReadDataMultiple(U16 * pData, int NumItems) {
  while (NumItems--) {
    *pData++ = FMC_LCD->RAM ;
  }
}


[sub][/sub][sup][/sup][strike][/strike]
回复

使用道具 举报

356

主题

2180

回帖

3253

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3253
发表于 2016-6-25 10:54:24 | 显示全部楼层
需要保证只有一个任务会调用液晶的显示函数。或者把emwin的任务优先级设为最高。

因为RA8875写个数据不是“原子操作。如果一个任务写RA8875一半的时候,另一个高优先级的任务抢占了,而且写了RA8875就会出现问题。
回复

使用道具 举报

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
 楼主| 发表于 2016-6-25 13:17:45 | 显示全部楼层

回 caicaptain2 的帖子

caicaptain2:需要保证只有一个任务会调用液晶的显示函数。或者把emwin的任务优先级设为最高。

因为RA8875写个数据不是“原子操作。如果一个任务写RA8875一半的时候,另一个高优先级的任务抢占了,而且写了RA8875就会出现问题。 (2016-06-25 10:54)
你好,目前我的emwin 除了显示一个rtc 时间外,没有干其他的什么事情,


U8 * aMemory ;   // 数据类型 使用 u32,u8 结果都是一样的
  aMemory =  ((U8 *) (0x68000000));     // 1  这样可以
aMemory =  ((U8 *) (0x68008000));     // 2  这样就不行【或为其他任意一个数值,比如,0x68180000, 0x68001000 等显示都会有黑点或者黑条】,显示就会出现黑点或者黑条的情况, 为什么啊 ???

外部的sram 是 2MByte的,应该最大是可以 到 1024*1024*2 = 0x20 0000 + 0x68000000 = 0x6820 0000,上面的使用应该是没有超出范围的吧 ???

  aMemory =  ((U8 *) (0x68100000));     //  地址从 0x6810 0000 开始,这样的也可以了【显示完全没有问题】。把外部sram 最后 1MByte 分配给emwin 使
用【前面的1MBye 留着解码图片音频等使用】,这是为什么啊 ?????
  GUI_ALLOC_AssignMemory( (void*) aMemory,  512*1024UL);   //此处的字节数最大只能够为 512x1024,不是说是按照字节算的嘛,怎么只能是512x1024,不能够 1024x1024 ????

  GUI_ALLOC_SetAvBlockSize(GUI_BLOCKSIZE);                //设置存储快的平均尺寸,该区越大,可用的存储快数量越少
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117586
QQ
发表于 2016-6-26 10:16:30 | 显示全部楼层

回 hpdell 的帖子

hpdell:你好,目前我的emwin 除了显示一个rtc 时间外,没有干其他的什么事情,


U8 * aMemory ;   // 数据类型 使用 u32,u8 结果都是一样的
....... (2016-06-25 13:17) 
还有这么奇葩的问题,也许有可能是SRAM的速度高了些,降低FSMC驱动SRAM的速度试试,另外你有测试使用内部SRAM吗,试试。
回复

使用道具 举报

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
 楼主| 发表于 2016-6-26 10:19:45 | 显示全部楼层

回 eric2013 的帖子

eric2013:还有这么奇葩的问题,也许有可能是SRAM的速度高了些,降低FSMC驱动SRAM的速度试试,另外你有测试使用内部SRAM吗,试试。 (2016-06-26 10:16)
使用单片机内部的 sram 完全正常,我分配50x1024, 25x1024,字节数就是按照分配的大小填入即可
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117586
QQ
发表于 2016-6-26 10:21:18 | 显示全部楼层

回 hpdell 的帖子

hpdell:使用单片机内部的 sram 完全正常,我分配50x1024, 25x1024,字节数就是按照分配的大小填入即可 (2016-06-26 10:19) 
那就降低SRAM的速度试试。
回复

使用道具 举报

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
 楼主| 发表于 2016-6-26 17:14:03 | 显示全部楼层

回 eric2013 的帖子

eric2013:那就降低SRAM的速度试试。 (2016-06-26 10:21)
降低sram 的 速度效果依旧,不知道你们有没有遇到这样的问题啊 ???
回复

使用道具 举报

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
 楼主| 发表于 2016-6-26 17:15:05 | 显示全部楼层

回 hpdell 的帖子

hpdell:使用单片机内部的 sram 完全正常,我分配50x1024, 25x1024,字节数就是按照分配的大小填入即可 (2016-06-26 10:19)
如果使用单片机内部 的 sram 的话, 50x1024, 25x1024确实是木有什么问题啊,但是我想是有外部的 sram ,你有什么好的方法或者办法没有啊 ??
回复

使用道具 举报

356

主题

2180

回帖

3253

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3253
发表于 2016-6-26 18:24:40 | 显示全部楼层
你这种问题,估计是和pcb布线,还有SRAM芯片本身有问题了。
回复

使用道具 举报

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
 楼主| 发表于 2016-6-27 10:01:52 | 显示全部楼层

回 caicaptain2 的帖子

caicaptain2:你这种问题,估计是和pcb布线,还有SRAM芯片本身有问题了。 (2016-06-26 18:24) 
你好,我使用的 sram 芯片 是  IS61WV102416BLL-10TL 这个型号的,如果这个型号的芯片木有问题,那可能就是pcb 布线的问题了
回复

使用道具 举报

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
 楼主| 发表于 2016-6-27 10:01:57 | 显示全部楼层

回 caicaptain2 的帖子

caicaptain2:
你这种问题,估计是和pcb布线,还有SRAM芯片本身有问题了。
你好,我使用的 sram 芯片 是  IS61WV102416BLL-10TL 这个型号的,如果这个型号的芯片木有问题,那可能就是pcb 布线的问题了
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-17 08:49 , Processed in 0.047811 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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