一个开源小型GUI移植到STM32F103上

2020-03-01 11:52发布

偶然间发现的一个小型GUI,看了GUI原作者的展示,效果不错,因此尝试移植到自己STM32F103的开发板上了。说他是小型的,一点不假。只有2个文件ugui.c和ugui.h,因为是小型的所以内容上就比较简单,此GUI主要就是实现了窗口控件、Button控件、CheckBox控件、TextBox控件、Image控件这几个,支持触摸操作。    该GUI的官方地址:http://embeddedlightning.com/ugui/
                        https://github.com/achimdoebler/UGUI
    包含文件:主要就是ugui.c和ugui.h
    移植也非常简单,先新建ugui_port.c文件,在里面实现LCD的画点、画线和单 {MOD}填充函数。如下:    然后main函数中初始化GUI。如下:    接着是创建窗口以及窗口内控件。然后调用初始显示哪个窗口。如下:    注意此时LCD还未显示绘制窗口,继续往下。要显示窗口必须在主循环或者定时中断中调用  UG_Update()  LCD显示刷新函数才能在屏幕上看到内容,否则屏幕上什么都不显示。还有触摸坐标更新在主循环或者定时中断中调用。我是在main主循环中调用屏幕更新和触摸更新的。如下:   还有就是实现窗口内控件的回调点击处理函数。 至此基本就完成了GUI的移植。窗口控件的回调函数如下:
    好了,移植完成了。现在来看看移植的效果吧。下面来几幅图欣赏一下:







工程源码:
TouchPanel_uggui.zip (1.32 MB, 下载次数: 1098) 2017-10-27 11:39 上传 点击文件名下载附件


0条回答

一周热门 更多>