feature:T-keyboard
This commit is contained in:
parent
5254518240
commit
9ce50e9560
|
|
@ -18,15 +18,6 @@
|
|||
|
||||
|
||||
|
||||
<h3 align = "left">Product 📷:</h3>
|
||||
|
||||
| Product | Product Link |
|
||||
| :--------: | :------------: |
|
||||
| T-keyboard | [AliExpress]() |
|
||||
|
||||
## Pinout
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -13,11 +13,4 @@
|
|||
- [ESP32-BLE-Keyboard](https://github.com/T-vK/ESP32-BLE-Keyboard/tree/0.3.0)
|
||||
- [T-0.99TFT](https://github.com/Xinyuan-LilyGO/T-0.99TFT)
|
||||
|
||||
<h3 align = "left">Product 📷:</h3>
|
||||
|
||||
| Product | Product Link |
|
||||
| :------------: | :------------: |
|
||||
| [T-keyboard]() | [AliExpress]() |
|
||||
|
||||
## Pinout
|
||||

|
||||
|
|
|
|||
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2022 Xinyuan-LilyGO
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
|
||||
<h1 align = "center">🌟LILYGO T-0.99TFT🌟</h1>
|
||||
|
||||
|
||||
## **[English](./README.MD) | [中文](./README_CN.MD)**
|
||||
|
||||
<h3 align = "left">Quick start:</h3>
|
||||
|
||||
|
||||
1. Install the current upstream Arduino IDE at the 1.8 level or later. The current version is at the [Arduino website](http://www.arduino.cc/en/main/software).
|
||||
2. Start Arduino and open Preferences window. In additional board manager add url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json .separating them with commas.
|
||||
3. Select Tools -> Board Management -> Search for ESP32 and install
|
||||
4. Select Tools -> Board ->
|
||||
5. Copy the folder in the 'lib' directory to '~Arduino/libraries'
|
||||
6. Define pins and select display direction in TFT GC9D01N.h
|
||||
#define LANDSCAPE 1 //Horizontal screen
|
||||
//#define PORTRAIT 2
|
||||
|
||||
#define TFT_MISO -1
|
||||
#define TFT_MOSI 10
|
||||
#define TFT_SCLK 20
|
||||
#define TFT_CS -1
|
||||
#define TFT_DC 2
|
||||
#define TFT_RST -1
|
||||
#define TFT_BL 8
|
||||
|
||||
|
||||
|
||||
<h3 align = "left">Product 📷:</h3>
|
||||
|
||||
| Product | Product Link |
|
||||
| :-------: | :-----------------------------------------------------------------: |
|
||||
| T-0.99TFT | [AliExpress](https://www.aliexpress.com/item/1005003954508518.html) |
|
||||
|
||||
## Pinout
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
<h1 align = "center">🌟LILYGO T-0.99TFT🌟</h1>
|
||||
|
||||
## **[English](./README.MD) | [中文](./README_CN.MD)**
|
||||
|
||||
<h3 align = "left">快速开始:</h3>
|
||||
|
||||
1. 安装 Arduino IDE [Arduino website](http://www.arduino.cc/en/main/software).
|
||||
2. 打开Arduino,打开“文件” ->“首选项”,附加开发板管理器的url添加: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
|
||||
3. 选择“工具” -> 开发板选择 ->
|
||||
4. 复制'lib'下的文件到'~Arduino/libraries'
|
||||
5. 在TFT_GC9D01N.h 中定义引脚和选择显示方向
|
||||
#define LANDSCAPE 1 //Horizontal screen
|
||||
//#define PORTRAIT 2
|
||||
|
||||
#define TFT_MISO -1
|
||||
#define TFT_MOSI 10
|
||||
#define TFT_SCLK 20
|
||||
#define TFT_CS -1
|
||||
#define TFT_DC 2
|
||||
#define TFT_RST -1
|
||||
#define TFT_BL 8
|
||||
|
||||
|
||||
<h3 align = "left">Product 📷:</h3>
|
||||
|
||||
| Product | Product Link |
|
||||
| :-------: | :-------------------------------------------------------------------------------------------------------------------: |
|
||||
| T-0.99TFT | [淘宝](https://item.taobao.com/item.htm?spm=a213gs.success.result.1.936e7a86vB6iht&id=668735936867&qq-pf-to=pcqq.c2c) |
|
||||
|
||||
## Pinout
|
||||
|
||||

|
||||
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
#include<TFT_GC9D01N.h>
|
||||
#include "img.h"
|
||||
TFT_GC9D01N_Class TFT_099;
|
||||
|
||||
void setup()
|
||||
{
|
||||
// put your setup code here, to run once:
|
||||
Serial.begin(115200);
|
||||
|
||||
Serial.println("setup ");
|
||||
TFT_099.begin();
|
||||
TFT_099.DispColor(0, 0, TFT_WIDTH, TFT_HEIGHT, BLACK);
|
||||
delay(100);
|
||||
|
||||
}
|
||||
uint16_t i = 0;
|
||||
void loop()
|
||||
{
|
||||
for (int j = 0; j < 4; j++) {
|
||||
TFT_099.DrawImage(0, (160 - (i + j * 55)), 40, 40, cupcake);
|
||||
}
|
||||
i++;
|
||||
if (i == 55) {
|
||||
i = 0;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
//
|
||||
static uint16_t cupcake[] = {
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2041, 0x6904, 0x50c3, 0x0820, 0x1841, 0x2861, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc1c8, 0xfa6b, 0x7925, 0x3882, 0x50a3, 0xd1e9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc9e9, 0xf24a, 0x7105, 0x1841, 0x50a3, 0xfa6b, 0x2841, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x1000, 0xfaac, 0xfa4a, 0xe209, 0xea2a, 0xfa8c, 0x1020, 0x3a49, 0x18e3, 0x7c30, 0xdf5d, 0x2124, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9514, 0xffff, 0x29a6, 0x0800, 0xb166, 0xd9e9, 0xd1c8, 0x3062, 0x29a6, 0xc679, 0x2104, 0xadb6, 0xffff, 0x2145, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4249, 0xceba, 0xefff, 0x5b2c, 0x21c7, 0x1965, 0x08c3, 0x0000, 0x73cf, 0x2965, 0x4a8a, 0xd73c, 0xb5f7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7c30, 0x31c7, 0x7c51, 0xdf7d, 0xe79e, 0xe7df, 0xdf7d, 0x7c51, 0x4a8a, 0x634d, 0x73ef, 0xc679, 0xe7be, 0x0841, 0x8492, 0x4228, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7c10, 0xe7be, 0xc679, 0xbe79, 0xe7be, 0x31a6, 0x39e7, 0xb638, 0xc6ba, 0xcefb, 0xefdf, 0xefff, 0xefdf, 0xa596, 0x0000, 0xf7ff, 0xc6ba, 0x3a28, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xdf5d, 0xdf5d, 0xdf5d, 0xdf7d, 0xc69a, 0x52cb, 0x5b0c, 0xe7be, 0xefdf, 0xbe38, 0x6b8e, 0x94f3, 0x39e7, 0x2145, 0xefff, 0xf7ff, 0x73ef, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a8a, 0xdf5d, 0xdf5d, 0xd71c, 0xcedb, 0xd71c, 0xadd7, 0x18c3, 0x9d34, 0x6bae, 0x0000, 0x2965, 0x18e3, 0x10a2, 0xb659, 0xbe9a, 0x52ec, 0x0000, 0xb2e4, 0x5142, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39e8, 0x6baf, 0x4acb, 0x2985, 0x20e3, 0x6bcf, 0x73ef, 0x10a2, 0x10a2, 0xcefb, 0xf7ff, 0xbe59, 0x39e7, 0x1020, 0x2020, 0x38c0, 0xa283, 0xcb45, 0xdb85, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x71c2, 0x6981, 0x5920, 0x6141, 0x71c2, 0x79c2, 0x1860, 0x8cb2, 0xadd7, 0xc6ba, 0xefff, 0xadb7, 0x2104, 0x5921, 0xb2c4, 0xd345, 0xd365, 0xcb25, 0xc325, 0xd345, 0x69a2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2080, 0xdb85, 0xd345, 0xd345, 0xd345, 0xcb45, 0xd345, 0x6982, 0x1925, 0xadd7, 0xb5f7, 0x530c, 0x10c3, 0x5961, 0xcb25, 0xcb45, 0xc325, 0xc325, 0xc325, 0xc325, 0xcb25, 0xb2e4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa284, 0xcb45, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc304, 0x5141, 0x0000, 0x0000, 0x2880, 0xa263, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xbb04, 0x2081, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbae4, 0xcb25, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xd345, 0xdb65, 0xdb65, 0xd365, 0xcb45, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0x61a2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbae4, 0xcb25, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0x4941, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbb04, 0xcb45, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xcb45, 0x9a63, 0x0000, 0x0061, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6982, 0xbb04, 0xd345, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xcb45, 0xd365, 0xdb85, 0xd345, 0x1040, 0x01a7, 0x0104, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0081, 0x0800, 0x71e3, 0xdb65, 0xc325, 0xc325, 0xc325, 0xc325, 0xc325, 0xcb45, 0xd365, 0xd365, 0xd345, 0xcb25, 0xc325, 0xc325, 0xd345, 0xa283, 0x2040, 0x1000, 0x0800, 0x01a7, 0x14f4, 0x00a2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0c51, 0x0cb3, 0x0000, 0x5141, 0xcb24, 0xcb45, 0xcb45, 0xcb25, 0xc304, 0x81c2, 0x2080, 0x1860, 0x6982, 0xbac4, 0xbb04, 0xc324, 0x8202, 0x0000, 0x02ab, 0x0d14, 0x1659, 0x169a, 0x0c92, 0x0061, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0104, 0x0228, 0x3986, 0x3208, 0x4921, 0xa263, 0x9a63, 0x79a1, 0x1881, 0x0146, 0x02ec, 0x030c, 0x01a7, 0x00a2, 0x30a1, 0x30c1, 0x0883, 0x0945, 0x1555, 0x15f8, 0x15f7, 0x0baf, 0x01c7, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0c51, 0x2924, 0x5269, 0x0000, 0x0881, 0x0881, 0x01c7, 0x0bf0, 0x1555, 0x167a, 0x1639, 0x1618, 0x0c92, 0x0041, 0x52ab, 0xbe38, 0x08a2, 0x0c30, 0x1639, 0x030c, 0x2082, 0x5aeb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0bcf, 0x0c10, 0x0249, 0x0bcf, 0x0c92, 0x0c92, 0x0cd3, 0x0208, 0x00a2, 0x00c3, 0x1492, 0x15f8, 0x1618, 0x030c, 0x2924, 0x41c6, 0x0104, 0x15b6, 0x15f8, 0x0000, 0xd71c, 0xb5f7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00e3, 0x169a, 0x15d7, 0x15f7, 0x15f7, 0x1618, 0x03af, 0x5a69, 0xd6db, 0x94b2, 0x0020, 0x15d7, 0x15d7, 0x15b7, 0x0cf4, 0x038e, 0x1576, 0x15d7, 0x15f8, 0x0000, 0xad75, 0x7c10, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0c30, 0x1576, 0x1555, 0x15d7, 0x15f7, 0x03af, 0x3145, 0xc659, 0xf7ff, 0x0000, 0x0c10, 0x15f7, 0x15f7, 0x15d7, 0x15f8, 0x15f8, 0x15b7, 0x15f8, 0x0c51, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0082, 0x1124, 0x0061, 0x0bcf, 0x1618, 0x1534, 0x0186, 0x2124, 0x41e7, 0x00e4, 0x1596, 0x15f7, 0x14d3, 0x028a, 0x0269, 0x0c92, 0x15d7, 0x15b7, 0x15f8, 0x1618, 0x0186, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x73cf, 0x94d3, 0x0000, 0x1618, 0x15f7, 0x1555, 0x036d, 0x02eb, 0x14f4, 0x15f7, 0x1618, 0x0145, 0x4a08, 0x6b4d, 0x10c3, 0x0c51, 0x15f7, 0x15d7, 0x1555, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7bef, 0xffff, 0x1000, 0x15f8, 0x15b7, 0x15d7, 0x167a, 0x1596, 0x1659, 0x15f8, 0x1618, 0x0104, 0x8430, 0xffff, 0x7bcf, 0x0269, 0x1618, 0x15d7, 0x1514, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1082, 0x31a6, 0x0000, 0x1659, 0x15d7, 0x1596, 0x01a6, 0x0000, 0x0000, 0x0bcf, 0x1679, 0x0bcf, 0x0000, 0x8c92, 0x6b2c, 0x026a, 0x1638, 0x1659, 0x0a6a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1514, 0x15f7, 0x1639, 0x032d, 0x2104, 0xf7ff, 0xc638, 0x0040, 0x0c31, 0x169a, 0x0cf4, 0x0041, 0x0124, 0x14b3, 0x1596, 0x14b2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00c3, 0x0aeb, 0x0c10, 0x02cb, 0x08a2, 0x94f3, 0xa596, 0x39e7, 0x0228, 0x1492, 0x0c72, 0x1492, 0x0bcf, 0x0186, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
|
||||
|
||||
|
||||
};
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
#include<TFT_GC9D01N.h>
|
||||
#include "img.h"
|
||||
|
||||
TFT_GC9D01N_Class TFT_099;
|
||||
char *str = "ABCabc123";
|
||||
|
||||
void setup()
|
||||
{
|
||||
// put your setup code here, to run once:
|
||||
Serial.begin(115200);
|
||||
|
||||
Serial.println("setup ");
|
||||
TFT_099.begin();
|
||||
|
||||
TFT_099.DispColor(0, 0, TFT_WIDTH, TFT_HEIGHT, RED);
|
||||
delay(500);
|
||||
TFT_099.DispColor(0, 0, TFT_WIDTH, TFT_HEIGHT, BLUE);
|
||||
delay(500);
|
||||
TFT_099.DispColor(0, 0, TFT_WIDTH, TFT_HEIGHT, GREEN);
|
||||
delay(500);
|
||||
TFT_099.DispColor(0, 0, TFT_WIDTH, TFT_HEIGHT, BLACK);
|
||||
delay(500);
|
||||
TFT_099.DispStr(str, 0, 0, WHITE, BLACK);
|
||||
delay(2000);
|
||||
TFT_099.DrawImage(0, 0, 40, 40, closeX);
|
||||
TFT_099.DrawImage(0, 40, 40, 40, closeX);
|
||||
TFT_099.DrawImage(0, 40 * 2, 40, 40, closeX);
|
||||
TFT_099.DrawImage(0, 40 * 3, 40, 40, closeX);
|
||||
|
||||
delay(2000);
|
||||
}
|
||||
int i = 0;
|
||||
void loop()
|
||||
{
|
||||
for (int j = 0; j < 4; j++) {
|
||||
TFT_099.DrawImage(0, (160 - (i + j * 55)), 30, 30, image_data_30);
|
||||
}
|
||||
i++;
|
||||
if (i == 55) {
|
||||
i = 0;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
//ヘシマ<EFBDBC>GB
|
||||
uint16_t closeX[] ={
|
||||
0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xf7ff, 0xf7ff, 0xffff, 0xffdf, 0xffff, 0xf7ff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffde, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xf7ff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0x9cf3, 0x9cd3, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xad34, 0x738e, 0xffff, 0xffff, 0xffff, 0x7b6d, 0xce18, 0xffff, 0x5b2c, 0xc658, 0xffff, 0xd69a, 0x632c, 0xc638, 0xffff, 0xffff, 0x6b4d, 0xbdf7, 0xffff, 0x8430, 0x31a6, 0x4208, 0xad55, 0xffff, 0xffff, 0xad75, 0x3186, 0x3186, 0xa514, 0xffff, 0x8c71, 0x9cf3, 0xa514, 0x8c51, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0x52aa, 0x0000, 0xffff, 0xffff, 0xffff, 0x0800, 0x838e, 0xffff, 0x0020, 0x740f, 0xffff, 0xffff, 0x18a3, 0x0000, 0xffff, 0x2965, 0x0000, 0xffff, 0x2965, 0x0000, 0x39e7, 0x2945, 0x0020, 0xffff, 0x9492, 0x0000, 0x8430, 0x94b2, 0x0000, 0x7bef, 0xa534, 0x8c51, 0x7bef, 0xa534, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0x5aeb, 0x0000, 0xffff, 0xffff, 0xffff, 0x0800, 0x8bef, 0xffff, 0x0000, 0x8c91, 0xffff, 0xffff, 0xffff, 0x0000, 0x0841, 0x0000, 0xffff, 0xc638, 0x0000, 0xa514, 0xffff, 0xffff, 0xf79e, 0xffff, 0x0000, 0x9492, 0xffff, 0xffff, 0xad55, 0x0000, 0xef7d, 0x7bef, 0x8c51, 0xc638, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0x5aeb, 0x0020, 0xffff, 0xffff, 0xffff, 0x0000, 0x83cf, 0xffff, 0x0000, 0x8450, 0xffff, 0xffff, 0xffff, 0xbdf7, 0x0000, 0xbdf7, 0xffdf, 0x8c71, 0x0000, 0xffff, 0x8410, 0x0020, 0x0000, 0xffdf, 0x0000, 0xc638, 0xffdf, 0xffff, 0xe71c, 0x0000, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0x62eb, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x8410, 0xffff, 0x0000, 0x9cd2, 0xffff, 0xffff, 0xffff, 0xe71c, 0x0000, 0xe71c, 0xffff, 0xb5b6, 0x0000, 0x9cd3, 0xf7be, 0x8c71, 0x0000, 0xffff, 0x0000, 0x9492, 0xffff, 0xffff, 0xad75, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0x5a8a, 0x0000, 0x31a6, 0x18e3, 0xdefc, 0x0000, 0x73cf, 0xffff, 0x0000, 0x1062, 0x3145, 0x4208, 0xffff, 0xdedb, 0x0000, 0xdedb, 0xffff, 0xffff, 0x2104, 0x0000, 0x39c7, 0x39e7, 0x0000, 0xffdf, 0x8c51, 0x0000, 0x9492, 0x9cf3, 0x0000, 0x632c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffdf, 0xad35, 0x73ae, 0x6b8e, 0x632d, 0xe73d, 0x6b8e, 0xbe38, 0xffff, 0x6b2d, 0x83cf, 0x734d, 0x840f, 0xffff, 0xef7d, 0x5aeb, 0xef5d, 0xffff, 0xffff, 0xffff, 0x8c51, 0x39c7, 0x4a49, 0xa534, 0xffff, 0xffff, 0xa534, 0x2965, 0x2965, 0x94b2, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffde, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xf7ff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0x8c71, 0x39e7, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf,
|
||||
0xfffe, 0xffff, 0xffdf, 0xffff, 0xf7ff, 0xffff, 0xeeda, 0xff1b, 0xffdd, 0xfffe, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xfffe, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0x94b2, 0x0000, 0x0000, 0xdedb, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffdf, 0xffff, 0xf7ff, 0xffff, 0xf6b9, 0xf616, 0xff9c, 0xff9c, 0xffde, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xe73c, 0x0000, 0x0000, 0x0000, 0x18c3, 0xce59, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffdf, 0xf7ff, 0xf7ff, 0xfffe, 0xfe98, 0xed94, 0xfed8, 0xf73a, 0xfffe, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x4208, 0x0000, 0x7bcf, 0x8c71, 0xbdd7, 0x3186, 0x0000, 0x0000, 0x0000, 0x2124, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf,
|
||||
0xffff, 0xffdf, 0xffff, 0xf7ff, 0xf7ff, 0xfffe, 0xff7c, 0xed53, 0xedb3, 0xffdc, 0xffde, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0x2124, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xfffe, 0xfffe, 0xffff, 0xffff, 0xfffe, 0xf75b, 0xde57, 0xffdd, 0xffde, 0xffff, 0xffff, 0xffdf, 0xffff, 0x83ef, 0x0020, 0x0020, 0x0000, 0x0000, 0x0001, 0x0000, 0x0020, 0x0020, 0x0000, 0x4167, 0xd659, 0xfffe, 0xfffe, 0xffff, 0xffff, 0xf7ff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xf7df, 0xf7ff, 0xffff, 0xffff, 0xffff, 0xe73c, 0x736c, 0xb532, 0x7b6b, 0xfffe, 0xffff, 0xffff, 0xffff, 0xffdf, 0xfffe, 0xce15, 0x5ae8, 0xbdf5, 0xad34, 0x6b0d, 0x0000, 0x0040, 0x0020, 0x0000, 0xffff, 0xffff, 0xffde, 0xfffe, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xce7a, 0x2943, 0xce16, 0x5206, 0xfffe, 0xf7ff, 0xf7ff, 0xef7d, 0x944f, 0xb572, 0xde59, 0x0800, 0xdef7, 0xef3a, 0xeefb, 0x0000, 0x0000, 0x0020, 0x0040, 0xdf1d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff,
|
||||
0xffbf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffde, 0xbd32, 0xfffc, 0xfffe, 0xefff, 0xf7ff, 0xef5c, 0x9c4e, 0xde54, 0x8c75, 0x0000, 0xf756, 0xe6b5, 0xfffe, 0x2105, 0x0001, 0x0020, 0x0881, 0xffff, 0xffff, 0xf7bf, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xfffe, 0xd5d3, 0xffdb, 0xfffd, 0xf7ff, 0xf7ff, 0xfffe, 0xffdb, 0xf6f6, 0xceff, 0x0800, 0xfff8, 0xee73, 0xfffe, 0xce7b, 0x0001, 0x0000, 0x9c91, 0xffff, 0xffff, 0x8410, 0x9d14, 0x8c92, 0xf79d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffbe, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xfffe, 0xd593, 0xffbb, 0xfffd, 0xf7ff, 0xffff, 0xfffe, 0xfffc, 0xeeb6, 0xfffd, 0xffbb, 0xfeb6, 0xffdc, 0xffde, 0xffff, 0x2124, 0x0000, 0xffdf, 0xffff, 0xa514, 0xf77d, 0xfffe, 0xffff, 0x73ae, 0x9472, 0xdefb, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xf7ff, 0xffdf, 0xd593, 0xffbb, 0xffbd, 0xffff, 0xffff, 0xffff, 0xfffd, 0xffdc, 0xa3c7, 0xffda, 0xffde, 0xffdf, 0xffff, 0xfffd, 0xbdb4, 0xdeba, 0xffff, 0xffff, 0x8c71, 0xffff, 0xffff, 0x73cf, 0xbdf9, 0xffff, 0xbdf7, 0xa534, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xf7ff, 0xffff, 0xd5b4, 0xffbc, 0xffde, 0xf7df, 0xf7ff, 0xffff, 0xffff, 0xffff, 0xff97, 0xe676, 0xef7d, 0xfffe, 0xff38, 0xee94, 0xfffc, 0xffff, 0xffff, 0xbdf6, 0xef5c, 0xce9b, 0xaddb, 0x5310, 0xf7ff, 0xffff, 0xd6ba, 0xce79, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xf7ff, 0xf7ff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xd5d5, 0xffbb, 0xffde, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffbe, 0xffff, 0xe7bd, 0xf799, 0xcd2b, 0xffb7, 0xfffc, 0xffff, 0xffff, 0x9c8f, 0xffdd, 0x5a8c, 0x8c98, 0xa5bd, 0xf7ff, 0xfffe, 0x8c51, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xfffe, 0xffde, 0xffff, 0xffff, 0xffff, 0xde15, 0xff7a, 0xffdc, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xf7ff, 0xfffe, 0xfff8, 0xd50a, 0xff95, 0xffdc, 0xffff, 0xe75e, 0xd616, 0xc4f0, 0x93ad, 0x526c, 0xe77f, 0xf7ff, 0xe77b, 0xbdd7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xfffe, 0xfffe, 0xffff, 0xf7ff, 0xffff, 0xe656, 0xf655, 0xff7b, 0xffbd, 0xffde, 0xffff, 0xffff, 0xf7ff, 0xf7ff, 0xffff, 0xff7b, 0xff17, 0xed8e, 0xfed3, 0xff9a, 0xffdf, 0x8cb6, 0xd659, 0xfe73, 0xe56d, 0xcd71, 0xef5d, 0xffff, 0x8c70, 0xffdf, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xfffe, 0xfffe, 0xffff, 0xf7ff, 0xffff, 0xff9c, 0xfeb8, 0xe5f5, 0xd5f6, 0x7b8c, 0x3a06, 0xa554, 0xf7ff, 0xfffc, 0xf635, 0xed93, 0xed94, 0xfdf3, 0xfdb0, 0xf5b1, 0xee39, 0x9495, 0x9c70, 0xedee, 0xe548, 0xfed2, 0xf7bd, 0xf7df, 0xb554, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xf7ff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xfffe, 0xfffd, 0xfffe, 0xffde, 0x94b1, 0x18e2, 0x0000, 0x0000, 0xcc6e, 0xfdd3, 0xfdb3, 0xfd93, 0xfdd3, 0xfdb1, 0xfdb1, 0xfdb4, 0xe5f7, 0xf696, 0xcce8, 0xdd69, 0xc5d0, 0xbe38, 0x7c31, 0xfffd, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xefff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xf7ff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffde, 0xde18, 0xfdb4, 0xfd72, 0xfd91, 0xfdd2, 0xfd92, 0xfdb2, 0xfd90, 0xfd91, 0xfdb2, 0xfe73, 0xfff6, 0xc56d, 0xbdb2, 0x7bef, 0xc617, 0xffdc, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xf7ff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf7ff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffde, 0xfefb, 0xfd72, 0xfdd2, 0xfdd1, 0xfdb2, 0xfdb3, 0xfd93, 0xfdf2, 0xfdb0, 0xfdb1, 0xedb3, 0x83ac, 0xfffd, 0xd613, 0xffb9, 0xffdc, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffbf, 0xffff, 0xffff, 0xffde, 0xee98, 0xfd90, 0xf5d1, 0xf5f2, 0xfdb3, 0xfdb4, 0xfdb4, 0xf5d2, 0xfdd0, 0xfd91, 0xf618, 0x5b2f, 0x0020, 0xf672, 0xf54a, 0xfef6, 0xf7ff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xe71c, 0xfd70, 0xfd91, 0xfdb2, 0xf5b3, 0xfdf3, 0xfd91, 0xfd91, 0xfd91, 0xfdb3, 0xfe37, 0xffdd, 0xad11, 0x49c0, 0xfe4d, 0xf4e3, 0xfea6, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xffff, 0xfffe, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xf550, 0xfdd3, 0xf5b3, 0xfdd3, 0xfdb2, 0xfdb2, 0xfdb2, 0xfdb2, 0xe572, 0xff9c, 0xffff, 0xfffe, 0xfffb, 0xe610, 0xe528, 0xf505, 0xf717, 0xfffc, 0xfffe, 0xffdf, 0xffff, 0xffff, 0xffff, 0xfffe,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffbb, 0xe5f4, 0xedd4, 0xfe35, 0xfdf4, 0xfdf4, 0xf5f3, 0xe5d3, 0xff7b, 0xffff, 0xf7ff, 0xffff, 0xfffe, 0xfffc, 0xff36, 0xdd6e, 0xbd6a, 0xff55, 0xfffc, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xfffe,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffde, 0xfffe, 0xe657, 0x72a8, 0x9bac, 0x82e9, 0xcd93, 0xfffd, 0xfffe, 0xffff, 0xffff, 0xf7ff, 0xffff, 0xffff, 0xfffe, 0xffdd, 0xe6d0, 0xfff7, 0xfffc, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xfffe,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xd699, 0x0800, 0x0800, 0x0000, 0xa4f2, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xfffc, 0xfffd, 0xfffe, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf7df, 0xce9a, 0x0000, 0x10a2, 0x0841, 0x7bf0, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf7ff, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xf7ff, 0xf7ff, 0xf7fe, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffbf, 0xffff, 0xffff, 0xfffe, 0xfffe, 0xffff, 0xffff, 0xffdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff,
|
||||
0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xfffe, 0xfffe, 0xffff, 0xffff, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffdf, 0xffff, 0xffff, 0xf7ff, 0xffff, 0xffff, 0xffff, 0xffff, 0xfffe, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xfffe
|
||||
};
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 214 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 228 KiB |
|
|
@ -0,0 +1,11 @@
|
|||
#######################################
|
||||
#T-0.99TFT
|
||||
#######################################
|
||||
# Class
|
||||
#######################################
|
||||
|
||||
TFT_GC9D01N_Class KEYWORD1
|
||||
|
||||
#######################################
|
||||
# Methods and Functions
|
||||
#######################################
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
name=T-0.99TFT_Library
|
||||
version=1.0.0
|
||||
author=LILYGO
|
||||
maintainer= <sukaibing@lilygo.cc>
|
||||
sentence=Arduino library for 0.99 TFT
|
||||
paragraph=Arduino library for 0.99 TFT. Tested with ESP32
|
||||
category=Communication
|
||||
url=https://github.com/Xinyuan-LilyGO/T-0.99TFT
|
||||
architectures=esp32
|
||||
|
|
@ -0,0 +1,298 @@
|
|||
#pragma once
|
||||
#ifdef CHAR_FONT_W8_H16
|
||||
//ascii 32~90(!~Z), (32~47)<29>ո<EFBFBD>~/,(48~57)0~9,(58~64):~@,(65~126)A~~
|
||||
//ord 0~95, (48~57)0~9,(65~126)A~z,(33~47)!~/,(58~64):~@
|
||||
unsigned char ascii[] = {
|
||||
//<2F><><EFBFBD><EFBFBD>12,<2C><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>x<EFBFBD><78>=8x16
|
||||
//0(ord:0)
|
||||
0x00, 0x00, 0x00, 0x18, 0x24, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x24, 0x18, 0x00, 0x00,
|
||||
|
||||
//(ord:1)~1
|
||||
0x00, 0x00, 0x00, 0x10, 0x70, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x7C, 0x00, 0x00,
|
||||
|
||||
//(ord:2)~2
|
||||
0x00, 0x00, 0x00, 0x3C, 0x42, 0x42, 0x42, 0x04, 0x04, 0x08, 0x10, 0x20, 0x42, 0x7E, 0x00, 0x00,
|
||||
|
||||
//(ord:3)~3
|
||||
0x00, 0x00, 0x00, 0x3C, 0x42, 0x42, 0x04, 0x18, 0x04, 0x02, 0x02, 0x42, 0x44, 0x38, 0x00, 0x00,
|
||||
|
||||
//(ord:4)~4
|
||||
0x00, 0x00, 0x00, 0x04, 0x0C, 0x14, 0x24, 0x24, 0x44, 0x44, 0x7E, 0x04, 0x04, 0x1E, 0x00, 0x00,
|
||||
|
||||
//(ord:5)~5
|
||||
0x00, 0x00, 0x00, 0x7E, 0x40, 0x40, 0x40, 0x58, 0x64, 0x02, 0x02, 0x42, 0x44, 0x38, 0x00, 0x00,
|
||||
|
||||
//(ord:0)~6
|
||||
0x00, 0x00, 0x00, 0x1C, 0x24, 0x40, 0x40, 0x58, 0x64, 0x42, 0x42, 0x42, 0x24, 0x18, 0x00, 0x00,
|
||||
|
||||
//(ord:0)~7
|
||||
0x00, 0x00, 0x00, 0x7E, 0x44, 0x44, 0x08, 0x08, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00,
|
||||
|
||||
//(ord:0)~8
|
||||
0x00, 0x00, 0x00, 0x3C, 0x42, 0x42, 0x42, 0x24, 0x18, 0x24, 0x42, 0x42, 0x42, 0x3C, 0x00, 0x00,
|
||||
|
||||
//(ord:0)~9
|
||||
0x00, 0x00, 0x00, 0x18, 0x24, 0x42, 0x42, 0x42, 0x26, 0x1A, 0x02, 0x02, 0x24, 0x38, 0x00, 0x00,
|
||||
|
||||
// A~Z,<2C><><EFBFBD><EFBFBD>12; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>Ӧ<EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>x<EFBFBD><78>=8x16
|
||||
//(ord:10)~A
|
||||
0x00, 0x00, 0x00, 0x10, 0x10, 0x18, 0x28, 0x28, 0x24, 0x3C, 0x44, 0x42, 0x42, 0xE7, 0x00, 0x00,
|
||||
|
||||
//(ord:11)~B
|
||||
0x00, 0x00, 0x00, 0xF8, 0x44, 0x44, 0x44, 0x78, 0x44, 0x42, 0x42, 0x42, 0x44, 0xF8, 0x00, 0x00,
|
||||
|
||||
//(ord:12)~C
|
||||
0x00, 0x00, 0x00, 0x3E, 0x42, 0x42, 0x80, 0x80, 0x80, 0x80, 0x80, 0x42, 0x44, 0x38, 0x00, 0x00,
|
||||
|
||||
//(ord:13)~D
|
||||
0x00, 0x00, 0x00, 0xF8, 0x44, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x44, 0xF8, 0x00, 0x00,
|
||||
|
||||
//(ord:14)~E
|
||||
0x00, 0x00, 0x00, 0xFC, 0x42, 0x48, 0x48, 0x78, 0x48, 0x48, 0x40, 0x42, 0x42, 0xFC, 0x00, 0x00,
|
||||
|
||||
//(ord:15)~F
|
||||
0x00, 0x00, 0x00, 0xFC, 0x42, 0x48, 0x48, 0x78, 0x48, 0x48, 0x40, 0x40, 0x40, 0xE0, 0x00, 0x00,
|
||||
|
||||
//(ord:16)~G
|
||||
0x00, 0x00, 0x00, 0x3C, 0x44, 0x44, 0x80, 0x80, 0x80, 0x8E, 0x84, 0x44, 0x44, 0x38, 0x00, 0x00,
|
||||
|
||||
//(ord:17)~H
|
||||
0x00, 0x00, 0x00, 0xE7, 0x42, 0x42, 0x42, 0x42, 0x7E, 0x42, 0x42, 0x42, 0x42, 0xE7, 0x00, 0x00,
|
||||
|
||||
//(ord:18)~I
|
||||
0x00, 0x00, 0x00, 0x7C, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x7C, 0x00, 0x00,
|
||||
|
||||
//(ord:19)~J
|
||||
0x00, 0x00, 0x00, 0x3E, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x88, 0xF0,
|
||||
|
||||
//(ord:20)~K
|
||||
0x00, 0x00, 0x00, 0xEE, 0x44, 0x48, 0x50, 0x70, 0x50, 0x48, 0x48, 0x44, 0x44, 0xEE, 0x00, 0x00,
|
||||
|
||||
//(ord:21)~L
|
||||
0x00, 0x00, 0x00, 0xE0, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x42, 0xFE, 0x00, 0x00,
|
||||
|
||||
//(ord:22)~M
|
||||
0x00, 0x00, 0x00, 0xEE, 0x6C, 0x6C, 0x6C, 0x6C, 0x54, 0x54, 0x54, 0x54, 0x54, 0xD6, 0x00, 0x00,
|
||||
|
||||
//(ord:23)~N
|
||||
0x00, 0x00, 0x00, 0xC7, 0x62, 0x62, 0x52, 0x52, 0x4A, 0x4A, 0x4A, 0x46, 0x46, 0xE2, 0x00, 0x00,
|
||||
|
||||
//(ord:24)~O
|
||||
0x00, 0x00, 0x00, 0x38, 0x44, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x44, 0x38, 0x00, 0x00,
|
||||
|
||||
//(ord:25)~P
|
||||
0x00, 0x00, 0x00, 0xFC, 0x42, 0x42, 0x42, 0x42, 0x7C, 0x40, 0x40, 0x40, 0x40, 0xE0, 0x00, 0x00,
|
||||
|
||||
//(ord:26)~Q
|
||||
0x00, 0x00, 0x00, 0x38, 0x44, 0x82, 0x82, 0x82, 0x82, 0x82, 0xB2, 0xCA, 0x4C, 0x38, 0x06, 0x00,
|
||||
|
||||
//(ord:27)~R
|
||||
0x00, 0x00, 0x00, 0xFC, 0x42, 0x42, 0x42, 0x7C, 0x48, 0x48, 0x44, 0x44, 0x42, 0xE3, 0x00, 0x00,
|
||||
|
||||
//(ord:28)~S
|
||||
0x00, 0x00, 0x00, 0x3E, 0x42, 0x42, 0x40, 0x20, 0x18, 0x04, 0x02, 0x42, 0x42, 0x7C, 0x00, 0x00,
|
||||
|
||||
//(ord:29)~T
|
||||
0x00, 0x00, 0x00, 0xFE, 0x92, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x38, 0x00, 0x00,
|
||||
|
||||
//(ord:30)~U
|
||||
0x00, 0x00, 0x00, 0xE7, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x3C, 0x00, 0x00,
|
||||
|
||||
//(ord:31)~V
|
||||
0x00, 0x00, 0x00, 0xE7, 0x42, 0x42, 0x44, 0x24, 0x24, 0x28, 0x28, 0x18, 0x10, 0x10, 0x00, 0x00,
|
||||
|
||||
//(ord:32)~W
|
||||
0x00, 0x00, 0x00, 0xD6, 0x92, 0x92, 0x92, 0x92, 0xAA, 0xAA, 0x6C, 0x44, 0x44, 0x44, 0x00, 0x00,
|
||||
|
||||
//(ord:33)~X
|
||||
0x00, 0x00, 0x00, 0xE7, 0x42, 0x24, 0x24, 0x18, 0x18, 0x18, 0x24, 0x24, 0x42, 0xE7, 0x00, 0x00,
|
||||
|
||||
//(ord:34)~Y
|
||||
0x00, 0x00, 0x00, 0xEE, 0x44, 0x44, 0x28, 0x28, 0x10, 0x10, 0x10, 0x10, 0x10, 0x38, 0x00, 0x00,
|
||||
|
||||
//(ord:35)~Z
|
||||
0x00, 0x00, 0x00, 0x7E, 0x84, 0x04, 0x08, 0x08, 0x10, 0x20, 0x20, 0x42, 0x42, 0xFC, 0x00, 0x00,
|
||||
|
||||
//(ord:36)~ [
|
||||
0x00, 0x1E, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x1E, 0x00,
|
||||
|
||||
//(ord:37)~ '\'
|
||||
0x00, 0x00, 0x40, 0x40, 0x20, 0x20, 0x10, 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x04, 0x02, 0x02,
|
||||
|
||||
//(ord:38)~ ]
|
||||
0x00, 0x78, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x78, 0x00,
|
||||
|
||||
//(ord:39)~ ^
|
||||
0x00, 0x1C, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
//(ord:40)~ _
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,
|
||||
|
||||
//(ord:41)~ `
|
||||
0x00, 0x60, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
//(ord:42)~ a
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x42, 0x1E, 0x22, 0x42, 0x42, 0x3F, 0x00, 0x00,
|
||||
|
||||
//(ord:43)~ b
|
||||
0x00, 0x00, 0x00, 0xC0, 0x40, 0x40, 0x40, 0x58, 0x64, 0x42, 0x42, 0x42, 0x64, 0x58, 0x00, 0x00,
|
||||
|
||||
//(ord:44)~ c
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x22, 0x40, 0x40, 0x40, 0x22, 0x1C, 0x00, 0x00,
|
||||
|
||||
//(ord:45)~ d
|
||||
0x00, 0x00, 0x00, 0x06, 0x02, 0x02, 0x02, 0x1E, 0x22, 0x42, 0x42, 0x42, 0x26, 0x1B, 0x00, 0x00,
|
||||
|
||||
//(ord:46)~ e
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x42, 0x7E, 0x40, 0x40, 0x42, 0x3C, 0x00, 0x00,
|
||||
|
||||
//(ord:47)~ f
|
||||
0x00, 0x00, 0x00, 0x0F, 0x11, 0x10, 0x10, 0x7E, 0x10, 0x10, 0x10, 0x10, 0x10, 0x7C, 0x00, 0x00,
|
||||
|
||||
//(ord:48)~ g
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x44, 0x44, 0x38, 0x40, 0x3C, 0x42, 0x42, 0x3C,
|
||||
|
||||
//(ord:49)~ h
|
||||
0x00, 0x00, 0x00, 0xC0, 0x40, 0x40, 0x40, 0x5C, 0x62, 0x42, 0x42, 0x42, 0x42, 0xE7, 0x00, 0x00,
|
||||
|
||||
//(ord:50)~ i
|
||||
0x00, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x70, 0x10, 0x10, 0x10, 0x10, 0x10, 0x7C, 0x00, 0x00,
|
||||
|
||||
//(ord:51)~ j
|
||||
0x00, 0x00, 0x00, 0x0C, 0x0C, 0x00, 0x00, 0x1C, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x44, 0x78,
|
||||
|
||||
//(ord:52)~ k
|
||||
0x00, 0x00, 0x00, 0xC0, 0x40, 0x40, 0x40, 0x4E, 0x48, 0x50, 0x68, 0x48, 0x44, 0xEE, 0x00, 0x00,
|
||||
|
||||
//(ord:53)~ l
|
||||
0x00, 0x00, 0x00, 0x70, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x7C, 0x00, 0x00,
|
||||
|
||||
//(ord:54)~ m
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x49, 0x49, 0x49, 0x49, 0x49, 0xED, 0x00, 0x00,
|
||||
|
||||
//(ord:55)~ n
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDC, 0x62, 0x42, 0x42, 0x42, 0x42, 0xE7, 0x00, 0x00,
|
||||
|
||||
//(ord:56)~ o
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x42, 0x42, 0x42, 0x42, 0x42, 0x3C, 0x00, 0x00,
|
||||
|
||||
//(ord:57)~ p
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD8, 0x64, 0x42, 0x42, 0x42, 0x44, 0x78, 0x40, 0xE0,
|
||||
|
||||
//(ord:58)~ q
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x22, 0x42, 0x42, 0x42, 0x22, 0x1E, 0x02, 0x07,
|
||||
|
||||
//(ord:59)~ r
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEE, 0x32, 0x20, 0x20, 0x20, 0x20, 0xF8, 0x00, 0x00,
|
||||
|
||||
//(ord:60)~ s
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x42, 0x40, 0x3C, 0x02, 0x42, 0x7C, 0x00, 0x00,
|
||||
|
||||
//(ord:61)~ t
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x7C, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0C, 0x00, 0x00,
|
||||
|
||||
//(ord:62)~ u
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6, 0x42, 0x42, 0x42, 0x42, 0x46, 0x3B, 0x00, 0x00,
|
||||
|
||||
//(ord:63)~ v
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE7, 0x42, 0x24, 0x24, 0x28, 0x10, 0x10, 0x00, 0x00,
|
||||
|
||||
//(ord:64)~ w
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD7, 0x92, 0x92, 0xAA, 0xAA, 0x44, 0x44, 0x00, 0x00,
|
||||
|
||||
//(ord:65)~ x
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6E, 0x24, 0x18, 0x18, 0x18, 0x24, 0x76, 0x00, 0x00,
|
||||
|
||||
//(ord:66)~ y
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE7, 0x42, 0x24, 0x24, 0x28, 0x18, 0x10, 0x10, 0xE0,
|
||||
|
||||
//(ord:67)~ z
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x44, 0x08, 0x10, 0x10, 0x22, 0x7E, 0x00, 0x00,
|
||||
|
||||
//(ord:68)~ {
|
||||
0x00, 0x03, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x03, 0x00,
|
||||
|
||||
//(ord:69)~ |
|
||||
0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
|
||||
|
||||
//(ord:70)~ }
|
||||
0x00, 0x60, 0x10, 0x10, 0x10, 0x10, 0x10, 0x08, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x60, 0x00,
|
||||
|
||||
//(ord:71)~ ~
|
||||
0x30, 0x4C, 0x43, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
|
||||
//(ord:72)~ <20>ո<EFBFBD>
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
//(ord:73)~ !
|
||||
0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00,
|
||||
|
||||
//(ord:74)~ "
|
||||
0x00, 0x12, 0x36, 0x24, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
//(ord:75)~ #
|
||||
0x00, 0x00, 0x00, 0x24, 0x24, 0x24, 0xFE, 0x48, 0x48, 0x48, 0xFE, 0x48, 0x48, 0x48, 0x00, 0x00,
|
||||
|
||||
//(ord:76)~ $
|
||||
0x00, 0x00, 0x10, 0x38, 0x54, 0x54, 0x50, 0x30, 0x18, 0x14, 0x14, 0x54, 0x54, 0x38, 0x10, 0x10,
|
||||
|
||||
//(ord:77)~ %
|
||||
0x00, 0x00, 0x00, 0x44, 0xA4, 0xA8, 0xA8, 0xA8, 0x54, 0x1A, 0x2A, 0x2A, 0x2A, 0x44, 0x00, 0x00,
|
||||
|
||||
//(ord:78)~ &
|
||||
0x00, 0x00, 0x00, 0x30, 0x48, 0x48, 0x48, 0x50, 0x6E, 0xA4, 0x94, 0x88, 0x89, 0x76, 0x00, 0x00,
|
||||
|
||||
//(ord:79)~ '
|
||||
0x00, 0x60, 0x60, 0x20, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
//(ord:80)~ (
|
||||
0x00, 0x02, 0x04, 0x08, 0x08, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x04, 0x02, 0x00,
|
||||
|
||||
//(ord:81)~ )
|
||||
0x00, 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, 0x20, 0x40, 0x00,
|
||||
|
||||
//(ord:82)~ *
|
||||
0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0xD6, 0x38, 0x38, 0xD6, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
//(ord:83)~ +
|
||||
0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0xFE, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00,
|
||||
|
||||
//(ord:84)~ ,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x20, 0xC0,
|
||||
|
||||
//(ord:85)~ -
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
//(ord:86)~ .
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
|
||||
|
||||
//(ord:87)~ /
|
||||
0x00, 0x00, 0x01, 0x02, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x00,
|
||||
|
||||
//(ord:88)~ :
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00,
|
||||
|
||||
//(ord:89)~ ;
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x20,
|
||||
|
||||
//(ord:90)~ <
|
||||
0x00, 0x00, 0x00, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, 0x00,
|
||||
|
||||
//(ord:91)~ =
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
|
||||
//(ord:92)~ >
|
||||
0x00, 0x00, 0x00, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x00, 0x00,
|
||||
|
||||
//(ord:93)~ ?
|
||||
0x00, 0x00, 0x00, 0x3C, 0x42, 0x42, 0x62, 0x02, 0x04, 0x08, 0x08, 0x00, 0x18, 0x18, 0x00, 0x00,
|
||||
|
||||
//(ord:94)~ @
|
||||
0x00, 0x00, 0x00, 0x38, 0x44, 0x5A, 0xAA, 0xAA, 0xAA, 0xAA, 0xB4, 0x42, 0x44, 0x38, 0x00, 0x00,
|
||||
|
||||
//(ord:95)~ 0xff
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
|
||||
};
|
||||
#endif
|
||||
|
|
@ -0,0 +1,782 @@
|
|||
|
||||
#include "TFT_GC9D01N.h"
|
||||
#include "Fonts.h"
|
||||
|
||||
void TFT_GC9D01N_Class::begin_tft_write()
|
||||
{
|
||||
SPI.beginTransaction(SPISettings(SPI_FREQUENCY, MSBFIRST, SPI_MODE0)); // RP2040 SDK -> 68us delay!
|
||||
CS_L;
|
||||
// SET_BUS_WRITE_MODE;
|
||||
}
|
||||
|
||||
void TFT_GC9D01N_Class::end_tft_write()
|
||||
{
|
||||
// SPI_BUSY_CHECK; // Check send complete and clean out unused rx data
|
||||
CS_H;
|
||||
SPI.endTransaction(); // RP2040 SDK -> 0.7us delay
|
||||
}
|
||||
|
||||
void TFT_GC9D01N_Class::writedata(uint8_t d)
|
||||
{
|
||||
begin_tft_write();
|
||||
|
||||
DC_D; // Play safe, but should already be in data mode 高电平1为数据
|
||||
|
||||
SPI.transfer(d);
|
||||
|
||||
CS_L; // Allow more hold time for low VDI rail
|
||||
|
||||
end_tft_write();
|
||||
}
|
||||
|
||||
void TFT_GC9D01N_Class::writecommand(uint8_t c)
|
||||
{
|
||||
begin_tft_write();
|
||||
|
||||
DC_C;
|
||||
|
||||
SPI.transfer(c);
|
||||
|
||||
DC_D;
|
||||
|
||||
end_tft_write();
|
||||
|
||||
}
|
||||
|
||||
void TFT_GC9D01N_Class::lcd_init()
|
||||
{
|
||||
|
||||
RST_H;
|
||||
delay(80);
|
||||
|
||||
RST_L;
|
||||
delay(80);
|
||||
|
||||
RST_H;
|
||||
delay(480);
|
||||
|
||||
|
||||
writecommand(0xFE);
|
||||
writecommand(0xEF);
|
||||
|
||||
writecommand(0x80);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x81);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x82);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x83);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x84);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x85);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x86);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x87);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x88);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x89);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x8A);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x8B);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x8C);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x8D);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x8E);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x8F);
|
||||
writedata(0xFF);
|
||||
|
||||
writecommand(0x3A);
|
||||
writedata(0x05);
|
||||
|
||||
writecommand(0xEC);
|
||||
writedata(0x11);
|
||||
|
||||
|
||||
writecommand(0x7E);
|
||||
writedata(0x7a);
|
||||
|
||||
|
||||
writecommand(0x74);
|
||||
writedata(0x02);
|
||||
writedata(0x0E);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
writedata(0x28);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
|
||||
writecommand(0x98);
|
||||
writedata(0x3E);
|
||||
writecommand(0x99);
|
||||
writedata(0x3E);
|
||||
|
||||
|
||||
|
||||
|
||||
writecommand(0xB5);
|
||||
writedata(0x0E);
|
||||
writedata(0x0E);
|
||||
writecommand(0x60);
|
||||
writedata(0x38);
|
||||
writedata(0x09);
|
||||
writedata(0x6D);
|
||||
writedata(0x67);
|
||||
|
||||
|
||||
writecommand(0x63);
|
||||
writedata(0x38);
|
||||
writedata(0xAD);
|
||||
writedata(0x6D);
|
||||
writedata(0x67);
|
||||
writedata(0x05);
|
||||
|
||||
|
||||
writecommand(0x64);
|
||||
writedata(0x38);
|
||||
writedata(0x0B);
|
||||
writedata(0x70);
|
||||
writedata(0xAB);
|
||||
writedata(0x6D);
|
||||
writedata(0x67);
|
||||
|
||||
|
||||
writecommand(0x66);
|
||||
writedata(0x38);
|
||||
writedata(0x0F);
|
||||
writedata(0x70);
|
||||
writedata(0xAF);
|
||||
writedata(0x6d);
|
||||
writedata(0x67);
|
||||
|
||||
writecommand(0x6A);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
|
||||
writecommand(0x68);
|
||||
writedata(0x3B);
|
||||
writedata(0x08);
|
||||
writedata(0x04);
|
||||
writedata(0x00);
|
||||
writedata(0x04);
|
||||
writedata(0x64);
|
||||
writedata(0x67);
|
||||
|
||||
|
||||
|
||||
writecommand(0x6C);
|
||||
writedata(0x22);
|
||||
writedata(0x02);
|
||||
writedata(0x22);
|
||||
writedata(0x02);
|
||||
writedata(0x22);
|
||||
writedata(0x22);
|
||||
writedata(0x50);
|
||||
|
||||
writecommand(0x6E);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
writedata(0x07);
|
||||
writedata(0x01);
|
||||
writedata(0x13);
|
||||
writedata(0x11);
|
||||
|
||||
writedata(0x0B);
|
||||
writedata(0x09);
|
||||
writedata(0x16);
|
||||
writedata(0x15);
|
||||
writedata(0x1D);
|
||||
writedata(0x1E);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
writedata(0x1E);
|
||||
|
||||
writedata(0x1D);
|
||||
writedata(0x15);
|
||||
writedata(0x16);
|
||||
writedata(0x0A);
|
||||
writedata(0x0C);
|
||||
|
||||
writedata(0x12);
|
||||
writedata(0x14);
|
||||
writedata(0x02);
|
||||
writedata(0x08);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
writedata(0x00);
|
||||
|
||||
|
||||
writecommand(0xA9);
|
||||
writedata(0x1B);
|
||||
|
||||
writecommand(0xA8);
|
||||
writedata(0x6B);
|
||||
|
||||
writecommand(0xA8);
|
||||
writedata(0x6D);
|
||||
|
||||
writecommand(0xA7);
|
||||
writedata(0x40);
|
||||
|
||||
writecommand(0xAD);
|
||||
writedata(0x47);
|
||||
|
||||
|
||||
writecommand(0xAF);
|
||||
writedata(0x73);
|
||||
|
||||
writecommand(0xAF);
|
||||
writedata(0x73);
|
||||
|
||||
writecommand(0xAC);
|
||||
writedata(0x44);
|
||||
|
||||
writecommand(0xA3);
|
||||
writedata(0x6C);
|
||||
|
||||
writecommand(0xCB);
|
||||
writedata(0x00);
|
||||
|
||||
writecommand(0xCD);
|
||||
writedata(0x22);
|
||||
|
||||
|
||||
writecommand(0xC2);
|
||||
writedata(0x10);
|
||||
|
||||
writecommand(0xC5);
|
||||
writedata(0x00);
|
||||
|
||||
writecommand(0xC6);
|
||||
writedata(0x0E);
|
||||
|
||||
writecommand(0xC7);
|
||||
writedata(0x1f);
|
||||
|
||||
writecommand(0xC8);
|
||||
writedata(0x0E);
|
||||
|
||||
writecommand(0xbf);
|
||||
writedata(0x00);
|
||||
|
||||
writecommand(0xF9);
|
||||
writedata(0x20);
|
||||
|
||||
writecommand(0x9b);
|
||||
writedata(0x3b);
|
||||
writecommand(0x93);
|
||||
writedata(0x33);
|
||||
writedata(0x7f);
|
||||
writedata(0x00);
|
||||
|
||||
writecommand(0x70);
|
||||
writedata(0x0E);
|
||||
writedata(0x0f);
|
||||
writedata(0x03);
|
||||
writedata(0x0e);
|
||||
writedata(0x0f);
|
||||
writedata(0x03);
|
||||
|
||||
writecommand(0x71);
|
||||
writedata(0x0e);
|
||||
writedata(0x16);
|
||||
writedata(0x03);
|
||||
|
||||
writecommand(0x91);
|
||||
writedata(0x0e);
|
||||
writedata(0x09);
|
||||
|
||||
|
||||
|
||||
writecommand(0xc3);
|
||||
writedata(0x2c);
|
||||
writecommand(0xc4);
|
||||
writedata(0x1a);
|
||||
|
||||
|
||||
|
||||
|
||||
writecommand(0xf0);
|
||||
writedata(0x51);
|
||||
writedata(0x13);
|
||||
writedata(0x0c);
|
||||
writedata(0x06);
|
||||
writedata(0x00);
|
||||
writedata(0x2f);
|
||||
|
||||
writecommand(0xf2);
|
||||
writedata(0x51);
|
||||
writedata(0x13);
|
||||
writedata(0x0c);
|
||||
writedata(0x06);
|
||||
writedata(0x00);
|
||||
writedata(0x33);
|
||||
|
||||
writecommand(0xf1);
|
||||
writedata(0x3c);
|
||||
writedata(0x94);
|
||||
writedata(0x4f);
|
||||
writedata(0x33);
|
||||
writedata(0x34);
|
||||
writedata(0xCf);
|
||||
|
||||
writecommand(0xf3);
|
||||
writedata(0x4d);
|
||||
writedata(0x94);
|
||||
writedata(0x4f);
|
||||
writedata(0x33);
|
||||
writedata(0x34);
|
||||
writedata(0xCf);
|
||||
|
||||
|
||||
#define TFT_MAD_MY 0x80
|
||||
#define TFT_MAD_MX 0x40
|
||||
#define TFT_MAD_MV 0x20
|
||||
#define TFT_MAD_ML 0x10
|
||||
|
||||
writecommand(0x36);
|
||||
|
||||
//#if LANDSCAPE
|
||||
//writedata(0x00 | TFT_MAD_MX | TFT_MAD_MY);
|
||||
|
||||
#if (LANDSCAPE==2)||(PORTRAIT==2)
|
||||
writedata(0x00);
|
||||
#else
|
||||
writedata(0x00 | TFT_MAD_MX | TFT_MAD_MY);
|
||||
#endif
|
||||
writecommand(0x11);
|
||||
delay(200);
|
||||
writecommand(0x29);
|
||||
writecommand(0x2C);
|
||||
|
||||
|
||||
}
|
||||
|
||||
//init lcd
|
||||
int TFT_GC9D01N_Class::begin()
|
||||
{
|
||||
|
||||
pinMode(TFT_BL, OUTPUT);
|
||||
pinMode(TFT_SCLK, OUTPUT);
|
||||
pinMode(TFT_MISO, OUTPUT);
|
||||
pinMode(TFT_MOSI, OUTPUT);
|
||||
pinMode(TFT_DC, OUTPUT);
|
||||
|
||||
pinMode(TFT_CS, OUTPUT);
|
||||
pinMode(TFT_RST, OUTPUT);
|
||||
|
||||
digitalWrite(TFT_BL, LOW); //开启背光
|
||||
delay(100);
|
||||
SPI.begin(TFT_SCLK, TFT_MISO, TFT_MOSI, TFT_CS);
|
||||
|
||||
lcd_init();
|
||||
|
||||
return 1;
|
||||
|
||||
}
|
||||
|
||||
void TFT_GC9D01N_Class::backlight(uint8_t state)
|
||||
{
|
||||
digitalWrite(TFT_BL, state);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Select the block area to write to 选择写的块区域
|
||||
* @note
|
||||
* @param Xstart:
|
||||
* @param Xend:
|
||||
* @param Ystart:
|
||||
* @param Yend:
|
||||
* @retval None
|
||||
*/
|
||||
void TFT_GC9D01N_Class::BlockWrite(unsigned int Xstart, unsigned int Xend, unsigned int Ystart, unsigned int Yend)
|
||||
{
|
||||
|
||||
writecommand(0x2A);
|
||||
writedata(Xstart >> 8);
|
||||
writedata(Xstart);
|
||||
writedata(Xend >> 8);
|
||||
writedata(Xend);
|
||||
|
||||
writecommand(0x2B);
|
||||
writedata(Ystart >> 8);
|
||||
writedata(Ystart);
|
||||
writedata(Yend >> 8);
|
||||
writedata(Yend);
|
||||
|
||||
writecommand(0x2c);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Drawing function
|
||||
* @note
|
||||
* @param Xstart: starting x-coordinate x坐标开始
|
||||
* @param Ystart: starting y-coordinate y坐标结束
|
||||
* @param w: The width of the image
|
||||
* @param h: The height of the image
|
||||
* @param color:
|
||||
* @retval None
|
||||
*/
|
||||
void TFT_GC9D01N_Class::DrawImage(unsigned int Xstart, unsigned int Ystart, unsigned int w, unsigned int h, uint16_t *color)
|
||||
{
|
||||
unsigned int i, j;
|
||||
unsigned int Xend = Xstart + w;
|
||||
unsigned int Yend = Ystart + h;
|
||||
|
||||
BlockWrite(Xstart, Xend - 1, Ystart, Yend /*- 1*/);
|
||||
uint32_t len = w * h;
|
||||
|
||||
|
||||
#if LANDSCAPE
|
||||
|
||||
SPI.beginTransaction(SPISettings(SPI_FREQUENCY, MSBFIRST, SPI_MODE0));
|
||||
CS_L;
|
||||
DC_D;
|
||||
for (int i = 0; i <= h; i++) {
|
||||
for (int j = w - 1 ; j >= 0 ; j--) {
|
||||
SPI.transfer16(*(color + ((j * (Yend - Ystart)) + (i))));
|
||||
}
|
||||
}
|
||||
CS_H;
|
||||
SPI.endTransaction();
|
||||
|
||||
#else
|
||||
|
||||
SPI.beginTransaction(SPISettings(SPI_FREQUENCY, MSBFIRST, SPI_MODE0));
|
||||
CS_L;
|
||||
DC_D;
|
||||
for (int i = 0; i <= h; i++) {
|
||||
for (int j = w - 1 ; j >= 0 ; j--) {
|
||||
SPI.transfer16(*color);
|
||||
color++;
|
||||
}
|
||||
}
|
||||
CS_H;
|
||||
SPI.endTransaction();
|
||||
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
void TFT_GC9D01N_Class::DispColor(unsigned int Xstart, unsigned int Ystart, unsigned int Xend, unsigned int Yend, unsigned int color)
|
||||
{
|
||||
|
||||
|
||||
unsigned int i, j;
|
||||
uint32_t len = TFT_HEIGHT * TFT_WIDTH;
|
||||
BlockWrite(Xstart, Xend - 1, Ystart, Yend - 1);
|
||||
|
||||
SPI.beginTransaction(SPISettings(SPI_FREQUENCY, MSBFIRST, SPI_MODE0));
|
||||
CS_L;
|
||||
DC_D;
|
||||
for (i = 0; i <= TFT_HEIGHT; i++) {
|
||||
for (j = 0; j < TFT_WIDTH; j++) {
|
||||
SPI.transfer16(color);
|
||||
}
|
||||
}
|
||||
CS_H;
|
||||
SPI.endTransaction();
|
||||
|
||||
}
|
||||
|
||||
void TFT_GC9D01N_Class::WriteOneDot(unsigned int color)
|
||||
{
|
||||
|
||||
|
||||
CS_L;
|
||||
DC_D;
|
||||
|
||||
writedata(color >> 8);
|
||||
writedata(color);
|
||||
|
||||
CS_H;
|
||||
|
||||
}
|
||||
|
||||
unsigned char ToOrd( char ch)
|
||||
{
|
||||
if (ch < 32) {
|
||||
ch = 95;
|
||||
} else if ((ch >= 32) && (ch <= 47)) {
|
||||
ch = (ch - 32) + 10 + 62;
|
||||
} else if ((ch >= 48) && (ch <= 57)) {
|
||||
ch = ch - 48;
|
||||
} else if ((ch >= 58) && (ch <= 64)) {
|
||||
ch = (ch - 58) + 10 + 62 + 16;
|
||||
} else if ((ch >= 65) && (ch <= 126)) {
|
||||
ch = (ch - 65) + 10;
|
||||
} else if (ch > 126) {
|
||||
ch = 95;
|
||||
}
|
||||
|
||||
return ch;
|
||||
}
|
||||
|
||||
void hz816_s90(const unsigned char *p_ucHz, unsigned char *p_ucResult) //A conversion function that rotates an 8x16 character font 90 degrees clockwise 把8x16字符字模顺时针旋转90度的转换函数
|
||||
{
|
||||
|
||||
unsigned char a;
|
||||
|
||||
unsigned char b;
|
||||
|
||||
unsigned char c;
|
||||
|
||||
unsigned char uiBuffer[16];
|
||||
for (a = 0; a < 16; a++)
|
||||
|
||||
{
|
||||
uiBuffer[a] = p_ucHz[a];
|
||||
}
|
||||
|
||||
c = 0;
|
||||
|
||||
for (a = 0; a < 8; a++)
|
||||
|
||||
{
|
||||
|
||||
for (b = 0; b < 8; b++)
|
||||
|
||||
{
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] << 1;
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] & 0xfe;
|
||||
|
||||
if (uiBuffer[15 - b] >= 0x80)
|
||||
|
||||
{
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] + 1;
|
||||
|
||||
}
|
||||
|
||||
uiBuffer[15 - b] = uiBuffer[15 - b] << 1;
|
||||
|
||||
|
||||
}
|
||||
|
||||
c++;
|
||||
|
||||
for (b = 0; b < 8; b++)
|
||||
|
||||
{
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] << 1;
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] & 0xfe;
|
||||
|
||||
if (uiBuffer[7 - b] >= 0x80)
|
||||
|
||||
{
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] + 1;
|
||||
|
||||
}
|
||||
|
||||
uiBuffer[7 - b] = uiBuffer[7 - b] << 1;
|
||||
|
||||
}
|
||||
|
||||
c++;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void hz816_s270(const unsigned char *p_ucHz, unsigned char *p_ucResult)
|
||||
{
|
||||
|
||||
unsigned char a;
|
||||
|
||||
unsigned char b;
|
||||
|
||||
unsigned char c;
|
||||
|
||||
unsigned char uiBuffer[16];
|
||||
|
||||
|
||||
for (a = 0; a < 16; a++)
|
||||
|
||||
{
|
||||
|
||||
uiBuffer[a] = p_ucHz[a];
|
||||
|
||||
}
|
||||
|
||||
c = 0;
|
||||
|
||||
for (a = 0; a < 8; a++)
|
||||
|
||||
{
|
||||
|
||||
for (b = 0; b < 8; b++)
|
||||
|
||||
{
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] << 1;
|
||||
|
||||
|
||||
if ((uiBuffer[b] & 0x01) >= 0x01)
|
||||
|
||||
{
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] + 1;
|
||||
|
||||
}
|
||||
|
||||
uiBuffer[b] = uiBuffer[b] >> 1;
|
||||
|
||||
|
||||
}
|
||||
|
||||
c++;
|
||||
|
||||
for (b = 0; b < 8; b++)
|
||||
|
||||
{
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] << 1;
|
||||
|
||||
if ((uiBuffer[8 + b] & 0x01) >= 0x01)
|
||||
|
||||
{
|
||||
|
||||
p_ucResult[c] = p_ucResult[c] + 1;
|
||||
|
||||
}
|
||||
|
||||
uiBuffer[8 + b] = uiBuffer[8 + b] >> 1;
|
||||
|
||||
}
|
||||
|
||||
c++;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void TFT_GC9D01N_Class::DispOneChar( char ord, unsigned int Xstart, unsigned int Ystart, unsigned int TextColor, unsigned int BackColor) // ord:0~95
|
||||
{
|
||||
unsigned char hou[16] = {0};
|
||||
unsigned char i, j;
|
||||
unsigned char *p;
|
||||
unsigned char dat;
|
||||
unsigned int index;
|
||||
|
||||
|
||||
index = ord;
|
||||
|
||||
if (index > 95)
|
||||
index = 95;
|
||||
|
||||
index = index * ((FONT_W / 8) * FONT_H);
|
||||
|
||||
p = ascii;
|
||||
p = p + index ;
|
||||
|
||||
|
||||
#if LANDSCAPE
|
||||
|
||||
int y = Ystart;
|
||||
y = y - 23;
|
||||
Ystart = abs(y);
|
||||
|
||||
|
||||
BlockWrite(Ystart, Ystart + (FONT_H - 1), Xstart, Xstart + (FONT_W - 1));
|
||||
|
||||
hz816_s90(p, hou);
|
||||
|
||||
for (i = 0; i < (FONT_W / 8 * FONT_H); i++) {
|
||||
dat = hou[i];
|
||||
for (j = 0; j < 8; j++) {
|
||||
if ((dat << j) & 0x80) {
|
||||
WriteOneDot(TextColor);
|
||||
} else {
|
||||
WriteOneDot(BackColor);
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
BlockWrite(Xstart, Xstart + (FONT_W - 1), Ystart, Ystart + (FONT_H - 1));
|
||||
|
||||
|
||||
for (i = 0; i < (FONT_W / 8 * FONT_H); i++) {
|
||||
dat = *p++;
|
||||
for (j = 0; j < 8; j++) {
|
||||
if ((dat << j) & 0x80) {
|
||||
WriteOneDot(TextColor);
|
||||
} else {
|
||||
WriteOneDot(BackColor);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
void TFT_GC9D01N_Class::DispStr( char *str, unsigned int Xstart, unsigned int Ystart, unsigned int TextColor, unsigned int BackColor)
|
||||
{
|
||||
|
||||
while (!(*str == '\0')) {
|
||||
DispOneChar(ToOrd(*str++), Xstart, Ystart, TextColor, BackColor);
|
||||
|
||||
#if LANDSCAPE
|
||||
if (Xstart > ((TFT_HEIGHT - 1) - FONT_W)) {
|
||||
//Xstart = 0;
|
||||
//Ystart = Ystart - FONT_H;
|
||||
} else {
|
||||
Xstart = Xstart + FONT_W;
|
||||
}
|
||||
|
||||
if (Ystart > ((TFT_WIDTH - 1) - FONT_H)) {
|
||||
Ystart = 23;
|
||||
}
|
||||
#else
|
||||
|
||||
|
||||
if (Xstart > ((TFT_WIDTH - 1) - FONT_W)) {
|
||||
Xstart = 0;
|
||||
Ystart = Ystart + FONT_H;
|
||||
} else {
|
||||
Xstart = Xstart + FONT_W;
|
||||
}
|
||||
|
||||
if (Ystart > ((TFT_HEIGHT - 1) - FONT_H)) {
|
||||
Ystart = 0;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
}
|
||||
BlockWrite(0, TFT_WIDTH - 1, 0, TFT_HEIGHT - 1);
|
||||
}
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <Arduino.h>
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
#include <SPI.h>
|
||||
|
||||
#define TFT_WIDTH 40
|
||||
#define TFT_HEIGHT 160
|
||||
#define CHAR_FONT_W8_H16 //typeface
|
||||
|
||||
#define LANDSCAPE 1 //Horizontal screen
|
||||
//#define PORTRAIT 2
|
||||
|
||||
#define TFT_MISO -1
|
||||
#define TFT_MOSI 10//21
|
||||
#define TFT_SCLK 20//22
|
||||
#define TFT_CS -1//18 // Chip select control pin
|
||||
#define TFT_DC 2 // Data Command control pin
|
||||
#define TFT_RST -1//27
|
||||
#define TFT_BL 8//4
|
||||
|
||||
/*
|
||||
#define TFT_MISO -1
|
||||
#define TFT_MOSI 21
|
||||
#define TFT_SCLK 22
|
||||
#define TFT_CS 18 // Chip select control pin
|
||||
#define TFT_DC 2 // Data Command control pin
|
||||
#define TFT_RST 27
|
||||
#define TFT_BL 23//4
|
||||
*/
|
||||
//RGB565
|
||||
#define RED 0xF800
|
||||
#define GREEN 0x07E0
|
||||
#define BLUE 0x001F
|
||||
#define WHITE 0xFFFF
|
||||
#define BLACK 0x0000
|
||||
#define GRAY 0xEF5D
|
||||
#define GRAY75 0x39E7
|
||||
#define GRAY50 0x7BEF
|
||||
#define GRAY25 0xADB5
|
||||
|
||||
#ifdef CHAR_FONT_W8_H16
|
||||
#define FONT_W 8
|
||||
#define FONT_H 16
|
||||
#endif
|
||||
|
||||
|
||||
#define SPI_FREQUENCY 40000000
|
||||
#define DC_C digitalWrite(TFT_DC, LOW)
|
||||
#define DC_D digitalWrite(TFT_DC, HIGH)
|
||||
#if (TFT_CS==-1)
|
||||
#define CS_L ;//digitalWrite(TFT_CS, LOW)
|
||||
#define CS_H ;//digitalWrite(TFT_CS, HIGH)
|
||||
#else
|
||||
#define CS_L digitalWrite(TFT_CS, LOW)
|
||||
#define CS_H digitalWrite(TFT_CS, HIGH)
|
||||
#endif
|
||||
|
||||
#if (TFT_RST==-1)
|
||||
#define RST_L ;//digitalWrite(TFT_RST, LOW)
|
||||
#define RST_H ;//digitalWrite(TFT_RST, HIGH)
|
||||
#else
|
||||
#define RST_L digitalWrite(TFT_RST, LOW)
|
||||
#define RST_H digitalWrite(TFT_RST, HIGH)
|
||||
#endif
|
||||
|
||||
|
||||
class TFT_GC9D01N_Class
|
||||
{
|
||||
public:
|
||||
|
||||
int begin();
|
||||
void begin_tft_write();
|
||||
void end_tft_write();
|
||||
void writedata(uint8_t d);
|
||||
void writecommand(uint8_t c);
|
||||
void lcd_init();
|
||||
void backlight(uint8_t state);
|
||||
void BlockWrite(unsigned int Xstart, unsigned int Xend, unsigned int Ystart, unsigned int Yend) ;
|
||||
void DrawImage(unsigned int Xstart, unsigned int Ystart, unsigned int Xend, unsigned int Yend, uint16_t *color);
|
||||
void DispColor(unsigned int Xstart, unsigned int Ystart, unsigned int Xend, unsigned int Yend, unsigned int color);
|
||||
void WriteOneDot(unsigned int color);
|
||||
void DispOneChar( char ord, unsigned int Xstart, unsigned int Ystart, unsigned int TextColor, unsigned int BackColor);
|
||||
void DispStr( char *str, unsigned int Xstart, unsigned int Ystart, unsigned int TextColor, unsigned int BackColor);
|
||||
|
||||
};
|
||||
Loading…
Reference in New Issue