单片机 + 图像处理芯片 + TFT彩屏 指示灯控件

指示灯控件使用说明

简介

这是一个基于单片机 + RA8889/RA6809图形处理芯片的指示灯的控件库,用于在TFT显示屏上显示各种状态的指示灯。该控件支持多种状态显示,包括正常、警告、错误和停止等状态,并支持自定义标签显示。

功能特点

  • 支持多种状态显示(正常、警告、错误、停止),也可以自定义
  • 可自定义指示灯大小
  • 支持标签显示
  • 支持动态状态切换
  • 支持创建多个指示灯

硬件环境要求

  • MCU: 51/ARM等不限(测试平台使用:STC8H8K64U)
  • 图形处理芯片(Micro GPU): RA8889/RA6809
  • 显示屏: TFT液晶屏(演示采用:1024x600)

文件结构

复制代码
指示灯控件
│
├── main.c  # 示例应用程序
├── widget/
│   ├── indicator_light.c    # 指示灯控件实现
│   └── indicator_light.h    # 指示灯控件头文件
└── RA8889_01_Kernel/
    ├── RA8889_51.c      # RA8889底层驱动
    ├── RA8889_51.h
    ├── RA8889_API_51.c  # RA8889 API实现
    ├── RA8889_API_51.h
    └── UserDef.h        # 用户定义配置

使用方法

1. 初始化

在使用指示灯控件之前,需要先进行初始化:

c 复制代码
Indicator_Init();

2. 添加指示灯

使用Indicator_Add函数添加指示灯,参数说明:

  • x: 指示灯X坐标
  • y: 指示灯Y坐标
  • radius: 指示灯半径
  • status: 指示灯状态(DEVICE_STATUS_NORMAL/WARNING/ERROR/STOP)

示例:

c 复制代码
unsigned char led_id = Indicator_Add(400, 210, 60, DEVICE_STATUS_WARNING);

3. 设置标签

使用Indicator_Setlabel函数设置指示灯标签:

c 复制代码
Indicator_Setlabel(led_id, "LABEL", label_color);

4. 绘制指示灯

使用Indicator_Draw函数绘制指示灯:

c 复制代码
Indicator_Draw(led_id);

5. 状态切换

使用Status_Change函数切换指示灯状态:

c 复制代码
Status_Change(led_id, status);

状态说明

  • DEVICE_STATUS_NORMAL: 正常状态
  • DEVICE_STATUS_WARNING: 警告状态
  • DEVICE_STATUS_ERROR: 错误状态
  • DEVICE_STATUS_STOP: 停止状态

示例代码

c 复制代码
// 初始化
Indicator_Init();

// 添加指示灯
unsigned char led_id = Indicator_Add(400, 210, 60, DEVICE_STATUS_WARNING);

// 设置标签
Indicator_Setlabel(led_id, "WARNING", color16M_black);

// 绘制指示灯
Indicator_Draw(led_id);

// 状态切换
Status_Change(led_id, DEVICE_STATUS_ERROR);

注意事项

  1. 使用前确保已正确初始化RA8889显示芯片
  2. 指示灯ID从0开始计数
  3. 标签文本长度建议不超过10个字符,以确保显示效果

源码下载

请看到视频最后。

视频介绍

单片机-RAIO液晶控制芯片-指示灯控件

相关推荐
逐步前行8 小时前
STM32_TIM_寄存器操作
stm32·单片机·嵌入式硬件
0南城逆流08 小时前
【STM32】知识点介绍七:PWM功能
stm32·单片机·嵌入式硬件
智者知已应修善业8 小时前
【51单片机独立按键控制数码管移动反向,2片74CH573/74CH273段和位,按键按下保持原状态】2023-3-25
经验分享·笔记·单片机·嵌入式硬件·算法·51单片机
我是一棵无人问荆的小草9 小时前
单片机通电后延迟启动策略
单片机·嵌入式硬件
坏柠9 小时前
ESP32-S3 蓝牙 BLE 从零到一:广播、服务、特征,用一个智能灯的例子全讲透
嵌入式硬件
日更嵌入式的打工仔10 小时前
UART RX为什么要上拉
单片机
三佛科技-1873661339712 小时前
FT32F030F6AP7高性能32位RISC内核MCU解析(兼容STM32F030K6TP7)
stm32·单片机·嵌入式硬件
LCMICRO-1331084774613 小时前
长芯微LDC90810完全P2P替代ADC128D818,是一款八通道系统监控器,专为监控复杂系统状态而设计。
stm32·单片机·嵌入式硬件·fpga开发·硬件工程·模数转换芯片adc
嵌入式老菜鸟qq12524277314 小时前
关于S2-LP休眠
单片机·嵌入式硬件·mcu·射频工程
SUNNYSPY00114 小时前
65R310-ASEMI超结MOS管TO-252封装
单片机