M5Core屏幕像素为320x240
,以屏幕左上角为原点(0,0).
下方API使用RGB565颜色编码格式
颜色代码:
定义 | 16进制值 | R | G | B |
---|---|---|---|---|
BLACK | 0x0000 | 0 | 0 | 0 |
NAVY | 0x000F | 0 | 0 | 128 |
DARKGREEN | 0x03E0 | 0 | 128 | 0 |
MAROON | 0x7800 | 128 | 0 | 0 |
PURPLE | 0x780F | 128 | 0 | 128 |
OLIVE | 0x7BE0 | 128 | 128 | 0 |
LIGHTGREY | 0xC618 | 192 | 192 | 192 |
DARKGREY | 0x7BEF | 128 | 128 | 128 |
BLUE | 0x001F | 0 | 0 | 255 |
GREENYELLOW | 0xB7E0 | 180 | 255 | 0 |
GREEN | 0x07E0 | 0 | 255 | 0 |
YELLOW | 0xFFE0 | 255 | 255 | 0 |
ORANGE | 0xFDA0 | 255 | 180 | 0 |
PINK | 0xFC9F | 255 | 255 | 16 |
CYAN | 0x07FF | 0 | 255 | 255 |
DARKCYAN | 0x03EF | 0 | 128 | 128 |
RED | 0xF800 | 255 | 0 | 0 |
MAGENTA | 0xF81F | 255 | 0 | 255 |
WHITE | 0xFFFF | 255 | 255 | 255 |
函数原型:
void begin();
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.Lcd.begin();
}
void loop() {
}
函数原型:
void sleep();
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.Lcd.begin();
M5.Lcd.sleep();
}
void loop() {
}
函数原型:
void clear()
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.Lcd.begin();
M5.Power.begin();
M5.Lcd.fillScreen(RED);
delay(1000);
M5.Lcd.clear();
}
void loop() {
}
函数原型:
void wakeup();
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.Lcd.begin();
M5.Power.begin();
M5.Lcd.fillScreen(RED);
delay(1000);
M5.Lcd.sleep();
delay(6000);
M5.Lcd.wakeup();
}
void loop() {
}
函数原型:
int16_t height(void);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.print(M5.Lcd.height());
}
void loop() {
}
函数原型:
int16_t width(void);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.print(M5.Lcd.width()); //在屏幕上显示屏幕的宽度
}
void loop() {
}
函数原型:
int16_t getCursorX(void);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.print("Hello");
int X = M5.Lcd.getCursorX();
M5.Lcd.print(X);
}
void loop(){
}
函数原型:
int16_t getCursorY(void);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.print("Hello");
int X = M5.Lcd.getCursorY();
M5.Lcd.print(Y);
}
void loop(){
}
函数原型:
uint8_t getRotation()
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.print(M5.Lcd.getRotation()); //在屏幕上输出屏幕的旋转方向
}
void loop(){
}
函数原型:
uint8_t getTextDatum(void);
功能说明:
传入参数:
返回值:
// These enumerate the text plotting alignment (reference datum point)
#define TL_DATUM 0 // Top left (default)
#define TC_DATUM 1 // Top centre
#define TR_DATUM 2 // Top right
#define ML_DATUM 3 // Middle left
#define CL_DATUM 3 // Centre left, same as above
#define MC_DATUM 4 // Middle centre
#define CC_DATUM 4 // Centre centre, same as above
#define MR_DATUM 5 // Middle right
#define CR_DATUM 5 // Centre right, same as above
#define BL_DATUM 6 // Bottom left
#define BC_DATUM 7 // Bottom centre
#define BR_DATUM 8 // Bottom right
#define L_BASELINE 9 // Left character baseline (Line the 'A' character would sit on)
#define C_BASELINE 10 // Centre character baseline
#define R_BASELINE 11 // Right character baseline
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.setTextDatum(MC_DATUM); //设置文字的对齐方式
M5.Lcd.drawString("hello", 160, 120, 2); //在(160,120)处以2号字体打印字符串hello
M5.Lcd.print(M5.Lcd.getTextDatum()); //屏幕打印获取到的文字对齐方式
}
void loop(){
}
函数原型:
void setCursor(int16_t x, int16_t y);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.setCursor(0, 30);
M5.Lcd.printf("Hello M5");
}
void loop() {}
函数原型:
void setRotation(uint8_t m);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.setRotation(2);
M5.Lcd.fillEllipse(160, 100, 60, 100, YELLOW);
delay(1000);
M5.Lcd.setRotation(1);
M5.Lcd.fillEllipse(160, 100, 60, 100, GREEN);
}
void loop() {}
函数原型:
void setBrightness(uint8_t brightness);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.fillScreen(RED);
}
void loop() {
M5.update();
for(int i=0; i<255;i++){
M5.Lcd.setBrightness(i);
delay(10);
}
for(int i=255; i>0;i--){
M5.Lcd.setBrightness(i);
delay(10);
}
}
函数原型:
uint16_t alphaBlend(uint8_t alpha, uint16_t fgc, uint16_t bgc);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.Lcd.begin();
M5.Power.begin();
M5.Lcd.fillScreen(M5.Lcd.alphaBlend(128, 0X00FF00, 0XFF0000));
//设置前景、背景色分别为0X00FF00,0XFF0000 透明度为128,并填充至整个屏幕
}
void loop() {
}
函数原型:
void loadFont(String fontName, fs::FS &ffs);
void loadFont(String fontName, bool flash);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.loadFont("filename", SD);
}
void loop() {
}
函数原型:
void unloadFont(void);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.unloadFont();
}
void loop() {
}
函数原型:
uint16_t fontsLoaded()
功能说明:
传入参数:
返回值:
返回值:
#ifdef LOAD_GLCD
fontsloaded = 0x0002; // Bit 1 set
#endif
#ifdef LOAD_FONT2
fontsloaded |= 0x0004; // Bit 2 set
#endif
#ifdef LOAD_FONT4
fontsloaded |= 0x0010; // Bit 4 set
#endif
#ifdef LOAD_FONT6
fontsloaded |= 0x0040; // Bit 6 set
#endif
#ifdef LOAD_FONT7
fontsloaded |= 0x0080; // Bit 7 set
#endif
#ifdef LOAD_FONT8
fontsloaded |= 0x0100; // Bit 8 set
#endif
#ifdef LOAD_FONT8N
fontsloaded |= 0x0200; // Bit 9 set
#endif
#ifdef SMOOTH_FONT
fontsloaded |= 0x8000; // Bit 15 set
#endif
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.print(M5.Lcd.fontsLoaded());
}
void loop() {
}
函数原型:
void fillScreen(uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.fillScreen(RED); //在屏幕上填充红色
}
void loop(){
}
函数原型:
void invertDisplay(boolean i);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.fillScreen(RED); //在屏幕上填充红色
}
void loop() {
M5.Lcd.invertDisplay(1); //开启反转
delay(1000);
M5.Lcd.invertDisplay(0); //关闭反转
}
函数原型:
uint16_t color565(uint8_t r, uint8_t g, uint8_t b);
功能说明:
传入参数:
uint8_t r:
uint8_t g:
uint8_t b:
uint32_t color:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
uint16_t colorvalue = 0;
colorvalue = color565(255, 255, 255);
M5.Lcd.fillEllipse(160, 100, 60, 100, colorvalue);
}
void loop() {}
函数原型:
size_t print(const char str[]);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.print("this is a print text function");
}
void loop() {
}
函数原型:
int16_t textWidth(const String& string);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
String text = "hello ";
M5.Lcd.print(text);
M5.Lcd.print(M5.Lcd.textWidth(text)); //在屏幕上打印字符串数组text所占像素宽度
}
void loop() {}
函数原型:
void setTextSize(uint8_t s);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.setTextSize(4);
M5.Lcd.print("Hello M5Stack");
}
void loop() {
}
函数原型:
void setTextColor(uint16_t color);
void setTextColor(uint16_t color, uint16_t backgroundcolor);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin(); //初始化 M5Stack
M5.Power.begin();
M5.Lcd.setTextColor(RED,BLACK); //设置文本的前、背景色分别为红色和黑色
//M5.Lcd.setTextColor(RED);
}
void loop(){
}
函数原型:
void setTextWrap(boolean wrapX, boolean wrapY);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.setTextWrap(true, true); //开启x、y轴自动换行
M5.Lcd.print("hello M5Stack hello M5Stack hello M5Stack hello M5Stack hello M5Stack hello M5Stack hello M5Stack hello M5Stack");
}
void loop() {}
函数原型:
void setTextPadding(uint16_t x_width);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
}
void loop() {
M5.Lcd.drawString("Orbitron 32", 160, 60, 2);
delay(2000);
M5.Lcd.setTextPadding(M5.Lcd.width() - 20);
M5.Lcd.drawString("Orbitron 32 with padding", 160, 60, 2);
delay(2000);
}
函数原型:
void setTextDatum(uint8_t datum);
功能说明:
传入参数:
返回值:
// These enumerate the text plotting alignment (reference datum point)
#define TL_DATUM 0 // Top left (default)
#define TC_DATUM 1 // Top centre
#define TR_DATUM 2 // Top right
#define ML_DATUM 3 // Middle left
#define CL_DATUM 3 // Centre left, same as above
#define MC_DATUM 4 // Middle centre
#define CC_DATUM 4 // Centre centre, same as above
#define MR_DATUM 5 // Middle right
#define CR_DATUM 5 // Centre right, same as above
#define BL_DATUM 6 // Bottom left
#define BC_DATUM 7 // Bottom centre
#define BR_DATUM 8 // Bottom right
#define L_BASELINE 9 // Left character baseline (Line the 'A' character would sit on)
#define C_BASELINE 10 // Centre character baseline
#define R_BASELINE 11 // Right character baseline
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.setTextDatum(MC_DATUM);
M5.Lcd.drawString("hello", 160, 120, 2);
}
void loop(){
}
函数原型:
void drawFastHLine(int32_t x, int32_t y, int32_t w, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawFastHLine(3, 100, 255, GREEN); //在(3,100)处划一条长度为255的绿色水平线条
}
void loop() {
}
函数原型:
void drawFastVLine(int32_t x, int32_t y, int32_t w, uint32_t color);
功能说明:
传入参数:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawFastVLine(100, 0, 255, TFT_GREEN); //在(100,0)处划一条长度为255的绿色垂直线条
}
void loop(){
}
函数原型:
int16_t drawString(const char *string, int32_t poX, int32_t poY, uint8_t font);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawString("Hello M5", 160, 100, 2); //在(160,100)处以2号字体显示字符串Hello M5
}
void loop(){
}
函数原型:
void drawNumber(long long_num, int32_t poX, int32_t poY);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawNumber(99, 55, 100); //在(99,55)处显示整数100
}
void loop(){
}
功能说明:
函数原型:
int16_t drawChar(int16_t uniCode, int32_t x, uint16_t y, uint8_t font);
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin(); //初始化 M5Stack
M5.Power.begin();
M5.Lcd.drawChar('A', 160, 120, 2); //在(160,120)处以字体2显示字符A
}
void loop(){
}
函数原型:
int16_t drawFloat(float floatNumber, uint8_t dp, int32_t poX, int32_t poY);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawFloat(3.1415928,7,100,100); //在(100,100)处显示小数点后7位的浮点数3.1415928
}
void loop() {}
函数原型:
void drawPixel(int32_t x, int32_t y, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawPixel(22,22,RED); //在(22,22)处画一个红色的像素点
}
void loop() {}
函数原型:
void drawLine(int32_t x0, int32_t y0, int32_t x1, int32_t y1, uint32_t color);
功能说明:
传入参数:
返回值:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawLine(200, 0, 200,2000,GREEN); //从点(200,0)到点(200,200)以绿色绘制直线
}
void loop(){
}
函数原型:
void drawRect(int32_t x, int32_t y, int32_t w, int32_t h, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawRect(180, 12, 122, 10, BLUE); //在(180,12)处以蓝色绘制宽高分别为122和10的矩形线框
}
void loop(){
}
函数原型:
void fillRect(int32_t x, int32_t y, int32_t w, int32_t h, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.fillRect(150, 120, 122, 10, BLUE); //在(150,120)处绘制一个长122、宽为10的蓝色填充矩形
}
void loop(){
}
函数原型:
void drawRoundRect(int32_t x, int32_t y, int32_t w, int32_t h, int32_t r, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawRoundRect(55,55,30,50,10,GREEN); //在(55,55)处绘制宽高分别为30、50的圆角半径为10,颜色为绿色的圆角矩形线框
void loop() {}
函数原型:
void fillRoundRect(int32_t x, int32_t y, int32_t w, int32_t h, int32_t r, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.fillRoundRect(55, 55, 30, 50, 10, GREEN);//在(55,55)处绘制宽高分别为30、50的圆角半径为10,颜色为绿色的圆角矩形
}
void loop() {}
函数原型:
void drawCircle(int32_t x0, int32_t y0, int32_t r, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawCircle(100, 100, 50, RED); //在(x,y)处绘制半径为50的红色圆线圈
}
void loop() {}
函数原型:
void drawCircle(int32_t x0, int32_t y0, int32_t r, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.fillCircle(100, 100, 50, RED); //在(x,y)处绘制半径为50的填充红色圆
}
void loop() {}
函数原型:
void drawEllipse(int16_t x0, int16_t y0, int32_t rx, int32_t ry, uint16_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawEllipse(160, 100, 60, 100, YELLOW);//在(160,100)处绘制颜色为黄色的宽度、高度分别为60,100的椭圆轮廓线
}
void loop() {}
函数原型:
void fillEllipse(int16_t x0, int16_t y0, int32_t rx, int32_t ry, uint16_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.fillEllipse(160, 100, 60, 100, YELLOW); //在(160,100)处绘制颜色为黄色的宽度、高度分别为60,100的填充黄色椭圆
}
void loop() {}
函数原型:
void drawTriangle(int32_t x0, int32_t y0, int32_t x1, int32_t y1, int32_t x2, int32_t y2, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawTriangle(30, 30, 180, 100, 80, 150, YELLOW); //以 (30,30) (180,100) (80,150)为顶点绘制黄色三角形线框
}
void loop() {}
函数原型:
void fillTriangle(int32_t x0, int32_t y0, int32_t x1, int32_t y1, int32_t x2, int32_t y2, uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.fillTriangle(30, 30, 180, 100, 80, 150, YELLOW); //以 (30,30) (180,100) (80,150)为顶点绘制填充黄色三角形
}
void loop() {}
函数原型:
void drawXBitmap(int16_t x, int16_t y, const uint8_t *bitmap, int16_t w, int16_t h, uint16_t color);
功能说明:
传入参数:
案例程序:
函数原型:
void drawBitmap(int16_t x0, int16_t y0, int16_t w, int16_t h, const uint16_t *data);
void drawBitmap(int16_t x0, int16_t y0, int16_t w, int16_t h, uint16_t *data);
void drawBitmap(int16_t x0, int16_t y0, int16_t w, int16_t h, const uint16_t *data, uint16_t transparent);
void drawBitmap(int16_t x0, int16_t y0, int16_t w, int16_t h, const uint8_t *data);
void drawBitmap(int16_t x0, int16_t y0, int16_t w, int16_t h, uint8_t *data);
功能说明:
传入参数:
返回值:
函数原型:
void drawBmpFile(fs::FS &fs, const char *path, uint16_t x, uint16_t y);
功能说明:
传入参数:
返回值:
案例程序:
#include "FS.h"
//#include "SPIFFS.h"
#include <M5Stack.h>
void setup(){
M5.begin(true, false, false, false);
M5.Power.begin();
M5.Lcd.drawBmpFile(SD, "/p2.bmp",0,0);
//M5.Lcd.drawBmpFile(SPIFFS, "/p2.bmp", 0, 0);
}
我们提供一个可以用来转换jpg
图像->.c
文件的脚本, 可以使用它来转换一些图片, 并使用上面的API将图像绘制到屏幕上:
函数原型:
void drawJpg(const uint8_t *jpg_data, size_t jpg_len, uint16_t x,uint16_t y, uint16_t maxWidth, uint16_t maxHeight,uint16_t offX, uint16_t offY, jpeg_div_t scale);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
extern uint8_t tetris_img[]; //引用存储图像的数组,需要提前和 xxx.ino放在同一文件夹中
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.drawJpg(tetris_img, 34215); //从内存中读取名为tetris_img的jpeg文件
}
void loop(){
}
函数原型:
void drawJpgFiledrawJpgFile(fs::FS &fs, const char *path, uint16_t x,uint16_t y,uint16_t maxWidth, uint16_t maxHeight, uint16_t offX,uint16_t offY, jpeg_div_t scale);
功能说明:
传入参数:
返回值:
函数原型:
void progressBar(int x, int y, int w, int h, uint8_t val);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.begin();
M5.Power.begin();
M5.Lcd.progressBar(0, 0, 240, 20, 20); //在(0,0)处显示宽高分别为240,20进度为20%的进度条
}
void loop() {
}
函数原型:
void qrcode(const char *string, uint16_t x, uint16_t y, uint8_t width, uint8_t version);
void qrcode(const String &string, uint16_t x, uint16_t y, uint8_t width, uint8_t version);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
void setup() {
M5.Lcd.begin();
M5.Power.begin();
M5.Lcd.qrcode("http://www.m5stack.com", 50, 10, 220, 6);
}
void loop() {
}
函数原型:
void* TFT_eSprite::setColorDepth(int8_t b);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
TFT_eSprite img = TFT_eSprite(&M5.Lcd);
void setup() {
M5.begin(); // Init M5Stack. 初始化M5Stack
M5.Power.begin(); // Init power. 初始化电源模块
img.setColorDepth(8); // Set color depth. 设置色深
img.setTextSize(2);
img.createSprite(320, 240); //Create a 320x240 canvas. 创建一块320x240的画布
}
void loop() {}
函数原型:
void *createSprite(int16_t w, int16_t h, uint8_t frames);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
TFT_eSprite img = TFT_eSprite(&M5.Lcd);
void setup() {
M5.begin();
M5.Power.begin();
img.setColorDepth(8); // Set the color depth to 8 bits. 设置颜色深度为8位
img.createSprite(320, 240); //Create a 320x240 canvas. 创建一块320x240的画布
img.fillSprite(RED); //Fill the canvas with red. 在画布上全部填充红色
img.pushSprite(0,0); // Push the canvas to the screen at (0,0). 把画布推送到屏幕(0,0)处
}
void loop() {}
函数原型:
void fillSprite(uint32_t color);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
TFT_eSprite img = TFT_eSprite(&M5.Lcd);
void setup() {
M5.begin();
M5.Power.begin();
img.setColorDepth(8); // Set the color depth to 8 bits. 设置颜色深度为8位
img.createSprite(320, 240); //Create a 320x240 canvas. 创建一块320x240的画布
img.fillSprite(RED); //Fill the canvas with red. 在画布上全部填充红色
img.pushSprite(0,0); // Push the canvas to the screen at (0,0). 把画布推送到屏幕(0,0)处
}
void loop() {}
}
void loop() {}
函数原型:
void pushSprite(int32_t x, int32_t y, uint16_t transparent);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
TFT_eSprite img = TFT_eSprite(&M5.Lcd);
void setup() {
M5.begin();
M5.Power.begin();
img.createSprite(320, 240); //创建一块320x240的画布
img.fillSprite(RED); //在画布上全部填充红色
img.fillCircle(100,100,20,GREEN);
img.pushSprite(0, 0, GREEN); //把画布推送到屏幕(0,0)处并设置绿色为穿透色
}
void loop() {}
函数原型:
int16_t width(void);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
TFT_eSprite img = TFT_eSprite(&M5.Lcd);
void setup() {
M5.begin();
M5.Power.begin();
img.createSprite(320, 240); //创建一块320x240的画布
img.fillSprite(RED); //在画布上全部填充红色
img.pushSprite(0, 0, WHITE); //把画布推送到屏幕(0,0)处并设置白色为穿透色
M5.Lcd.print(img.width()); //屏幕打印画布的宽度
}
void loop() {}
函数原型:
int16_t height(void);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
TFT_eSprite img = TFT_eSprite(&M5.Lcd);
void setup() {
M5.begin();
M5.Power.begin();
img.createSprite(320, 240); //创建一块320x240的画布
img.fillSprite(RED); //在画布上全部填充红色
img.pushSprite(0, 0, WHITE); //把画布推送到屏幕(0,0)处并设置白色为穿透色
M5.Lcd.print(img.height()); //屏幕打印画布的高度
}
void loop() {}
函数原型:
void deleteSprite(void);
功能说明:
传入参数:
返回值:
案例程序:
#include <M5Stack.h>
TFT_eSprite img = TFT_eSprite(&M5.Lcd);
void setup() {
M5.begin();
M5.Power.begin();
img.deleteSprite(); //从内存中删除画布
}
void loop() {}