1.8寸LCD彩屏

1|0LCD屏幕使用方法

1|1首先引入头文件

#include <TFT_eSPI.h> #include <SPI.h>

1|2创建对象

TFT_eSPI tft = TFT_eSPI();

1|3初始化TFT屏幕

tft.init();或者tft.begin();

1|4清屏

void fillScreen(uint32_t color) // 用某一颜色填充屏幕

1|5官方的颜色定义

#define TFT_BLACK 0x0000 /*黑 0, 0, 0 */ #define TFT_NAVY 0x000F /*藏青色 0, 0, 128 */ #define TFT_DARKGREEN 0x03E0 /*深绿色 0, 128, 0 */ #define TFT_DARKCYAN 0x03EF /*深青色 0, 128, 128 */ #define TFT_MAROON 0x7800 /*褐红色 128, 0, 0 */ #define TFT_PURPLE 0x780F /*紫色,紫红色 128, 0, 128 */ #define TFT_OLIVE 0x7BE0 /*黄绿色 128, 128, 0 */ #define TFT_LIGHTGREY 0xD69A /*浅灰色 211, 211, 211 */ #define TFT_DARKGREY 0x7BEF /*深灰色 /暗灰色 128, 128, 128 */ #define TFT_BLUE 0x001F /* 0, 0, 255 */ #define TFT_GREEN 0x07E0 /* 0, 255, 0 */ #define TFT_CYAN 0x07FF /*蓝绿色,青色 0, 255, 255 */ #define TFT_RED 0xF800 /* 255, 0, 0 */ #define TFT_MAGENTA 0xF81F /* 品红 255, 0, 255 */ #define TFT_YELLOW 0xFFE0 /* 255, 255, 0 */ #define TFT_WHITE 0xFFFF /* 255, 255, 255 */ #define TFT_ORANGE 0xFDA0 /* 橙 255, 180, 0 */ #define TFT_GREENYELLOW 0xB7E0 /* 黄绿色 180, 255, 0 */ #define TFT_PINK 0xFE19 /* 粉红色的 255, 192, 203 */ //Lighter pink, was 0xFC9F #define TFT_BROWN 0x9A60 /*褐色 150, 75, 0 */ #define TFT_GOLD 0xFEA0 /*金色的 255, 215, 0 */ #define TFT_SILVER 0xC618 /*银 192, 192, 192 */ #define TFT_SKYBLUE 0x867D /*天蓝色 135, 206, 235 */ #define TFT_VIOLET 0x915C /*蓝紫色 180, 46, 226 */

1|6屏幕方向

void setRotation(uint8_t r); // 设置显示图像旋转方向,r可选参数为0、1、2、3 uint8_t getRotation(void) // 读取当前旋转角度
  • 0,1,2,3分别代表0,90,180,270 4为镜像

1|7颜色转换

uint16_t color565(uint8_t red, uint8_t green, uint8_t blue) // 将8位红色、绿色和蓝色转换为16位 uint16_t color8to16(uint8_t color332) // 将8位颜色转换为16位 uint8_t color16to8(uint16_t color565) // 将16位颜色转换为8位 uint32_t color16to24(uint16_t color565) // 将16位颜色转换为24位 uint32_t color24to16(uint32_t color888) // 将24位颜色转换为16位

1|8显示图片

pushImage(int32_t x, int32_t y, int32_t w, int32_t h, uint16_t *data);

1|9画线

  • 两点之间画一条直线
drawLine(int32_t x0, int32_t y0, int32_t x1, int32_t y1, uint32_t color)

1|10

1|0在x和y位置使用r和color,绘制一个圆

drawCircle(int32_t x0, int32_t y0, int32_t r, uint32_t color);

1|0在x和y位置使用r和t color中绘制一个实心圆。

fillCircle(int32_t x0, int32_t y0, int32_t r, uint32_t color);

1|0画椭圆

drawEllipse(int16_t x0, int16_t y0, int32_t rx, int32_t ry, uint16_t color);

1|0填充椭圆

fillEllipse(int16_t x0, int16_t y0, int32_t rx, int32_t ry, uint16_t color);

1|11矩形

1|0在x和y位置绘制一个填充的矩形。 w是宽度,h是高度,t是rextangle的颜色

drawRect(int32_t x, int32_t y, int32_t w, int32_t h, uint32_t color);

1|0绘制一个圆角矩形,在x和y位置具有r半径圆角,w宽度和h高度和t颜色

drawRoundRect(int32_t x0, int32_t y0, int32_t w, int32_t h, int32_t radius, uint32_t color);

1|0绘制一个填充的圆角矩形,其中x和y位置具有r半径圆角,w宽度和h高度和t颜色

fillRoundRect(int32_t x0, int32_t y0, int32_t w, int32_t h, int32_t radius, uint32_t color);

1|0将液晶屏颜色更改为color颜色。 color应该是包含UTFT颜色代码的32位变量

fillScreen(uint32_t color)

1|12三角形

1|0绘制一个三角形位置x、y和z以及color颜色的三角形

drawTriangle(int32_t x0, int32_t y0, int32_t x1, int32_t y1, int32_t x2, int32_t y2, uint32_t color);

1|0绘制一个三角形位置x、y和z以及color颜色的填充三角形

fillTriangle(int32_t x0, int32_t y0, int32_t x1, int32_t y1, int32_t x2, int32_t y2, uint32_t color),

1|13显示单色图像

drawBitmap(int16_t x, int16_t y, const uint8_t *bitmap, int16_t w, int16_t h, uint16_t color);
  • 首先,您应该将图像转换为十六进制代码。如果您不想更改软件的设置,则必须反转图像的颜色并使图像水平镜像并逆时针旋转90度。现在将其添加到软件并进行转换。打开导出的文件并将十六进制代码复制到Arduino IDE。 x和y是图像的位置。 w和h是图像的大小。您可以在最后一个输入中更改图像的颜色。

1|14显示双色图片

  • 有前景、背景色
drawXBitmap(int16_t x, int16_t y, const uint8_t *bitmap, int16_t w, int16_t h, uint16_t fgcolor, uint16_t bgcolor),

1|15光标文本图像

将光标位置设置为x和y setCursor(int16_t x, int16_t y)
将光标位置设置为x和y,字体为font setCursor(int16_t x, int16_t y, uint8_t font)

1|0获取光标位置,X,Y

getCursorX(void) getCursorY(void)

1|0设置文本大小

setTextSize(uint8_t s);

1|0设置文本的颜色

setTextColor(uint16_t c, uint16_t b);

1|0设置文本的颜色及其背景

setTextColor(uint16_t c, uint16_t b);

1|0设置文本是否换行

setTextWrap(boolean wrapX, boolean wrapY)

1|16显示文本、数字

1|0显示字符

drawChar(uint16_t uniCode, int32_t x, int32_t y, uint8_t font);

1|0显示字符串

drawString(const char *string, int32_t poX, int32_t poY, uint8_t font);

1|0注意:文本大小范围为1-8


__EOF__

本文作者~内个臣呐~
本文链接https://www.cnblogs.com/Xin-chen/p/16853363.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   ~内个臣呐~  阅读(327)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示