OpenEdv-开源电子网

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

关于Gui移植完后,遇到了的问题,求大神指点

[复制链接]

31

主题

161

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
328
金钱
328
注册时间
2013-4-22
在线时间
7 小时
发表于 2014-10-14 15:49:20 | 显示全部楼层 |阅读模式
5金钱
      刚刚移植完了ucGui之后,下载进开发板了,结果显示出了问题,如图:


就是执行完 GUI_Init();之后,出现了如下问题:刷新只刷了这么多,没有刷全屏;
执行完了GUI_SetBkColor(GUI_BLUE);背景颜色并没有改变。不过显示文字和下面的那些没有什么问题。首先声明一下,我的液晶驱动代码,没有使用Gui使用 Lcd_Clear(RED);刷屏、然后显示图片文字都没有问题。所以底层驱动,应该没问题,不知道问题到底出现在哪儿,求大神指点一二
TFT_Lcd_Init();
LCD_LED_SET;//通过IO控制背光亮
// Lcd_Clear(RED);
GUI_Init();
GUI_SetBkColor(GUI_BLUE);
GUI_SetColor(GUI_RED);
GUI_Clear();
GUI_DrawCircle(100,100,50);  //画圆
GUI_GotoXY(10,10);      //设置坐标
GUI_DispString("Hello world!");  //显示文本
GUI_Clear();
GUI_SetFont(&GUI_Font8x16);
GUI_SetFont(&GUI_Font8x16);
GUI_SetBkColor(GUI_BLUE);
GUI_Clear();
GUI_SetPenSize(10);
GUI_SetColor(GUI_RED);
GUI_DrawLine(80,10,240,90);
GUI_DrawLine(80,90,240,10);
GUI_SetColor(GUI_WHITE);
GUI_SetTextMode(GUI_TM_NORMAL);
GUI_DispStringHCenterAt("GUI_TM_NORMAL",160,10);
GUI_SetTextMode(GUI_TM_REV);
GUI_DispStringHCenterAt("GUI_TM_REV",160,26);
while(1);

最佳答案

查看完整内容[请看2#楼]

横竖屏方向可能反了。
http://www.tudou.com/programs/view/h5G_H9Kpk04/?bid=03&pid=1&resourceId=375113802_03_05_01
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

9

主题

1385

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
11471
金钱
11471
注册时间
2013-3-8
在线时间
1226 小时
发表于 2014-10-14 15:49:21 | 显示全部楼层
横竖屏方向可能反了。
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2014-10-14 17:37:46 | 显示全部楼层
像楼上说的一样,横竖屏可能反了,刷屏就只能刷一部分
开往春天的手扶拖拉机
回复

使用道具 举报

31

主题

161

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
328
金钱
328
注册时间
2013-4-22
在线时间
7 小时
 楼主| 发表于 2014-10-14 17:48:51 | 显示全部楼层
回复【3楼】zuozhongkai:
---------------------------------
刚刚发现确实是这个问题,犯了低级错误,冒昧的问一下,ucGui支持横屏操作么,支持的话该怎么改代码,我把gui宏定义里面的那个定义屏幕尺寸的宏调换了一下,没反应
http://www.tudou.com/programs/view/h5G_H9Kpk04/?bid=03&pid=1&resourceId=375113802_03_05_01
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2014-10-14 20:00:18 | 显示全部楼层
横屏操作肯定是支持的,如果是用我们的代码的话,在LCD初始化函数LCD_Init()最后的部分改为横屏模式,调用LCD_Display_Dir(1)函数,然后修改ucgui的X,Y大小就行了
开往春天的手扶拖拉机
回复

使用道具 举报

31

主题

161

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
328
金钱
328
注册时间
2013-4-22
在线时间
7 小时
 楼主| 发表于 2014-10-14 20:12:49 | 显示全部楼层
我已经选择横屏模式操作了,然后ucGui里面的那个宏定义也改了,就是不对,我用的驱动不是原子大哥,我是以前的屏,有一个驱动,横、竖屏模式修改用得是一个宏,切换修改一下就可以了
http://www.tudou.com/programs/view/h5G_H9Kpk04/?bid=03&pid=1&resourceId=375113802_03_05_01
回复

使用道具 举报

31

主题

161

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
328
金钱
328
注册时间
2013-4-22
在线时间
7 小时
 楼主| 发表于 2014-10-15 09:52:24 | 显示全部楼层
麻烦事啊,我刚刚单步调试了一下,代码是按照逻辑跑得,就是使用横屏显示的话,当执行GUI_Init();的画线函数的时候,x一旦大于239也就是y轴的最大值得时候,就感觉不受控制,后面的刷不了屏了,就出现了如上图所示的情况,我的液晶驱动芯片是9341。还有声明一下,我试了不加gui的时候,横、竖屏显示都很正常,加了gui之后竖屏显示正常,横屏显示就出现了上图中的情况
http://www.tudou.com/programs/view/h5G_H9Kpk04/?bid=03&pid=1&resourceId=375113802_03_05_01
回复

使用道具 举报

31

主题

161

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
328
金钱
328
注册时间
2013-4-22
在线时间
7 小时
 楼主| 发表于 2014-10-15 10:46:29 | 显示全部楼层
我刚刚试了下裸跑的画点函数,横屏的确实没问题,我随意的点亮哪个点都没问题,试了x坐标大于239的点,也试了了小于239的,都能成功点亮lcd,但是加入了gui之后,进入了GUI_Init();我单步执行,最后执行到了我的画点函数,前239都能正常点亮,等待大于239在执行画点函数的时候,就发现不受控制了,我看了下坐标的的值,没问题,说明代码是按照逻辑跑的,实在是找不到问题了啊,求高手指导啊,折腾了一上午了
http://www.tudou.com/programs/view/h5G_H9Kpk04/?bid=03&pid=1&resourceId=375113802_03_05_01
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-23 04:48

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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