MiniGUI移植s3c2440(二)IAL 触摸屏

1解决昨天的错误:

昨天晚上安装了库文件和资源文件,最后运行demo的例子时出现了错误:

 

最后去minigui的论坛上问了下斑竹,原来是配置选项错了,应该是320x240,即是"x",不是"*"。

(汗,真不知道这个 ”x“ 该怎么打出来。。。)

修改后,运行例子,可以了

 

2移植IAL引擎

步骤:

 

  • 步骤一:readpos编译执行,然后测试触摸屏的坐标数据
  • 步骤二:修改SMDK2410源程序2410.c
  • 步骤三:重新配置编译libminigui1.6.0
  • 步骤四:改写配置文件Minigui.cfg
  • 步骤五:复制库文件
  • 步骤六:编译mg-samples-1.6.10
  • 步骤七:运行例子

 

 

昨天IAL引擎是采用的dummy

 

由于我的arm板有触摸屏,因此要修改IAL引擎支持触摸屏

 

参考文章:

http://wiki.minigui.com/bin/view/Columns/HuangSHArticle2(用的是这篇文章)

http://wiki.minigui.com/bin/view/Columns/HuangSHArticle3(这篇文章有点复杂,没有参考)

 

注1:在第一篇文章中是采用SMDK2410作为IAL引擎,源文件为2410.c,但是按照文章上的方法后,运行例子会提示:

 

这是因为configure文件并没有支持SMDK2440引擎的配置,因此我把2410.c的代码复制到dummy.c文件里

(注意,在2410.c源代码中应该#endif /* _SMDK2410_IAL */,剪切到代码的最后,否则出错

注2:我的触摸屏分辨率是320*240,修改代码见附录

 

2.1 readpos编译执行,readpos.c见附录

将readpos.c程序放入/libminigui1.6.0/rea/ial,然后在终端输入:

 

这样得到readpos可执行文件,复制到板子上运行,然后点击触摸屏,它会显示出触摸屏读出来坐标

 

 

在dummy.c中定义了两个数组,如下

 

 

ts_position 意思为 TouchScreen的 坐标,display_position 意思为屏幕上显示的 坐标

我屏幕是320x240的,因此

display_position值为:{0,0},{0,239},{319,239},{319,0},即四个角的坐标,是从左上角逆时针方向

运行readpos,从左上角逆时针方向一次点击四个角得出对应的ts_position值

ts_position:{27,295},{210,295},{211,26},{26,26}

 

2.2修改SMDK2410源程序dummy.c

修改后的程序见附录

 

2.3重新配置编译libminigui1.6.0

 

 

2.4改写配置文件Minigui.cfg

 

 

2.5复制库文件

把/usr/local/arm/3.4.1/arm-linux/lib 中全部库拷到 arm根文件系统的/lib 目录下去,其实只要部分就可以了,但是现在不清楚,全部拷过去不会出错

 

2.6编译mg-samples-1.6.10

Samples for MiniGUI version 1.6.x

里面含有Helloworld等程序

 

编译好的例子在mg-samples-1.6.10/src,复制helloworld到arm板的文件系统里面

2.7运行例子

 

 

附录一:dummy.c

附录二:Readpos.c 程序,帮助你读取触摸屏的值

 

 

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值