(SKU:DFR0597) 7x71 Flexible RGB LED Matrix

来自DFRobot Product Wiki
跳转至: 导航搜索

目录

简介

这款七彩柔性显示屏镶嵌了7x71颗RGB LED灯珠、采用柔性PCB板设计,使得它十分轻盈且可弯曲;板载MCU让数字和英文字母的显示方式更加简单,在脱离主控制器后可保持显示状态,能方便集成到你的项目中。适用于可穿戴领域,如:帽子、背包、衣服、裙子、鞋子、腰带、口罩等;物品类可用于钱包、乐器、杯子、花瓶、时钟摆件等,也常被用在一些广告墙、显示屏、节日装饰上。但请注意该产品不能过度(不超过30°)和反复弯曲,否则容易造成损坏。该屏幕的尺寸为269mm x 30mm,其中点阵尺寸为232mmx22mm,每颗LED的间距为3.2mm。(这款显示屏可显示数字和英文字母,如需显示中文,我们推荐使用DFR0598这款产品)。

  注意:
  1.可弯曲的PCB板不能超过30°的过度和反复弯曲,虽然我们认为该产品可以在可穿戴设备或其它弯曲的情况下工作,因使用不良造成的损坏,不提供保证或退款。
  2.UNO板可以驱动这个屏幕,但是当提高亮度后建议给屏幕单独提供5V电源,否则可能造成颜色不正常或显示异常。


技术规格

  • 工作电压:5.0V
  • 额定电流:< 500mA(全屏最高亮度)
  • 分辨率:7x71点
  • 模块尺寸:269mm x 30mm
  • 屏幕尺寸:232mm x 22mm
  • 像素点间距:3.2mm
  • 可显示颜色:红、黄、绿、青、蓝、紫、白、黑
  • 控制方式:串口通信

引脚说明

7x71 Flexible RGB LED Matrix
引脚说明
名称 功能描述
VCC 电源正极
GND 电源负极
RX 串口输入
TX 串口输出


函数库列表

设置显示信息

函数原型:bool setMessage(const char *message_)
  • 函数功能:在软屏上显示字符(字母、数字)
  • 参 数:
    • *message_:字符串,使用 "" 括起来,参数为字母、数字

例:

#include <Arduino.h>
#include <HardwareSerial.h>
#include <SoftwareSerial.h>
#include "DFRobot_SerialScreen771.h"

#ifdef ARDUINO_AVR_UNO
SoftwareSerial Serial1(2, 3); //RX, TX
#endif

DFRobot_SerialScreen771 screen;

void setup() {
    /*Initialize communication interface (Serial1) and debug interface (Serial)*/
    Serial.begin(115200);
    Serial1.begin(19200);
    screen.begin(Serial1);
    screen.setDbgSerial(Serial);
    /*Display string "DFRobot"*/
    screen.setMessage("DFRobot");
}

void loop() {

}

设置信息列表

函数原型:bool setMessageList(uint8_t banN, const char *message_);
  • 函数功能:设置8个信息列表
  • 参 数:
    • banN:序号
    • *message_:列表信息

例:

#include <Arduino.h>
#include <HardwareSerial.h>
#include <SoftwareSerial.h>
#include "DFRobot_SerialScreen771.h"

#ifdef ARDUINO_AVR_UNO
SoftwareSerial Serial1(2, 3); //RX, TX
#endif

DFRobot_SerialScreen771 screen;
const char *s = "DFRobot";
eMoveMode_t moveMode;

const char* M1 = "DFRobot";       //"A"
const char* M2 = "<CRY>DFRobot";  //"B"
const char* M3 = "Hi!";           //"C"
const char* M4 = "<CRY>Hello!";   //"D"
const char* M5 = "World!";        //"E"
const char* M6 = "66";            //"F"
const char* M7 = "77";            //"G"
const char* M8 = "88";            //"H"


void setup() {
    /*Initialize communication interface (Serial1) and debug interface (Serial)*/
    Serial.begin(115200);
    Serial1.begin(19200);
    screen.begin(Serial1);
    screen.setDbgSerial(Serial);
    /*Send 8 information lists to the serial screen*/
    screen.setMessageList(1, M1);
    screen.setMessageList(2, M2);
    screen.setMessageList(3, M3);
    screen.setMessageList(4, M4);
    screen.setMessageList(5, M5);
    screen.setMessageList(6, M6);
    screen.setMessageList(7, M7);
    screen.setMessageList(8, M8);
    /* Prints a list of "DFRobot" in the message list, and the data of the M0 message list*/
    screen.displayBanner("A");
    /*Print data of M8 information list*/
    //screen.displayBanner("H");
    /*Print data for M1 and M8 information lists*/
    //screen.displayBanner("AH");
    /*Display all information lists for M1~M8*/
    //screen.displayBanner("ABCDEFGH");
}

void loop() {

}

设置移动方式

函数原型:bool setMoveMode(eMoveMode_t m_);
  • 函数功能:设置显示信息的移动方式
  • 参 数:
    • eMove_left:左移
    • eMove_right:右移
    • eMove_hold:保持
    • eMove_down:下移
    • eMove_up:上移
    • eMove_flash:闪烁

例:

#include <Arduino.h>
#include <HardwareSerial.h>
#include <SoftwareSerial.h>
#include "DFRobot_SerialScreen771.h"

#ifdef ARDUINO_AVR_UNO
SoftwareSerial Serial1(2, 3); //RX, TX
#endif

DFRobot_SerialScreen771 screen;

void setup() {
    /*Initialize communication interface (Serial1) and debug interface (Serial)*/
    Serial.begin(115200);
    Serial1.begin(19200);
    screen.begin(Serial1);
    screen.setDbgSerial(Serial);
    delay(5);
    /*Display string "DFRobot"*/
    screen.setMessage("DFRobot");
    /*Set the move mode to hold*/
    screen.setMoveMode(eMove_hold);
}

void loop() {
    /*Switch a mobile display mode every 5s*/
    eMoveMode_t buf[]= {eMove_left,eMove_right,eMove_hold,eMove_down,eMove_up,eMove_flash};
    for(int i = 0; i < sizeof(buf)/sizeof(eMoveMode_t); i++){
        screen.setMoveMode(buf[i]);
        delay(5000);
    }
}

设置移动速度

函数原型:bool setMoveSpeed(eSpeedLevel_t s_)
  • 函数功能:移动速度
  • 参 数:
    • eSpeedLevel_1:Speed class 1
    • eSpeedLevel_2:Speed class 2
    • eSpeedLevel_3:Speed class 3
    • eSpeedLevel_4:Speed class 4
    • eSpeedLevel_5:Speed class 5
    • eSpeedLevel_6:Speed class 6
    • eSpeedLevel_7:Speed class 7
    • eSpeedLevel_8:Speed class 8

例:

#include <Arduino.h>
#include <HardwareSerial.h>
#include <SoftwareSerial.h>
#include "DFRobot_SerialScreen771.h"

#ifdef ARDUINO_AVR_UNO
SoftwareSerial Serial1(2, 3); //RX, TX
#endif

DFRobot_SerialScreen771 screen;
eBrightLevel_t bright;

void setup() {
    /*Initialize communication interface (Serial1) and debug interface (Serial)*/
    Serial.begin(115200);
    Serial1.begin(19200);
    screen.begin(Serial1);
    screen.setDbgSerial(Serial);
    delay(5);
    /*Display string "DFRobot"*/
    screen.setMessage("DFRobot");
    /*Set the display's movement mode to shift left*/
    screen.setMoveMode(eMove_left);
    /*Set the displayed moving speed level*/
    screen.setMoveSpeed(eSpeedLevel_1);
}

void loop() {

}

设置显示亮度

函数原型:bool setBrightness(eBrightLevel_t b_)
  • 函数功能:设置背光亮度
  • 参 数:
    • eBrightLevel_1:Brightness level 1
    • eBrightLevel_2:Brightness level 2
    • eBrightLevel_3:Brightness level 3
    • eBrightLevel_4:Brightness level 4
    • eBrightLevel_5:Brightness level 5
    • eBrightLevel_6:Brightness level 6
    • eBrightLevel_7:Brightness level 7
    • eBrightLevel_8:Brightness level 8

例:

#include <Arduino.h>
#include <HardwareSerial.h>
#include <SoftwareSerial.h>
#include "DFRobot_SerialScreen771.h"

#ifdef ARDUINO_AVR_UNO
SoftwareSerial Serial1(2, 3); //RX, TX
#endif

DFRobot_SerialScreen771 screen;

void setup() {
    /*Initialize communication interface (Serial1) and debug interface (Serial)*/
    Serial.begin(115200);
    Serial1.begin(19200);
    screen.begin(Serial1);
    screen.setDbgSerial(Serial);
    /*Display string "DFRobot"*/
    screen.setMessage("DFRobot");
    /*Set the brightness level of the display*/
    screen.setBrightness(eBrightLevel_1);
}

void loop() {
}

设置显示颜色

函数原型:bool setDispalyColor(eColorMode_t font_, eColorMode_t back_);
  • 函数功能:设置显示颜色(字体颜色、背景颜色)
  • 参 数:
    • eColorMode_t font_:字体颜色
    • eColorMode_t back_:背景颜色
      • eColor_red:红色
      • eColor_yellow:黄色
      • eColor_green:绿色
      • eColor_cyan:青色
      • eColor_blue:蓝色
      • eColor_purple:紫色
      • eColor_white:白色
      • eColor_black:黑色

例:

#include <Arduino.h>
#include <HardwareSerial.h>
#include <SoftwareSerial.h>
#include "DFRobot_SerialScreen771.h"

#ifdef ARDUINO_AVR_UNO
SoftwareSerial Serial1(2, 3); //RX, TX
#endif

DFRobot_SerialScreen771 screen;

void setup() {
    /*Initialize communication interface (Serial1) and debug interface (Serial)*/
    Serial.begin(115200);
    Serial1.begin(19200);
    screen.begin(Serial1);
    screen.setDbgSerial(Serial);
    delay(5);
    /*Display string "DFRobot"*/
    screen.setMessage("DFRobot");
    /*Set the string to display the background and font color, set it to red on the black background*/
    screen.setDispalyColor(eColor_red, eColor_black);
}

void loop() {
    /*Switch one font color every 5s*/
    eColorMode_t backgroud,font;
    backgroud = eColor_black;
    eColorMode_t buf[]= {eColor_red, eColor_yellow, eColor_green, eColor_cyan, eColor_blue, eColor_purple, eColor_white};
    for(int i = 0; i < sizeof(buf)/sizeof(eColorMode_t); i++){
        font = buf[i];
        screen.setDispalyColor(font, backgroud);
        delay(5000);
    }
}

设置全屏颜色

函数原型:bool setFullScreenColor(eColorMode_t color_);
  • 函数功能:设置全屏显示颜色
  • 参 数:
    • eColor_red:红色
    • eColor_yellow:黄色
    • eColor_green:绿色
    • eColor_cyan:青色
    • eColor_blue:蓝色
    • eColor_purple:紫色
    • eColor_white:白色
    • eColor_black:黑色

例:

#include <Arduino.h>
#include <HardwareSerial.h>
#include <SoftwareSerial.h>
#include "DFRobot_SerialScreen771.h"

#ifdef ARDUINO_AVR_UNO
SoftwareSerial Serial1(2, 3); //RX, TX
#endif

DFRobot_SerialScreen771 screen;

void setup() {
    /*Initialize communication interface (Serial1) and debug interface (Serial)*/
    Serial.begin(115200);
    Serial1.begin(19200);
    screen.begin(Serial1);
    screen.setDbgSerial(Serial);
    /*Set screen color*/
    screen.setFullScreenColor(eColor_black);
}

void loop() {
    /*Switch one screen color every 5s*/
    eColorMode_t buf[]= {eColor_red, eColor_yellow, eColor_green, eColor_cyan, eColor_blue, eColor_purple, eColor_white};
    for(int i=0; i < sizeof(buf)/sizeof(eColorMode_t); i++){
        screen.setFullScreenColor(buf[i]);
        delay(5000);
    }
}

Arduino平台应用

按照引脚说明连接好硬件,并下载样例代码到UNO中,上传成功,即可看到软屏的彩色显示效果。

准备


接线图

771软屏接线图 02.png


样例代码

点击下载库文件库和例程下载库安装参考

/*!
  * file SerialScreen771.ino
  *
  * Copyright   [DFRobot](http://www.dfrobot.com), 2016
  * Copyright   GNU Lesser General Public License
  *
  * version  V1.0
  * date  2019-6-12
  */

#include <Arduino.h>
#include <HardwareSerial.h>
#include <SoftwareSerial.h>
#include "DFRobot_SerialScreen771.h"

#ifdef ARDUINO_AVR_UNO
SoftwareSerial Serial1(2, 3); //RX, TX
#endif

DFRobot_SerialScreen771 screen;

void setup() {
    /*Initialize communication interface (Serial1) and debug interface (Serial)*/
    Serial.begin(115200);
    Serial1.begin(19200);
    screen.begin(Serial1);
    screen.setDbgSerial(Serial);
    /*Set the brightness level of the display*/
    screen.setBrightness(eBrightLevel_8);
    /*Set the move mode to hold*/
    screen.setMoveMode(eMove_hold);    
    /*Display string "DFRobot"*/
    screen.setMessage("DFRobot");
    /*Set the string to display the background and font color, set it to red on the black background*/
    screen.setDispalyColor(eColor_red, eColor_black);
}

void loop() {

}

显示效果

771软屏显示效果.jpg


个人工具
名字空间

变换
操作
导航
工具箱