【开源】项目实战一:51单片机&迪文DGUS屏之DGUS工程的建立
大家好,我是微信公众号『芯知识学堂』的SingleYork,之前在『电子芯吧客』论坛有发表过51单片机与迪文DGUS屏通信的基本例程,在这里也给大家分享一下,欢迎喜欢我或者喜欢工控的小伙伴们持续关注哟……有问题可以直接站内私信或者向我提问,互相交流一下心得和经验……一、项目背景
如上图所示,迪文DGUS屏与单片机通过串口通信,来获取单片机板输入输出状态、AD电压值,同时可以通过迪文DGUS屏实现按键控制控制板的输出,并且可以进行一些参数的设定。
二、准备工作
[*]迪文4.3寸触摸屏一个,分辨率480*272
[*]24V开关电源或可调电源 1 个
[*]界面图片4 张 分辨率480*272 bmp格式(一定要是bmp格式的,否则不能识别)
[*]迪文DGUS工具
[*]TF卡 1 张 (8G或以下,带读卡器)
[*]STC15系列控制板 1 块
[*]USB转RS232串口线
[*]串口助手
三、能力要求
[*]图形界面设计,最好是会试用coreldraw、PS等设计软件
[*]熟悉STC15系列单片机的基本使用
[*]串口助手的基本使用
[*]熟悉迪文DGUS组态软件基本操作
[*]熟悉迪文DGUS屏的基本指令
如果你手上恰好有上述工具,同时你也具备了相应的能力,那么,恭喜你,在看完本例程后,关于单片机跟迪文DGUS屏的应用,你基本能独立完成了。话不多说,且跟着笔者的节奏,动起你的小手来完成这个小项目吧。
关于这个项目,笔者分两个部分进行讲解,即:DGUS工程和单片机程序,我们现在先做第一部分,迪文DGUS工程的设计。首先,我们打开迪文DGUS工具,新建一个DGUS工程文件:
这时会“屏幕属性设置”对话框,需要我们选择屏幕尺寸以及DGUS工程存放的路径,这里尺寸我们选择480*272,因为我们用的是4.3寸的DGUS屏,它的分辨率就是这个。路径的话根据自己的实际情况选择就好了。
这个时候,我们可以看到,新建的DGUS工程文件是空白的:
先不急着添加其他东西,我们先对DGUS工程进行一些简单的配置,点击工具栏中的“配置”选项,弹出以下界面:
然后,跟着上图,从第一步到第六步依次设置就好了。其中:
[*]“串口波特率”即:单片机跟DGUS屏通信时的波特率。
[*]“串口帧高字节”、“串口帧低字节”,即:串口通信时通信质量的帧头高字节和低字节,关于这个帧头,可以参考《迪文的DGUS指令说明》文档,里面介绍的很详细。
[*]“触摸屏录入参数后自动上传到串口”,这个选项是针对DGUS屏的触控变量而言的,只有选中了这个参数,在对触控变量操作的时候,DGUS屏才会立即将指令发送给单片机。
[*]“初始变量由22(0x16)字库文件决定”,这个选项主要是针对一些变量的初值的设定,如果不选中这个选项的话,那么所有变量的初值都会是0,所以,在某些场合下,如果需要将变量初值设置成非0的数的话,这个选项是必要的。
[*]“运行周期”,这个变量主要是配置DGUS屏的运行周期,最快可以选择80ms,大家可以根据实际需要选择,笔者这里选择的是120ms。
以上参数配置完毕后,我们点击“输出配置文件”即可。
配置文件成功生成后,我们可以在DGUS工程的DWIN_SET文件夹下看到多出了一个CONFIG.txt的文件,这个就是我们所谓的配置文件。这里顺便说一下,跟迪文DGUS工程相关的所有文件,都是存放在DWIN_SET文件夹中的,我们下载触摸屏程序的时候,也只需要将整个DWIN_SET文件夹复制到SD卡就好了。
接下来,我们就要开始往DGUS工程中添加我们需要的文件了,我们将提前准备好的跟项目相关的4张图片复制到DWIN_SET文件夹中,这里特别需要注意的就是,图片的分辨率一定要跟触摸屏的分辨率一直,即,是480*272,否则显示就会错乱。另外,关于迪文DGUS屏文件的命名,请仔细查阅《迪文DGUS屏开发指南V43》,总是这里笔者要提醒大家的就是:文件名的前缀的数字,不是随便想怎么改就怎么改的!
接下来,我们开始往DGUS工程中添加图片,如下图所示,在DGUS软件中点击“增加”选项:
在弹出的对话框中,选择之前我们存放图片的DWIN_SET文件夹,全选里面的四张图片(也可以一张一张添加,这里笔者选择一次性全部添加),然后点击“打开”按键即可添加全部图片:
然后,我们便可以在DGUS软件里面看到选中的四张图片被成功添加了进来:
至此,一个新的工程就建立好了,那么,在下一讲中,笔者就要跟大家继续介绍如何往这个工程中添加一些组态控件,以及几个常用的控件的基本使用。
温馨提示:
如果你在看本文有任何疑问,或者对工控、硬件设计、单片机比较感兴趣,欢迎站内私信或提问,本项目讲解完毕成后,将会在社区提供跟本项目相关的所有资料下载。
感谢分享写的很好 通俗易懂 :lol:lol:lol:lol:lol:lol:lol干得漂亮 感谢分享 感谢分享
:handshake 感谢分享
感谢感谢
页:
[1]