OpenEdv-开源电子网

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

GUI加触摸屏的 在mini板子上跑

[复制链接]

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
发表于 2013-12-6 00:21:58 | 显示全部楼层 |阅读模式
在课余时间玩GUI有一段时间了,这几天终于告一段落,仅仅是把空间演示了一遍。为了减少和我一样初学者的 痛苦,为此我把我的这个例程上传上来,希望减少大家像我一样的痛,真的学这个的时候  移植不是太难,不加触屏时候 控件也不难,但是加了触摸屏后,我就一直卡这里了,没有例程,在百度上找资料也很无力,帮的很少,最后一个偶然的以后让我找到问题所在了,咱这论坛里有一哥们写了一个按钮触屏的,在mini板子跑着一直死机,当时问也没人说,找不到问题所在们其实就是在,取ad值的问题,如果把那个函数改成取ad值就好了。。。这是偶然发现的,因为那个哥们的例程,我相信了他,就没有怀疑过那个地方会出错,就找我控件的问题,直到我把控件写好,发给其他电友,他们说没问题时候 我才重新在底层找问题。就是在

int  GUI_TOUCH_X_MeasureX(void) 这个函数的问题,希望其他人不要再重犯我的歧途。不过还是谢谢那个大侠,要不是他我可能还是不能踏入触屏。

这个例子是实现了按钮,复选框,进度条,活动条  的功能,希望对初学者有用,大神们就不用看了 ,仅供初学者参考

touch.rar

1.62 MB, 下载次数: 4148

因为爱所以爱
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2013-12-6 09:37:38 | 显示全部楼层
回复【楼主位】lvoe倩99:
---------------------------------
谢谢分享,顶,弄出来就好。
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-6 12:06:53 | 显示全部楼层
回复【2楼】xiaoyan:
---------------------------------
应该的  不少在这里学到东西
因为爱所以爱
回复 支持 反对

使用道具 举报

53

主题

608

帖子

0

精华

高级会员

Rank: 4

积分
890
金钱
890
注册时间
2013-3-29
在线时间
18 小时
发表于 2013-12-6 18:54:35 | 显示全部楼层
回复【楼主位】lvoe倩99:
---------------------------------回复【楼主位】lvoe倩99:
---------------------------------
必须支持
学电子,学音乐!!
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-6 20:13:17 | 显示全部楼层
回复【4楼】XINSI:
---------------------------------
谢了,共同努力
因为爱所以爱
回复 支持 反对

使用道具 举报

32

主题

195

帖子

2

精华

高级会员

Rank: 4

积分
646
金钱
646
注册时间
2013-7-23
在线时间
1 小时
发表于 2013-12-7 08:03:14 | 显示全部楼层
下载了,学习,正好也可以补充一下我的触屏。谢谢喽,顶起!
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-7 15:00:35 | 显示全部楼层
回复【6楼】pizhihui1993:
---------------------------------
共同学习
因为爱所以爱
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-7 19:22:39 | 显示全部楼层
已加入ucos  初试   很爽!昨天因为MDK5害我鼓捣一天。。。唉,我的生命就这样少了一天
因为爱所以爱
回复 支持 反对

使用道具 举报

32

主题

195

帖子

2

精华

高级会员

Rank: 4

积分
646
金钱
646
注册时间
2013-7-23
在线时间
1 小时
发表于 2013-12-7 22:12:51 | 显示全部楼层
哈哈,系统看了,还没有实战,一起加油!
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-7 22:30:46 | 显示全部楼层
回复【9楼】pizhihui1993:
---------------------------------
嗯   3.90 的控件没有GRAPH    我再想是否再移植一遍3.98的
因为爱所以爱
回复 支持 反对

使用道具 举报

32

主题

195

帖子

2

精华

高级会员

Rank: 4

积分
646
金钱
646
注册时间
2013-7-23
在线时间
1 小时
发表于 2013-12-7 22:32:35 | 显示全部楼层
额?这个还没有深究到,正在慢慢研究ucgui中。。。。。
回复 支持 反对

使用道具 举报

20

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2013-3-20
在线时间
0 小时
发表于 2013-12-9 17:52:20 | 显示全部楼层
回复【楼主位】lvoe倩99:
---------------------------------
很好,顶一个!!!
有所志则有所成
回复 支持 反对

使用道具 举报

20

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2013-3-20
在线时间
0 小时
发表于 2013-12-9 18:00:26 | 显示全部楼层
回复【楼主位】lvoe倩99:
---------------------------------
我想只在屏幕上显示4个按钮(上下左右),能在楼主的程序中直接修改吗?还是要用uCGUIBulider画好图形界面后生成代码,复制到工程模板中呢?谢谢.
有所志则有所成
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-9 18:03:16 | 显示全部楼层
回复【13楼】stmlh:
-------------------------------
可以   直接修改就行
因为爱所以爱
回复 支持 反对

使用道具 举报

20

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2013-3-20
在线时间
0 小时
发表于 2013-12-9 18:17:13 | 显示全部楼层
请大虾指教,小弟不胜感激!!不知道从哪里下手
有所志则有所成
回复 支持 反对

使用道具 举报

20

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2013-3-20
在线时间
0 小时
发表于 2013-12-9 18:17:28 | 显示全部楼层
回复【14楼】lvoe倩99:
---------------------------------
请大虾指教,小弟不胜感激!!不知道从哪里下手
有所志则有所成
回复 支持 反对

使用道具 举报

20

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2013-3-20
在线时间
0 小时
发表于 2013-12-9 19:37:17 | 显示全部楼层
回复【14楼】lvoe倩99:
---------------------------------
app.c    buntun.c    simpwidow.c   simpwidow2.c   yun.c哪个需要改动呢?我用uCGUIBulider画好了一个界面,生成的Codes要放到以上哪个.c文件里呢?
有所志则有所成
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-9 20:05:14 | 显示全部楼层
回复【17楼】stmlh:
-----------------------------
随便这个放里面就好  然后声明一下 就可以用了
因为爱所以爱
回复 支持 反对

使用道具 举报

20

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2013-3-20
在线时间
0 小时
发表于 2013-12-9 20:15:39 | 显示全部楼层
回复【18楼】lvoe倩99:
---------------------------------
生成Codes后,我自己加了一个.c和.h文件到PROJECT文件夹下,编译通过,只是为什么触摸屏上不显示我的界面呢?
有所志则有所成
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-9 20:57:58 | 显示全部楼层
你就没分析 我写的例子            自己好好看看吧   我只是为了让学习方便,不要太懒,自己看看吧   不然你什么也学不到
因为爱所以爱
回复 支持 反对

使用道具 举报

6

主题

124

帖子

0

精华

初级会员

Rank: 2

积分
169
金钱
169
注册时间
2013-8-12
在线时间
0 小时
发表于 2013-12-12 12:51:20 | 显示全部楼层
回复【楼主位】lvoe倩99:
---------------------------------
谢谢分享,正在学
当你想到自己还一无所有的时候,请记得你还有梦想!
回复 支持 反对

使用道具 举报

20

主题

100

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2013-3-20
在线时间
0 小时
发表于 2013-12-12 14:12:47 | 显示全部楼层
回复【19楼】stmlh:
---------------------------------
恩恩
有所志则有所成
回复 支持 反对

使用道具 举报

15

主题

35

帖子

0

精华

初级会员

Rank: 2

积分
115
金钱
115
注册时间
2013-11-22
在线时间
0 小时
发表于 2013-12-16 11:05:29 | 显示全部楼层
我想问一下,你生成的按钮在长按的时候,按钮颜色有闪烁吗。我弄得按钮长按时一直闪,想弄成刚按时变颜色,长按过程中颜色不变,刚释放时再变回原来颜色的。不知道你的是哪样的,想借鉴一下。
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-16 12:39:36 | 显示全部楼层
回复【23楼】小楼:
---------------------------------
那个是在按钮的底层设置的,只要移植好  出来的就是 刚按时变颜色,长按过程中颜色不变,释放时再变回原来颜色的
因为爱所以爱
回复 支持 反对

使用道具 举报

15

主题

35

帖子

0

精华

初级会员

Rank: 2

积分
115
金钱
115
注册时间
2013-11-22
在线时间
0 小时
发表于 2013-12-16 13:48:36 | 显示全部楼层
回复【24楼】lvoe倩99:
---------------------------------
拜托大神指点一下,按钮的底层设置在哪几个文件内啊,我想用你程序的文件直接换过来,是不是只要改Widget和WM文件夹就可以了。拜托大神指点一下,我弄了很长时间了,也没弄好呢。
回复 支持 反对

使用道具 举报

6

主题

85

帖子

0

精华

高级会员

Rank: 4

积分
763
金钱
763
注册时间
2013-4-23
在线时间
119 小时
发表于 2013-12-16 19:47:03 | 显示全部楼层
不错的东西!
MJM_天行健,君子以自强不息;地势坤,君子以厚德载物;
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-16 23:31:16 | 显示全部楼层
回复【25楼】小楼:
---------------------------------
一会宿舍断网   明天看看给细说
因为爱所以爱
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-16 23:31:26 | 显示全部楼层
回复【26楼】MJM:
---------------------------------
谢谢
因为爱所以爱
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-17 14:44:56 | 显示全部楼层
回复【25楼】小楼:
---------------------------------
你弄好没有?
因为爱所以爱
回复 支持 反对

使用道具 举报

15

主题

35

帖子

0

精华

初级会员

Rank: 2

积分
115
金钱
115
注册时间
2013-11-22
在线时间
0 小时
发表于 2013-12-17 15:54:02 | 显示全部楼层
没有,我用的这个系统建的按钮全是闪的。你知道怎么弄吧。我改Widget和WM文件夹了,还是闪。
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-17 18:46:56 | 显示全部楼层
回复【30楼】小楼:
---------------------------------
例子下进去  也是这样吗?
因为爱所以爱
回复 支持 反对

使用道具 举报

15

主题

35

帖子

0

精华

初级会员

Rank: 2

积分
115
金钱
115
注册时间
2013-11-22
在线时间
0 小时
发表于 2013-12-17 21:02:15 | 显示全部楼层
我不是mini版子,就是想知道按钮闪不闪这一块是在程序的哪地方里面,好可以直接改。我逐步走,都走晕了。我看了,UCGUI的库函数都是一样的,可能在哪个配置C文件里面啊。我觉得你比我会的多,你知道吧?
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-18 12:59:18 | 显示全部楼层
回复【32楼】小楼:
---------------------------------
你q号多少 我加你
因为爱所以爱
回复 支持 反对

使用道具 举报

15

主题

35

帖子

0

精华

初级会员

Rank: 2

积分
115
金钱
115
注册时间
2013-11-22
在线时间
0 小时
发表于 2013-12-18 14:50:08 | 显示全部楼层
我号是406303883
回复 支持 反对

使用道具 举报

30

主题

705

帖子

1

精华

新手上路

积分
21
金钱
21
注册时间
2013-3-14
在线时间
52 小时
发表于 2013-12-19 13:37:44 | 显示全部楼层
mark
回复 支持 反对

使用道具 举报

19

主题

90

帖子

1

精华

高级会员

Rank: 4

积分
543
金钱
543
注册时间
2012-5-13
在线时间
40 小时
发表于 2013-12-19 19:26:21 | 显示全部楼层
回复【28楼】lvoe倩99:
---------------------------------
不错,好好学习一下。顶一个!
回复 支持 反对

使用道具 举报

19

主题

90

帖子

1

精华

高级会员

Rank: 4

积分
543
金钱
543
注册时间
2012-5-13
在线时间
40 小时
发表于 2013-12-19 19:33:26 | 显示全部楼层
回复【10楼】lvoe倩99:
---------------------------------
你的QQ加你一下。跟你学习一下。
回复 支持 反对

使用道具 举报

1

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
72
金钱
72
注册时间
2013-9-11
在线时间
5 小时
发表于 2013-12-21 19:04:47 | 显示全部楼层
好东西,正解燃眉之急,三克油。。。
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2013-12-21 19:26:24 | 显示全部楼层
回复【38楼】过境千帆ccy:
---------------------------------
加油
因为爱所以爱
回复 支持 反对

使用道具 举报

12

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2013-12-22
在线时间
1 小时
发表于 2013-12-24 08:12:12 | 显示全部楼层
mark 
回复 支持 反对

使用道具 举报

1

主题

13

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2013-12-30
在线时间
2 小时
发表于 2014-1-4 17:11:00 | 显示全部楼层
收藏,顶起。
宁静致远。
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2014-1-30
在线时间
0 小时
发表于 2014-1-30 10:40:18 | 显示全部楼层
楼主用的那个版本的keil,怎么没办法编译!
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2014-1-30 15:06:37 | 显示全部楼层
回复【42楼】我家店小二:
---------------------------------
3和4都用过  都可以
因为爱所以爱
回复 支持 反对

使用道具 举报

8

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2013-8-11
在线时间
0 小时
发表于 2014-2-21 16:06:47 | 显示全部楼层
回复【楼主位】lvoe倩99:
---------------------------------
你好,我用你的例子作为工程模板,不知道为什么创建不了窗口,代码很简单

#include "gui.h"
#include "math.h"
#include "stddef.h"
#include "delay.h"
#include "ROGBAR.h"  //进度条
#include "lcd9341.h"
#include "touch.h"
#include "BUTTON.h"
#include "WM.h"
#include "DIALOG.h"
#include "string.h"
#include "DROPDOWN.h"
#include "GUI_Protected.h"
//Mini STM32开发板范例代码10
//TFTLCD显示 实验
//正点原子@ALIENTEK
//技术论坛:www.openedv.com




static void cbForegroundWin(WM_MESSAGE* pMsg) {
  switch (pMsg->MsgId)
 {
  case WM_PAINT:
    GUI_SetBkColor(GUI_GREEN);
    GUI_Clear();
    GUI_DispString("Foreground window");
    break;
  default:
    WM_DefaultProc(pMsg);
  }
}
static void DemoRedraw(void) {
  GUI_HWIN hWnd;
  while(1)
   {
    /* Create foreground window */
    hWnd = WM_CreateWindow(10, 10, 100, 100, WM_CF_SHOW, cbForegroundWin, 0);
    /* Show foreground window */
    delay_ms(1000);
    /* Delete foreground window */
    WM_DeleteWindow(hWnd);
    GUI_DispStringAt("Foreground of window has not been redrawn", 10, 10);
    /* Wait a while, background will not be redrawn */
    delay_ms(1000);
    GUI_Clear();
 }
 }
 int main(void)
 {
     SystemInit();
     delay_init(72);      //延时初始化
     GUI_Init(); //GUI 初始化
 Touch_Init();
     DemoRedraw();
     while (1) ;
   }
GUI_WINSUPPORT   是定义为1的
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2014-2-26 17:14:03 | 显示全部楼层
回复【44楼】榆林:
---------------------------------创建完窗口后 应该调用窗口回调函数
hWnd = WM_CreateWindow(10, 10, 100, 100, WM_CF_SHOW, cbForegroundWin, 0); 
    /* Show foreground window */ 
    delay_ms(1000); 
  WM_Exec();



这样就可以了,你试试。刚开始就这样,加油!!!
因为爱所以爱
回复 支持 反对

使用道具 举报

8

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2013-8-11
在线时间
0 小时
发表于 2014-2-28 10:39:20 | 显示全部楼层
回复【45楼】lvoe倩99:
---------------------------------
恩,我还有个问题就是,创建对话框的时候如果使用GUI_ExecDialogBox()创建的话,当程序运行到这条语句时就卡到了这里,原因好像是它在不断的执行回调函数直到结束对话框为止,这样我的触屏功能加进去就没用了。如果GUI_CreateDialogBox()创建的话,触屏虽然能使用,但是回调函数中控件的功能就没用了,列如按 按钮 想在 编辑框 出现1.
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2014-2-28 13:40:50 | 显示全部楼层
GUI_CreateDialogBox()  用它创建以后   在他的基础上创建其他控件  句柄要一样  这样就可以了
因为爱所以爱
回复 支持 反对

使用道具 举报

8

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2013-8-11
在线时间
0 小时
发表于 2014-3-1 11:29:54 | 显示全部楼层
回复【47楼】lvoe倩99:
---------------------------------
恩,GUI_CreateDialogBox()  创建后实际是可以的,但就是按下按钮或者其他的控件后,控件释放不了,就跟你的程序中一样,按下按钮后,按钮弹不起来,我把WM_NOTIFICATION_RELEASED改成WM_NOTIFICATION_CLICKED,按钮就可以用了,我想知道怎么使控件释放
回复 支持 反对

使用道具 举报

8

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2013-8-11
在线时间
0 小时
发表于 2014-3-1 11:37:19 | 显示全部楼层
回复【47楼】lvoe倩99:
---------------------------------
没事了,我今天又下了你的历程,和以前的那个不一样,不知道以前的是不是这个,这个历程非常好,非常感谢啊!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1
回复 支持 反对

使用道具 举报

11

主题

127

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
220
金钱
220
注册时间
2013-7-14
在线时间
3 小时
 楼主| 发表于 2014-3-1 12:57:05 | 显示全部楼层
回复【49楼】榆林:
---------------------------------
嗯,不客气,我是在别人例程上修改的,他们给的例程不好上手,所以我就把修改后的传上来了
因为爱所以爱
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-23 17:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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