医疗呼吸机 +STONE 串口屏 +STM32

备注: 本项目旨在开发一款医疗呼吸机 +STONE 串口屏 +STM32 系统。在该项目中,用户可选择语言和功能,并通过随机数触发方式绘制呼吸波形。当按下按键时,MCU检测到按键信号,并通过串口将波形数据传输至STVC101WT-01 TFT。LCD屏幕接收数据命令后,自动分析并通过波形控制在屏幕上显示。屏幕还具备参数调节功能、呼吸机参数显示、读取呼吸机波形以及语音播报功能。

简要

随着医疗呼吸机短缺的加剧,中国制造的医疗呼吸机已成为国际市场的“硬通货”。

因此,我也顺应潮流,决定在手持设备上采用TFT LCD串口屏作为呼吸机显示屏,这非常适合。

这是一个串口屏幕。与STONE串口屏配合使用非常方便。最重要的是它简单易用,无需过多复杂的操作说明。其优势在于能够快速开发项目并抓住市场机遇。

ventilator-diagram

我使用STM32进行呼吸模拟,并采用stm32f103rct6进行开发。该模块支持串口或其他简单通信接口模式与STONE串口屏通信,并可实时绘制波形图。

医疗呼吸机+STONE串口屏 STM32项目功能

在此项目中,我们希望开发一款医疗设备——呼吸机。该项目可选择开发语言和功能,并通过随机数触发方式绘制呼吸波形。当按下按键时,MCU检测到按键信号,并通过串口将波形数据传输至HMI显示屏。LCD屏幕接收数据命令后,通过波形控制功能自动分析并显示在屏幕上。屏幕还具备调节功能和语音广播功能。

即以下功能

  1. 串口屏幕实现语言选择功能;
  2. 实现发送触摸命令和切换图片的功能;
  3. 单片微控制器实现数据命令上传功能;
  4. 实现实时波形显示功能。

功能确定后,选择模块型号

  1. STVC101WT-01用于屏幕端;
  2. stm32f103rct6用于单片微控制器;
  3. 语音广播模块。

硬件介绍与原理

扬声器

由于STONE串口HMI显示屏内置音频驱动器并预留了对应接口,可直接使用最常见的磁铁扬声器(俗称喇叭)。扬声器是一种将电信号转换为声信号的换能器。扬声器的性能对声音质量有重大影响。扬声器是音频设备中最薄弱的组件,但对于音频效果而言,它是最重要的组件。扬声器种类繁多,价格差异显著。音频电能通过电磁、压电或静电效应,使纸盆或振膜振动并与周围空气共振(共鸣)从而产生声音。

ventilator-diagram

STONE 串口屏 STVC101WT-01

  • 1英寸 1024×600 工业级 TFT 面板和 4 线电阻式串口屏;
  • 亮度为 300cd/m²,LED 背光;
  • RGB 色彩为 65K;
  • 视觉区域为7mm × 125.3mm;
  • 视觉角度为 70°/70°/50°/60°;
  • 使用寿命为20000小时。32位Cortex-M4 200Hz CPU;
  • CPLD EPM240 TFT-LCD控制器;
  • 128MB(或1GB)闪存;
  • USB接口(U盘)下载;
  • 图形用户界面设计工具箱软件,简单强大的十六进制指令。

基本功能

  • 串口屏控制/显示图像/显示文本/显示曲线/读写数据/播放视频和音频。适用于各种行业。
  • UART 接口为 RS232/RS485/TTL;
  • 电压为 6V-35V;
  • 功耗为0W;
  • 工作温度为 -20℃/+70℃;
  • 空气湿度为60%~90%。

STVC101WT-01模块通过串口与MCU通信,本项目中需使用该模块。只需通过上层计算机的菜单栏选项将设计的GUI图片添加至按钮、文本框、背景图片及页面逻辑,生成配置文件后,最终下载至显示屏运行。

除数据手册外,还提供用户手册、常用开发工具、驱动程序、部分简单示例程序、视频教程及测试项目文件。

STM32F103RCT6 EVB

Stm32f103rct6 开发板为用户提供了丰富的接口。相关参数:

  1. Arm 32位Cortex-M3处理器,最高频率72MHz;
  2. 最高 64KB SRAM 空间;
  3. 64 引脚,256KB FLASH;
  4. 板载 USB-TTL 串口,下载调试通信三合一;
  5. 板载 EEPROM、红外、JTAG。

评估板块分布

评估板块的详细描述

评估板块分布如下:

ventilator-diagram

键盘和串口示意图如下:

ventilator-diagram

STM32F103RCT6

  • 灵活的GPIO设计,32位MCU
  • 最大主频72MHz
  • 连接接口:CAN、I2C、IrDA、Lin、SPI、UART/USART、USB
  • FLASH:256KB
  • 400kSPS,12位,8通道辅助ADC
  • 电压电源(VCC/VDD):2V~6V

STONE TOOLbox 开发步骤

大致分为三个步骤:

  1. 使用STONE Toolbox(GUI设计软件)进行上位机软件设计;
  2. 实现MCU与串口屏幕之间的通信;
  3. 导入音频文件、图片文件。

STONE TOOLBox 安装

软件界面如下:

ventilator-diagram

Keil 安装

  1. 链接:https://www.keil.com/
  2. 下载后解压
  3. 解压后打开文件夹

双击 c51v900.exe 文件,在弹出对话框中点击“下一步”。一直点击“下一步”即可。

ventilator-diagram

STONE Tool 2019界面设计

使用已安装的2019版本工具,点击左上角的“新建项目”,然后点击“确定”。

随后将生成一个默认项目,默认背景为蓝色。选中该项目并右键点击,选择“删除”以移除背景。然后右键点击图片文件并点击“添加”以添加自定义图片背景,如下所示:

ventilator-diagram

制作开机图片

ventilator-diagram

首先,将所需图片导入项目,然后在设置中添加对应图片的序列号

ventilator-diagram

点击“确定”,随后需要添加视频控件,设置开机图片播放完毕后的跳转界面,并进行以下配置。

ventilator-diagram

制作语言选择界面

ventilator-diagram

在此处需添加一个弹出菜单控件,并将按钮效果设置为图片1,然后将图片2设置为弹出界面。接下来:

ventilator-diagram

分别添加按钮控件,并将键值修改为1和2。此处的键值主要用于在屏幕上显示所选语言,然后继续在界面0上添加一个按钮控件:

设置变量图标的最小值和最大值,并配置对应图片以实现菜单选择功能。

添加音频文件

这里需要制作按键声音效果。首先需获取音频数据。已开启呼吸机的声音效果功能。

ventilator-diagram

首先导入音频文件。

ventilator-diagram

然后在红色框内添加按钮操作控件,并添加图片跳转和音频文件0。

制作曲线

由于需要动态显示心率波形,需使用最重要的控件——曲线控件。并需配置呼吸机设置

ventilator-diagram

首先添加曲线控件,使其覆盖背景网格,然后根据网格像素宽度配置y轴中心位置和曲线通道。此处选择通道0。

因此,串口指令可按以下方式使用

0xA5, 0x5A, 0x06, 0x84, 0x01, 0x00, 0x05, 0x01, 0x05

擦除指令如下:

0xA5, 0x5A, 0x03, 0x80, 0xEB, 0x56

STM32F103RCT6开发

打开Keil并导入项目文件,如下所示:

ventilator-diagram

在此处需配置闪存算法以使用下载程序。点击选项找到闪存下载。算法修改如下:

ventilator-diagram

此处使用按钮和串口,因此修改代码如下:

#include "led.h"
#include "delay.h"
#include "sys.h"
#include "key.h"
#include "usart.h"
#include "stdbool.h"
#include "stdlib.h"
#define CMD_LEN     9//21
//uint8_t wave_cmd[CMD_LEN] = {0x00, 0x04, 0x00, 0x08, 0x00, 0x0C, 0x01, 0x00, 0x01, 0x04, 0x01, 0x08, 0x01, 0x0C, 0x02, 0x00};
//uint8_t wave_cmd[CMD_LEN] = {0x00, 0x04};
uint8_t wave_cmd[CMD_LEN] = {0xA5, 0x5A, 0x06, 0x84, 0x01, 0x00, 0x05, 0x01, 0x05};
uint8_t data_buf_bat[]     = {0xA5, 0x5A, 0x05, 0x82, 0x00, 0x18, 0xAA, 0x66};
uint8_t clr_cmd[6] = {0xA5, 0x5A, 0x03, 0x80, 0xEB, 0x56};
 int main(void)
 {
u8 t=0, coutn= 0, wave_flag = 0, i, j;   

如需完整流程,请联系我们:

https://www.stone-hmi.com//contact

我们将于24小时内回复您。

医疗呼吸机STONE串口屏STM32项目!!!

ventilator-diagram ventilator-diagram

    滚动至顶部