河南科技大学毕业设计(论文)
基于 STM32 的人机界面(HMI)的设计
摘 要
随 着 工 业 控 制 技 术 的 蓬 勃 发 展 , 人 机 界 面 ( Human-Machine Interface,
HMI)的需求量正在大幅度的增加,人机界面是系统和用户之间进行信息交
互与交换的媒介,实现信息的内部形式与人类可以接受形式之间的转换。
传统的以工控机为核心的人机界面,由于体积大、成本高、接口简单、
稳定性差等缺点,已越来越不适用。随着工业自动化设备迅速的向智能化、
小型化发展,现代测量需要一种便携式手持计算机系统,来完成实时测量要
求。
本设计以 STM32F103VCT6 为核心,通过 FSMC 接口连接 4.3 寸真彩显
示屏,采用微处理器的 SPI 接口,读取 SD 卡存储的字库信息的方法,完成
基于 ARM 平台的硬件电路设计,该系统支持多种通讯接口,如 SPI,RS-232,
RS-485。自主开发嵌入式图形用户界面系统,开发了一套嵌入式图形用户界
面基本图形库,该图形库不依赖于任何特殊硬件,包括画直线、折线、矩形、
正方形、圆形、圆弧、多边形等图形操作以及各种图形的填充,此外还有窗
口、菜单、按钮、对话框等的显示和操作。达到了嵌入式系统中用户界面的
简洁性、美观性、易操作性的要求。FATFS 文件系统与 Windows 下的 FAT
文件系统兼容,其代码和工作区占用空间小,不依赖于平台,易于移植。 移
植 FATFS 文件系统,这样程序全部以文件的形式处理,简化了数据处理的难
度。
实践表明,本设计能够提高设备开发效率、节省维护成本、丰富人机交
互信息。实现了预期的方案,达到了设计目标,也为以后科研成果的商品化
创造了条件。
关 键 词:人机界面,微处理器,STM32,显示屏
I
河南科技大学毕业设计(论文)
DESIGN OF HUMAN-MACHINE INTERFACE
BASED ON STM32
ABSTRACT
With the rapid development of the technology of industrial control, the
demand for human-machine interface ( Human-Machine Interface, HMI ) is
greatly increasing, the human-machine interface is the medium of exchange
between the system and the user, realizes the conversion between information
internal forms and human acceptable forms.
The
traditional
industrial control computer as
the core of
the
human-machine interface, due to the shortcomings of large volume, high cost ,
simple interface and poor stability ,has become increasing not applicable. With
the rapid industrial automation equipment to the development of intelligent,
miniaturized,modern measurement requires a portable handheld computer system,
to complete the real-time measurement requirements .
This design takes STM32F103VCT6 as the core, connecting with 4.3 inch
color screen through the FSMC interface, using the SPI interface microprocessor
reading SD card storage font information method, and it realizes the platform
hardware circuit design based on ARM. The system supports a variety of
communication
interface,
such as SPI, RS-232, RS-485.
Independent
development of embedded graphic user interface system developes a set of
embedded graphical user interface basic graphics, the graphics library does not
depend on any special hardware, including straight line, fold line, rectangle,
square, circle, arc, polygon graphics and a variety of graphics filled, in addition
to display and operation of windows, menus, buttons, dialog. It reachs the
requirements of simplicity, beauty, easy operability in embedded system user
interface. The FATFS file system is compatible with Windows FAT file system,
its code and work area occupies small space.It is not dependent on the platform
II
河南科技大学毕业设计(论文)
and easy to transplant. After the transplant of the FATFS file system, the program
must be processed in the form of the file, simplifying the difficulty of data
processing
The practice shows that this design can improve development efficiency,
saves the maintenance cost of equipment, enrich interactive information. And it
achieves the desired solution, reaches the design object and also creates a
condition for the future of scientific research commercialization.
KEY WORDS:human-machine interactive,microprocessor,STM32,liquid crystal
display
III
河南科技大学毕业设计(论文)
目 录
前 言 ................................................................................................ 1
第 1 章 绪 论 .................................................................................. 2
§1.1 课题研究的目的及意义 ......................................................... 2
§1.2 国内外研究现状及发展趋势 ................................................. 2
§1.3 本课题研究的主要内容 ......................................................... 5
第 2 章 系统的方案设计 ................................................................... 6
§2.1 总体方案设计 ........................................................................ 6
§2.2 硬件电路设计 ........................................................................ 7
§2.3 软件设计 ................................................................................ 7
第 3 章 系统硬件设计 ....................................................................... 9
§3.1 总体框图设计 ........................................................................ 9
§3.2 电源模块设计 ........................................................................ 9
§3.3 STM32 微处理器模块设计 ................................................... 11
§3.3.1 STM32 功能介绍及设计 ................................................ 11
§3.3.2 电源 ............................................................................... 11
§3.3.3 时钟电路 ........................................................................ 11
§3.3.4 复位电路 ........................................................................ 12
§3.4 CPLD 电路设计 .................................................................... 13
§3.4.1 CPLD 功能介绍及设计 .................................................. 13
§3.4.2 SRAM ............................................................................. 15
§3.4.3 JTAG 下载口 .................................................................. 16
§3.5 LCD 液晶屏模块设计 ........................................................... 16
§3.5.1 液晶屏接口 .................................................................... 16
§3.5.2 背光电路 ........................................................................ 17
§3.6 接口及下载口设计 ............................................................... 18
§3.6.1 SPI 接口设计 .................................................................. 18
§3.6.2 RS-485 接口设计 ............................................................ 18
IV
河南科技大学毕业设计(论文)
§3.6.3 RS-232 接口设计 ............................................................ 19
§3.6.4 TTL 电平接口设计 ......................................................... 20
§3.6.5 下载口设计 .................................................................... 20
§3.7 SD 卡设计 ............................................................................. 21
§3.8 按键设计 .............................................................................. 22
§3.9 温度传感器 .......................................................................... 23
§3.10 时钟电路设计 .................................................................... 24
§3.11 蜂鸣器设计 ........................................................................ 25
第 4 章 系统软件设计 ..................................................................... 26
§4.1 TFT 真彩液晶驱动 ............................................................... 26
§4.2 串口调试 .............................................................................. 29
§4.2.1 I2C 协议 .......................................................................... 29
§4.2.2.串口调试显示 ................................................................. 32
§4.3 图形库 .................................................................................. 33
§4.4 SD 卡的读写 ......................................................................... 33
§4.5 FatFs 文件系统的移植 .......................................................... 34
第 5 章 实验验证 ............................................................................. 39
结 论 .............................................................................................. 42
参考文献 .......................................................................................... 43
致 谢 .............................................................................................. 44
V
河南科技大学毕业设计(论文)
前 言
在工业控制领域中,传统的人机界面以工控机为核心,实时采集现场数
据,对机器进行自动控制,并全面的监视整个现场的生产运行情况。随着人
机界面技术的不断发展,这种人机界面已越来越不适合适用,主要表现在以
下几个方面:(1)体积大。在机器设备中安装一台工控机需要占据很大的空间,
已越来越不适合现代机器设备小型化的要求。(2)成本高。一台性能较好的工
控机价格不菲,这就加重了整个控制系统的成本,降低了企业利润。(3)接口
简单。一台通用的工控机一般只提供串口、并口等通用的接口,若需要使用
IIC、CAN 等设备总线时,需要另外增加接口卡,这无疑又增加了系统的成
本。(4)稳定性差。工控机普通的 windows 操作系统稳定性较差,不适合在稳
定性要求较高的工业现场使用。
随着计算机技术的飞速发展,为工业自动化发展带来了广阔的空间。在
工业控制领域中,越来越多的设备迅速的向智能化、小型化发展。因此,人
机界面的重要性也更加的突出了。而且在现代工业测量中,常会涉及到计算,
以满足不同的应用环境与测量要求,以往的方式是测量后期编辑软件在计算
机上实现,现代测量迫切需要一种便携式手持计算机系统,来完成实时的测
量要求,而这一系统中,中文人机界面成为一种事实上的行业标准。
实现显示汉字和图片的 TFT 液晶和可输入控制信号的小键盘已成为智
能设备必不可少的组成部分。同时作为便携式设备基本要求的低功耗特性也
贯穿于中文人机界面的设计始终,这种低功耗中文人机界面需要在选取处理
器和具体元器件上有特殊要求。微功耗、高性能应作为选择相关器件的首要
要求。
本文选用了基于 ARM 最新 Cortex-M3 内核的 STM32103VCT6[1-2]作为主
控芯片,选择 TFT 液晶模块,构建了一个高性能低功耗的中文人机界面系统。
1
河南科技大学毕业设计(论文)
第 1 章 绪 论
§1.1 课题研究的目的及意义
在工业控制领域中,传统的人机界面以工控机为核心,实时采集现场数
据,对机器进行自动控制,并全面的监视整个现场的生产运行情况。随着人
机界面技术的不断发展,这种人机界面已越来越不适合适用,主要表现在以
下几个方面:(1) 体积大。在机器设备中安装一台工控机需要占据很大的空
间,已越来越不适合现代机器设备小 型化的要求。(2) 成本高。一台性能较
好的工控机价格不菲,这就加重了整个控制系统的成本,降低了企业利润。
(3) 接口简单。一台通用的工控机一般只提供串口、并口等通用的接口,若
需要使用 IIC、CAN 等设备总线时,需要另外增加接口卡,这无疑又增加了
系统的成本。(4) 稳定性差。工控机普通的 windows 操作系统稳定性较差,
不适合在稳定性要求较高的工业现场使用。随着计算机技术的飞速发展,为
工业自动化发展带来了广阔的空间。在工业控制领域中,越来越多的设备迅
速的向智能化、小型化发展。因此,人机界面的重要性也更加的突出 了。
基于人机界面的微功耗,高性能等的选材特性 [3],采用基于 ARM 最新
的 Cortex-M3 内核的 STM32F103VCT6 作为主控芯片,该芯片实时性能优异,
功耗小,外设出众创新,集成度大。并支持多种串口通信接口通讯如 SPI,
232,485,422,使得人机界面(HMI)设备具有很强的数据联网和通讯能力。
并且体积小,成本低,稳定性好,能在环境比较恶劣的条件下,工作良好。
§1.2 国内外研究现状及发展趋势
1、国内外研究现状
人机界面(HMI)是人与计算机之间传递、交换信息的媒介,是用户使
用计算机系统的综合操作环境.通过人机界面,用户向计算机系统提供命令、
2
河南科技大学毕业设计(论文)
数据等输人信息,这些信息经计算机系统处理后,又通过人机界面把产生的
输出信息回送给用户。可见人机界面的核心内容包括显示风格和用户操作方
式,它集中体现了计算机系统的输人输出功能,以及用户对系统的各个部件
进行操作的控制功能。1973 年,PARC 成功的发明了 Xerox Alto,苹果的创始
人之一 Steve Jobs 于 1983 年研制成功了第一个 GUI 系统,1985 年微软公司
正式发布了第一代窗口式多任务系统-Window1.0 等。近年来,人机界面技术
的发展,嵌入式人机界面越来越受欢迎。当前,嵌入式系统 [4]的人机界面的
实现由下列几种方法:
(1)GUI 支持由应用程序完成,而不是作为一个软件层从应用程序中剥
离出来,采用这种方法,可以避免完整 GUI 的开发投入,但 GUI 代码与应
用程序代码混杂,程序结构不好,不便于调试,并导致大量的代码重复。
(2)采用嵌入式系统自带的 GUI。大多数嵌入式系统,如 Windows CE,
HOPEN 及 VxWorks,都自带了 GUI 支持。采用这种方法,可以加速简化嵌
入式软件系统的开发,但却使系统具有操作系统平台依赖性,可移植性差。
(3)移植成熟的开放源码 GUI 系统到自身嵌入式系统中,如 MiniGUI,
但这系统开发并不完善。
(4)自主研发的 GUI 系统,这种方法虽然增加 GUI 的开发投入,但却
能更好的满足特定系统的需求,有利于提高系统性能,大型厂商一般采用这
种方法。
本设计根据实际项目需要,采用第四种方法,结合硬件系统的特点,自
主开发嵌入式图形用户界面系统,开发了一套嵌入式图形用户界面 [5]基本图
形库,该图形库不依赖于任何特殊硬件,包括画直线、折线、矩形、正方形、
圆形、圆弧、多边形等图形操作以及各种图形的填充,此外还有窗口、菜单、
按钮、对话框等的显示和操作。达到了嵌入式系统中用户界面的简洁性、美
观性、易操作性的要求。
2、人机界面的发展趋势
人机界面的未来发展趋势是六个现代化:平台嵌入化、品牌民族化、设
备智能化、界面时尚化、通讯网络化和节能环保化。
3