【花雕学编程】行空板 K10 系列实验之屏幕显示的满屏变色与点线组合

2024-11-1787
AI 快速预览详细 收起
本文介绍了行空板K10的屏幕显示实验,包括满屏红蓝绿变色和随机点线组合。通过UNIHIKER_K10库,用户可以轻松设置屏幕背景颜色并在屏幕上绘制随机点线组合。这些实验适合零基础的新手入门,特别适合编程启蒙和STEM教育。

00 (01).jpeg

行空板K10是一款专为快速体验物联网和学习人工智能而设计的开发学习板,100%采用国产芯片,知识产权自主可控,符合信息科技课程中编程学习、物联网及人工智能等教学需求。该板集成2.8寸LCD彩屏、WiFi蓝牙、摄像头、麦克风、扬声器、RGB指示灯、多种传感器及丰富的扩展接口。凭借高度集成的板载资源,教学过程中无需额外连接其他设备,便可轻松实现传感器控制、物联网应用以及人脸识别、语音识别、语音合成等AI人工智能项目。

主要特点
集成摄像头&内置算法,可进行离线图像检测
集成麦克风&内置算法,可进行离线语音识别
集成扬声器&内置算法,可进行离线语音合成
2.8寸彩色屏幕,数据展示更清晰
集成度高,利于教学
接口丰富,兼容软件多,扩展性好

 

0-5.jpg

屏幕显示相关积木

 

03.jpg

用于设置屏幕显示方向,显示方向有4种,数字表示屏幕逆时针旋转的度数,每种显示方向对应着不同的坐标范围。
设置屏幕方向只能在初始化时设置,在其他位置设置不生效。

 

03=.jpg

 

显示方向及屏幕坐标对应图如下

 

03-.jpg

案例1
满屏红蓝绿变色

 

代码
// 引入UNIHIKER_K10库
#include "unihiker_k10.h"

// 定义屏幕方向变量和UNIHIKER_K10对象
uint8_t screen_dir = 3; // 屏幕方向
UNIHIKER_K10 k10;       // 创建UNIHIKER_K10对象

// 主程序的初始化部分
void setup() {
    k10.begin();               // 初始化UNIHIKER_K10
    k10.initScreen(screen_dir); // 设置屏幕方向
    k10.creatCanvas();         // 创建画布
}

// 主程序的循环部分
void loop() {
    k10.setScreenBackground(0xFF0000); // 设置屏幕背景颜色为红色
    delay(1000);                      // 延迟1秒
    k10.setScreenBackground(0x0000FF); // 设置屏幕背景颜色为蓝色
    delay(1000);                      // 延迟1秒
    k10.setScreenBackground(0x00FF00); // 设置屏幕背景颜色为绿色
    delay(1000);                      // 延迟1秒
}

Mind+图形编程

 

03-1.jpg

实验场景图  动态图

 

00026.gif

实验场景图  

 

03-2.jpg

案例2
显示随机点线组合

代码
#include "unihiker_k10.h"  // 引入UNIHIKER_K10库

// 创建对象
uint8_t screen_dir = 2;  // 定义屏幕方向
UNIHIKER_K10 k10;        // 创建UNIHIKER_K10对象

// 主程序开始
void setup() {
    k10.begin();                   // 初始化UNIHIKER_K10
    k10.initScreen(screen_dir);    // 设置屏幕方向
    k10.creatCanvas();             // 创建画布
    k10.canvas->canvasSetLineWidth(5); // 设置画布线宽为5
    k10.setScreenBackground(0x330033); // 设置屏幕背景颜色为紫色
}

void loop() {
    // 在屏幕上随机绘制60个白色点
    for (int index = 0; index < 60; index++) {
        k10.canvas->canvasPoint((random(0, 240 + 1)), (random(0, 320 + 1)), 0xFFFFFF);
        k10.canvas->updateCanvas();
    }
    k10.canvas->canvasClear(); // 清空画布

    // 在屏幕上随机绘制10条从上到下的青色线段
    for (int index = 0; index < 10; index++) {
        k10.canvas->canvasLine((random(0, 240 + 1)), 0, 240, (random(0, 320 + 1)), 0x00CCCC);
        k10.canvas->updateCanvas();
    }
    k10.canvas->canvasClear(); // 清空画布

    // 在屏幕上随机绘制10条从左到右的粉红色线段
    for (int index = 0; index < 10; index++) {
        k10.canvas->canvasLine(0, (random(0, 320 + 1)), (random(0, 240 + 1)), 320, 0xFFCCCC);
        k10.canvas->updateCanvas();
    }
    k10.canvas->canvasClear(); // 清空画布
}

Mind+图形编程

 

03-3.jpg

实验场景图  动态图

 

00027.gif

实验场景图  

 

03-4.jpg
03-5.jpg
03-6.jpg

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -