Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
RT-Thread一般讨论
关于新的RTGUI与lpc1788
发布于 2012-12-26 16:57:45 浏览:4710
订阅该版
刚刚完成1pc1788的新rtgui项目,老版本程序因为是第一次做的,做的不够好,所以重新优化架构编写代码,时间花得有些长了。 现在给出一些参考给大家: 硬件:1pc1788芯片驱动7寸(800*480 16位色)液晶屏,附带SPI串口、USBhost、SPI FLASH \ 按键未添加、 软件:自己编写的MODBUS协议(RTU\ASCII)、驱动、USB驱动、触摸驱动(我的硬件问题很多,一个菜鸟弄的,所以自己设计了一个算法)、项目相关协议与处理。 这是个简单点的硬件,所有难的地方仅仅是在软件上,当然,没有任何标准库,纯手工编写,量比较大。 要注意的是,我除了WINSDOWS,是没有使用RTGUI的控件的,所有按键与触摸事件自己管理。 从目前的情况看,新的RTGUI,表现很不错。 1.首先他解决掉了多个模态的问题,实际应用中我模态了两个窗口,然后它能正常按顺序退出, 这点不错,光是这个,就很值得升级了。 2.新的SPI驱动架构做的很好,除了满足一般操作,效率上也不会占用很高,抽象层有三层,当配和DMA时速度也有保证,速度只比以前慢一些,可以接受,当然,最重要的是采用了互斥量,稳定性很好,目前没出过问题- -不过我没试过一直读写,因为用不到。 3.加入了一个新的内存LCD驱动,所有读写都直接用这个驱动操作的时候,速度很快。 4.这次我为了防显示抖动特意去掉了以前的刷新方式,使用用了显示驱动的刷新事件行缓冲刷新,因为我新的代码效率很高,所有即使是采用全屏刷新的时候,也用不到0.8秒,当然,这已经是极限了,毕竟SDRAM速度不快,效率还是比不过STM32F407的16分之一,好在这个刷新是自动的,比较好用。 再说不足吧. 1.触摸事件传递bug依旧没改过来,因为你们是先判断控件在不在这个区域再处理事件,所以才会有按键起不来的情况。 2.系统还存在一些bug,等新版本希望已存在的BUG能解决掉 3.windows处理那块发现当一个窗口开始显示的时候会先显示一个框,这导致一个刷屏事件,比较浪费,因为本来不需要的,可惜我还没找到源头,不然会改掉。 4.没有了view反而感觉不方便了,效率没有view时候的高 因为我没有rt-realtouch,也不知道实际效果怎么样,不过LPC1788跑的话,目前情况看还是很不错的,可惜没有stm32f407,不然的话试试程序动态加载也不错,也想试试网络,还有很多功能我都没有去用过- -残念啊。。。。。继续加油,继续支持国产。 下载附件 [event.rar](https://oss-club.rt-thread.org/uploads/2052_522786bb51995db1be0e0b19335acec8.rar)
查看更多
14
个回答
默认排序
按发布时间排序
aozima
2012-12-26
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!多用整理的好的文字,比截图更省流量,还能在整理过程中思考。
>不然的话试试程序动态加载也不错 --- 1788也可以把动态加载用起来。
xiao苦
2012-12-26
这家伙很懒,什么也没写!
不行的哦,虽然能放在SDRAM,但是如果经常跑的线程在SdRAM跑,就会影响LCD的显示的,更何况动态加载代码也是在SDRAM。所以我所有线程都是静态的。
abled
2012-12-27
这家伙很懒,什么也没写!
你好, 文章很好啊!, 可惜我的技术薄弱还不能运用. 我有套1788的开发板, 选1788是因为emWIN图形库免费使用.emWiN的确很强大,触摸是基于消息控制的. 板子是ucos+emwin的系统. 我不想用ucos. 很想用rt-thread系统, 又不想放弃emwin图形库. 请问版主 有没有可能实现rt-thread+1788+emWIN的良好组合呢? 恭请答复.
bernard
2012-12-27
这家伙很懒,什么也没写!
>你好, 文章很好啊!, 可惜我的技术薄弱还不能运用. >我有套1788的开发板, 选1788是因为emWIN图形库免费使用.emWiN的确很强大,触摸是基于消息控制的. >板子是ucos+emwin的系统. 我不想用ucos. 很想用rt-thread系统, 又不想放弃emwin图形库. 请问版主 >有没有可能实现rt-thread+1788+emWIN的良好组合呢? >恭请答复. --- 我们元旦后会开始评估LPC4300,也会去评估下emWIN。如果需要在RT-Thread上跑emWIN,可以联系下NXP,他们有工程师在进行这个移植。
prife
2012-12-27
这家伙很懒,什么也没写!
楼主很赞!顶一下。 >1.触摸事件传递bug依旧没改过来,因为你们是先判断控件在不在这个区域再处理事件,所以才会有按键起不来的情况。 >2.系统还存在一些bug,等新版本希望已存在的BUG能解决掉 >3.windows处理那块发现当一个窗口开始显示的时候会先显示一个框,这导致一个刷屏事件,比较浪费,因为本来不需要的,可惜我还没找到源头,不然会改掉。 >4.没有了view反而感觉不方便了,效率没有view时候的高 --- 1. 问题1能否详述,原因设计哪个文件和相应源码能否给出? 2. 其他bug是否也能具体说明一下,以方便修复呢? 3. 同1. 4. view应该是改用notebook+container了吧,我使用了一下,感觉还蛮好用的。
nongxiaoming
2012-12-27
rt-thread大师兄
1788刷全屏没那么慢吧?
grissiom
2012-12-28
这家伙很懒,什么也没写!
问题1我有思路,大概知道 LZ 指的是什么~ 元旦的时候看看有没有时间修吧……
amsl
2012-12-28
这家伙很懒,什么也没写!
如果检测到鼠标点不在控件范围内,调用它的unfocus事件. PS:后来发现这个这个方法不行,更正一下.
xiao苦
2012-12-28
这家伙很懒,什么也没写!
问题1,是你们在传递事件 的时候先判断是否是在这个区域,如果 按下的点不在这个区域,那么,就不把事件传第过去,如果有确认点按下了,就不再判断后面的控件。 但是你们要考虑到,当一个控件如果先前已经按下了,那么它就该有不在这个点的时候的释放动作。而且,事件应该是遍历整个当前页面控件表的,不然也可以用以前的focus.当focus的时候,优先把事件传递给focus,如果focus没有或者返回RT_FALSE,再轮询给控件直到有RT_TRUE或着链表尾,但是必须把判断在不在这个点的这部分放到控件处理事件去,由控件自己判断并判断需不需要更新控件而不是在外面判断不在这个区域就跳过,这个本身就是不合理的。 至于我的,因为是自己管理的事件,应该没什么参考价值,不过文件会附上。 [attach]1637[/attach]
amsl
2012-12-28
这家伙很懒,什么也没写!
嗯,这个问题,不管鼠标点在不在控件区域内(主要是指按钮),如果当前有焦点,都要发送按钮事件,button会自动处理弹不起来的问题的. 貌似git上的rtgui没这毛病啊.
撰写答案
登录
注册新账号
关注者
0
被浏览
4.7k
关于作者
xiao苦
这家伙很懒,什么也没写!
提问
57
回答
244
被采纳
0
关注TA
发私信
相关问题
1
有关动态模块加载的一篇论文
2
最近的调程序总结
3
晕掉了,这么久都不见layer2的踪影啊
4
继续K9ii的历程
5
[GUI相关] FreeType 2
6
[GUI相关]嵌入式系统中文输入法的设计
7
20081101 RT-Thread开发者聚会总结
8
嵌入式系统基础
9
linux2.4.19在at91rm9200 上的寄存器设置
10
[转]基于嵌入式Linux的通用触摸屏校准程序
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
TinyUSB Demo运行教程
2
RT-Thread学习大礼包一键带走!
3
freemodbus从机调试说明
4
【1024】瑞萨 RA 系列 BSP 制作与适配最新版本的 Keil 、 RSC、固件,较新的 FSP
5
基于 RT-Thread 星火一号开发板的俄罗斯方块
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
ART-Pi
FinSH
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
ota在线升级
UART
cubemx
PWM
flash
packages_软件包
freemodbus
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
ulog
C++_cpp
at_device
本月问答贡献
用户名由3_15位
10
个答案
1
次被采纳
KunYi
4
个答案
1
次被采纳
踩姑娘的小蘑菇
2
个答案
1
次被采纳
bernard
1
个答案
1
次被采纳
rv666
1
个答案
1
次被采纳
本月文章贡献
出出啊
1
篇文章
2
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
4
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部