你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于ST-emWIN的实时数据采集系统(NUCLEO-F411RE)  

[复制链接]
原来是他 发布时间:2015-8-11 14:50
一、应用背景
在一些控制项目中,需要对温度,压力及其它模拟量进行采集,采集到的数据能够实时的显示出来,而采用上位机界面实现成本较高,通常要额外的电脑或者其它硬件,采用TFT 液晶屏是一种比较理想的方式,从目前常用的3.2 寸/4.3 寸/5.7 寸/7 寸触摸屏都能很好的实现实时数据显示,实现硬件的成本低。
二、功能描述
本实时数据采集系统实现的功能如下:
1、  采用 ST_emWIN 图形库来实现GUI 界面,其中用到了按钮,图表,文字,列表项等多种控件。emWin 图形库由德国SEGGER 公司开发,可为图形LCD 设计提供高级支持。它适用单任务或是多任务系统环境。架构基于模块化设计,由不同的模块中的不同层组成。包括液晶驱动模块,内存设备模块,窗口系统模块,窗口控件模块,反锯齿模块和触摸屏及外围模块。其主要特性包括丰富图形库,多窗口、多任务机制,窗口管理及丰富窗口控件类(按钮、检验框、单/多行编辑框、列表框、进度条、菜单等),多字符集和多字体支持,多种常见图像文件支持,鼠标、触摸屏支持,灵活自由配制等特性。
         在移植emWIN 之前,需要做好LCD 驱动,这里采用的是SSD1289 控制器的3.2 寸LCD 模块。因为 NUCLEO-F411RE开发平台上面的MCU 为64 引脚,采用16 位方式和LCD 通信,这里用PB0-PB7 和PC0-PC7组合的方式实现16 位驱动。
         整个实时数据采集系统的GUI 界面由3 个窗口组成。最上面是状态窗口,在里面实现了标题和时间显示。下面是主窗口,在主窗口里面又分为两个部分:一部分是四个按钮,分别是【开始采集】、【停止采集】、【存储数据】、【时间设置】。因为没有增加SD 卡部分,这里无法使用XBF 字体来显示汉字,用英文字符表示。另一部分是波形显示窗口,左边是幅度值:0-3.3V。带网格显示,最多可以显示4096 个点。【开始采集】和【停止采集】的回调函数相对简单,分别由定时器控制波形数据的显示与停止。第三个窗口是数据记录窗口,它被隐藏在底部,由按钮【存储数据】的回调函数进行触发到顶部进行显示。数据记录窗口又由两个部分组成。左边是三个按钮,分别是【增加数据记录】【删除数据记录】和【确认返回】,右边是数据记录表,每一条记录由【当前时间头+采集数据】组成。若增加SD 卡驱动后,可以将记录实时保存到SD 卡中。最后一个按钮是【时间设置】,它在回调函数中,建立一个对话框,用于实现对实时时钟的【时:分:秒】进行修改,确定后,即可实时显示修改好的时间。具体的界面如下:
1.PNG
2.PNG
3.PNG
2、RTC 实时时钟:STM32F4 系列的实时时钟相对简单,比STM32F1 系列更加直观和容易设置。在NUCLEO-F411RE 上实现了年月日时分秒的数据,在界面上仅显示了时分秒。
3、 ADC 数据采集:因为是用于演示,用F411RE 自带ADC 模块实现一路DMA 方式的数据采集。在存储数据过程中,采用了“乒乓双缓冲”方式实现数据存储。
4、预留SD 卡存储功能:这个数据采集系统,要实现长时间数据存储,在不借助上位机的情况下,必须用SD 卡来实现。因为没时间做扩展板,所以硬件稍麻烦一点,软件上实现更快一些。建议存储空间在4G 以上,利用定时器控制,每隔100ms 向SD 卡保存一次数据。
5、额外功能:既然在TFT 上移植了emWIN,可以轻松实现其它一些小应用,比如简易计算
器。
4.PNG
三、硬件设计
此设计最大限度的利用了本身开发平台,没有外扩资源,仅用了一个外部可调电阻,使用了定时器,ADC,串口,SPI 等资源。
硬件比较简单:
5.PNG
四、软件设计
软件采用的是标准固件库进行开发,使用的是MDKV5.13 版本,跟以前相比,有一些变化。
整个工程文件如下:
6.PNG

在成功移植emWIN 之前,要自己完成一些驱动。
7.PNG

有了这些,emwiN 移植就比较容易了。
8.PNG

使用的是最新的 STemWIN5.26 固件库,程序最主要的内容是GUI_APP 文件,这个是多窗口和控件回调函数文件。因为使用了3 个窗口,1 个对话框窗口,多个控件,所以回调函数众多。这里仅截图部分,以说明:

1、创建状态窗口
9.PNG
2、状态窗口的回调函数
10.PNG

3、创建主窗口
11.PNG

4、主窗口的回调函数
13.PNG

5、创建记录窗口:
14.PNG

6、记录窗口的回调函数
15.PNG
五、总结
通过此次对STM32F411RE 的评估,看到了使用emWIN 时,在STM32F1 和STM32F4 性能上的一些差异。通过软件的使用和摸索,也看到了使用标准固件库和CubeFX 软件的差异。在ST 大力推广 CubeFX 的今天,逐步替换标准固件库也要慢慢启动了。
下面是一些其他效果附图:
16.PNG
17.PNG
19.PNG


源代码 核心代码文件.rar (12.98 KB, 下载次数: 305)
收藏 4 评论22 发布时间:2015-8-11 14:50

举报

22个回答
Paderboy 回答时间:2015-8-11 14:55:57
多谢分享。。。必须学习
dsjsjf 回答时间:2015-8-11 14:57:36
很强大,谢谢分享
mark0668 回答时间:2015-8-11 14:58:44
谢谢分享
Alliances 回答时间:2015-8-11 15:01:02
谢谢分享,赞一个。。。
安臣 回答时间:2015-8-11 15:09:01
纪念一下。要好好的学习了
creep 回答时间:2015-8-11 15:35:18
安臣 发表于 2015-8-11 15:09
纪念一下。要好好的学习了

记得你和宽哥都有这个板子。
沐紫 回答时间:2015-8-11 15:42:46
安臣 发表于 2015-8-11 15:09
纪念一下。要好好的学习了

你的头像好性感啊
你好我好大家好! 回答时间:2015-8-11 18:10:09
谢谢                                       
beill8888 回答时间:2015-8-12 08:05:24
谢谢分享      
123下一页

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版