chgt ui
This commit is contained in:
parent
169b8d62b1
commit
c7b46b5bfe
2
.vscode/c_cpp_properties.json
vendored
2
.vscode/c_cpp_properties.json
vendored
@ -2,7 +2,7 @@
|
|||||||
"configurations": [
|
"configurations": [
|
||||||
{
|
{
|
||||||
"name": "ESP-IDF",
|
"name": "ESP-IDF",
|
||||||
"compilerPath": "${config:idf.toolsPath}/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32s3-elf-gcc",
|
"compilerPath": "${config:idf.toolsPath}/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32-elf-gcc",
|
||||||
"compileCommands": "${config:idf.buildPath}/compile_commands.json",
|
"compileCommands": "${config:idf.buildPath}/compile_commands.json",
|
||||||
"includePath": [
|
"includePath": [
|
||||||
"${config:idf.espIdfPath}/components/**",
|
"${config:idf.espIdfPath}/components/**",
|
||||||
|
|||||||
53
.vscode/launch.json
vendored
53
.vscode/launch.json
vendored
@ -41,6 +41,12 @@
|
|||||||
"args": [],
|
"args": [],
|
||||||
"cwd": "${workspaceFolder}",
|
"cwd": "${workspaceFolder}",
|
||||||
"stopAtEntry": false,
|
"stopAtEntry": false,
|
||||||
|
"setupCommands": [
|
||||||
|
{
|
||||||
|
"description": "Load LVGL GDB helpers",
|
||||||
|
"text": "source /home/marc/domotic/components/domotic_display/test_host/managed_components/lvgl__lvgl/scripts/gdb/gdbinit.py"
|
||||||
|
}
|
||||||
|
],
|
||||||
"linux": {
|
"linux": {
|
||||||
"MIMode": "gdb",
|
"MIMode": "gdb",
|
||||||
"miDebuggerPath": "/usr/bin/gdb"
|
"miDebuggerPath": "/usr/bin/gdb"
|
||||||
@ -53,6 +59,51 @@
|
|||||||
"miDebuggerPath": "C:\\MinGw\\bin\\gdb.exe"
|
"miDebuggerPath": "C:\\MinGw\\bin\\gdb.exe"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "Debug remindme with gdb",
|
||||||
|
"type": "cppdbg",
|
||||||
|
"request": "launch",
|
||||||
|
"preLaunchTask": "Build - Build IHM",
|
||||||
|
"program": "${workspaceFolder}/components/RemindMe/test/build/remindme_host_test.elf",
|
||||||
|
"args": [],
|
||||||
|
"cwd": "${workspaceFolder}",
|
||||||
|
"stopAtEntry": false,
|
||||||
|
"setupCommands": [
|
||||||
|
{
|
||||||
|
"description": "Load LVGL GDB helpers",
|
||||||
|
"text": "source /home/marc/domotic/components/domotic_display/test_host/managed_components/lvgl__lvgl/scripts/gdb/gdbinit.py"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"linux": {
|
||||||
|
"MIMode": "gdb",
|
||||||
|
"miDebuggerPath": "/usr/bin/gdb"
|
||||||
|
},
|
||||||
|
"osx": {
|
||||||
|
"MIMode": "lldb"
|
||||||
|
},
|
||||||
|
"windows": {
|
||||||
|
"MIMode": "gdb",
|
||||||
|
"miDebuggerPath": "C:\\MinGw\\bin\\gdb.exe"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Debug comp2 (Linux)",
|
||||||
|
"type": "cppdbg",
|
||||||
|
"request": "launch",
|
||||||
|
"program": "${workspaceFolder}/components/domotic_display/test_host/build/comp2_test",
|
||||||
|
"args": [],
|
||||||
|
"stopAtEntry": false,
|
||||||
|
"cwd": "${workspaceFolder}",
|
||||||
|
"environment": [],
|
||||||
|
"externalConsole": false,
|
||||||
|
"MIMode": "gdb",
|
||||||
|
"miDebuggerPath": "/usr/bin/gdb",
|
||||||
|
"setupCommands": [
|
||||||
|
{
|
||||||
|
"description": "Enable pretty printing",
|
||||||
|
"text": "-enable-pretty-printing"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
7
.vscode/settings.json
vendored
7
.vscode/settings.json
vendored
@ -7,12 +7,13 @@
|
|||||||
"idf.customExtraVars": {
|
"idf.customExtraVars": {
|
||||||
"OPENOCD_SCRIPTS": "/home/marc/.espressif/tools/openocd-esp32/v0.12.0-esp32-20240318/openocd-esp32/share/openocd/scripts",
|
"OPENOCD_SCRIPTS": "/home/marc/.espressif/tools/openocd-esp32/v0.12.0-esp32-20240318/openocd-esp32/share/openocd/scripts",
|
||||||
"ESP_ROM_ELF_DIR": "/home/marc/.espressif/tools/esp-rom-elfs/20240305/",
|
"ESP_ROM_ELF_DIR": "/home/marc/.espressif/tools/esp-rom-elfs/20240305/",
|
||||||
"IDF_TARGET": "esp32s3"
|
"IDF_TARGET": "esp32"
|
||||||
},
|
},
|
||||||
"idf.gitPath": "git",
|
"idf.gitPath": "git",
|
||||||
"idf.adapterTargetName": "esp32s3",
|
"idf.adapterTargetName": "esp32s3",
|
||||||
"idf.openOcdConfigs": [
|
"idf.openOcdConfigs": [
|
||||||
"board/esp32s3-builtin.cfg"
|
"interface/ftdi/esp_ftdi.cfg",
|
||||||
|
"target/esp32.cfg"
|
||||||
],
|
],
|
||||||
"idf.flashType": "UART",
|
"idf.flashType": "UART",
|
||||||
"idf.port": "/dev/ttyUSB0",
|
"idf.port": "/dev/ttyUSB0",
|
||||||
@ -112,7 +113,7 @@
|
|||||||
"clangd.path": "/home/marc/.espressif/tools/esp-clang/esp-19.1.2_20250312/esp-clang/bin/clangd",
|
"clangd.path": "/home/marc/.espressif/tools/esp-clang/esp-19.1.2_20250312/esp-clang/bin/clangd",
|
||||||
"clangd.arguments": [
|
"clangd.arguments": [
|
||||||
"--background-index",
|
"--background-index",
|
||||||
"--query-driver=/home/marc/.espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32s3-elf-gcc",
|
"--query-driver=/home/marc/.espressif/tools/xtensa-esp-elf/esp-14.2.0_20241119/xtensa-esp-elf/bin/xtensa-esp32-elf-gcc",
|
||||||
"--compile-commands-dir=/home/marc/domotic/build"
|
"--compile-commands-dir=/home/marc/domotic/build"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
5
components/RemindMe/CMakeLists.txt
Normal file
5
components/RemindMe/CMakeLists.txt
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.16)
|
||||||
|
|
||||||
|
idf_component_register(SRCS "RemindMe.c"
|
||||||
|
INCLUDE_DIRS "include"
|
||||||
|
REQUIRES json spiffs)
|
||||||
216
components/RemindMe/RemindMe.c
Normal file
216
components/RemindMe/RemindMe.c
Normal file
@ -0,0 +1,216 @@
|
|||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include "esp_log.h"
|
||||||
|
#include "cJSON.h"
|
||||||
|
#include "esp_spiffs.h"
|
||||||
|
#include "RemindMe.h"
|
||||||
|
#include <time.h>
|
||||||
|
|
||||||
|
static const char *TAG = "JSON_READER";
|
||||||
|
|
||||||
|
static void copy_json_string(cJSON *item,
|
||||||
|
const char *key,
|
||||||
|
char *dst,
|
||||||
|
size_t dst_size)
|
||||||
|
{
|
||||||
|
cJSON *v = cJSON_GetObjectItem(item, key);
|
||||||
|
if (cJSON_IsString(v) && v->valuestring)
|
||||||
|
{
|
||||||
|
strncpy(dst, v->valuestring, dst_size - 1);
|
||||||
|
dst[dst_size - 1] = '\0';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static RemindMeEvent *get_events_from_file(const char *filepath, int *count)
|
||||||
|
{
|
||||||
|
*count = 0;
|
||||||
|
|
||||||
|
FILE *f = fopen(filepath, "r");
|
||||||
|
if (!f)
|
||||||
|
{
|
||||||
|
ESP_LOGE(TAG, "Impossible d'ouvrir le fichier");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
fseek(f, 0, SEEK_END);
|
||||||
|
long size = ftell(f);
|
||||||
|
fseek(f, 0, SEEK_SET);
|
||||||
|
|
||||||
|
char *json_string = malloc(size + 1);
|
||||||
|
if (!json_string)
|
||||||
|
{
|
||||||
|
fclose(f);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
fread(json_string, 1, size, f);
|
||||||
|
fclose(f);
|
||||||
|
json_string[size] = 0;
|
||||||
|
|
||||||
|
cJSON *json = cJSON_Parse(json_string);
|
||||||
|
free(json_string);
|
||||||
|
|
||||||
|
if (!cJSON_IsArray(json))
|
||||||
|
{
|
||||||
|
cJSON_Delete(json);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
int n = cJSON_GetArraySize(json);
|
||||||
|
if (n == 0)
|
||||||
|
{
|
||||||
|
cJSON_Delete(json);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
RemindMeEvent *events = calloc(n, sizeof(RemindMeEvent));
|
||||||
|
if (!events)
|
||||||
|
{
|
||||||
|
cJSON_Delete(json);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < n; i++)
|
||||||
|
{
|
||||||
|
cJSON *item = cJSON_GetArrayItem(json, i);
|
||||||
|
copy_json_string(item, "evenement", events[i].evenement, sizeof(events[i].evenement));
|
||||||
|
copy_json_string(item, "affichage", events[i].affichage, sizeof(events[i].affichage));
|
||||||
|
copy_json_string(item, "date", events[i].date, sizeof(events[i].date));
|
||||||
|
copy_json_string(item, "type", events[i].type, sizeof(events[i].type));
|
||||||
|
}
|
||||||
|
|
||||||
|
cJSON_Delete(json);
|
||||||
|
*count = n;
|
||||||
|
return events;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void read_json_file(const char *filepath, cJSON **root)
|
||||||
|
{
|
||||||
|
|
||||||
|
FILE *f = fopen(filepath, "r");
|
||||||
|
if (!f)
|
||||||
|
{
|
||||||
|
ESP_LOGE(TAG, "Impossible d'ouvrir le fichier");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
fseek(f, 0, SEEK_END);
|
||||||
|
long size = ftell(f);
|
||||||
|
fseek(f, 0, SEEK_SET);
|
||||||
|
|
||||||
|
char *json_string = malloc(size + 1);
|
||||||
|
if (!json_string)
|
||||||
|
{
|
||||||
|
fclose(f);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
fread(json_string, 1, size, f);
|
||||||
|
fclose(f);
|
||||||
|
json_string[size] = 0;
|
||||||
|
|
||||||
|
*root = cJSON_Parse(json_string);
|
||||||
|
free(json_string);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Parse une date au format "YYYY-MM-DD" et retourne le timestamp
|
||||||
|
*/
|
||||||
|
time_t parse_date(const char *date_str)
|
||||||
|
{
|
||||||
|
struct tm tm = {0};
|
||||||
|
|
||||||
|
// Parser la date (format: YYYY-MM-DD)
|
||||||
|
sscanf(date_str, "%d-%d-%d",
|
||||||
|
&tm.tm_year, &tm.tm_mon, &tm.tm_mday);
|
||||||
|
|
||||||
|
tm.tm_year -= 1900; // Années depuis 1900
|
||||||
|
tm.tm_mon -= 1; // Mois de 0 à 11
|
||||||
|
tm.tm_hour = 0;
|
||||||
|
tm.tm_min = 0;
|
||||||
|
tm.tm_sec = 0;
|
||||||
|
|
||||||
|
return mktime(&tm);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Calcule le nombre de jours entre maintenant et la date donnée
|
||||||
|
* Retourne un nombre négatif si la date est passée
|
||||||
|
*/
|
||||||
|
int days_until(const char *date_str)
|
||||||
|
{
|
||||||
|
// Obtenir l'heure actuelle
|
||||||
|
time_t now;
|
||||||
|
time(&now);
|
||||||
|
|
||||||
|
// Parser la date cible
|
||||||
|
time_t target = parse_date(date_str);
|
||||||
|
|
||||||
|
// Calculer la différence en secondes
|
||||||
|
double diff_seconds = difftime(target, now);
|
||||||
|
|
||||||
|
// Convertir en jours (arrondi)
|
||||||
|
int days = (int)(diff_seconds / (60 * 60 * 24));
|
||||||
|
|
||||||
|
return days;
|
||||||
|
}
|
||||||
|
|
||||||
|
RemindMeEvent *get_events(int *count)
|
||||||
|
{
|
||||||
|
RemindMeEvent *evts = get_events_from_file(
|
||||||
|
"/spiffs/events.json",
|
||||||
|
count);
|
||||||
|
for (size_t i = 0; i < *count; i++)
|
||||||
|
{
|
||||||
|
sprintf(evts[i].affichage, evts[i].affichage, days_until(evts[i].date));
|
||||||
|
}
|
||||||
|
return evts;
|
||||||
|
|
||||||
|
}
|
||||||
|
esp_err_t events_save_atomic(char *eventsJson)
|
||||||
|
{
|
||||||
|
FILE *f = fopen("/spiffs/events.tmp", "w");
|
||||||
|
if (!f)
|
||||||
|
goto error;
|
||||||
|
|
||||||
|
fwrite(eventsJson, 1, strlen(eventsJson), f);
|
||||||
|
fclose(f);
|
||||||
|
|
||||||
|
rename("/spiffs/events.json", "/spiffs/events.bak");
|
||||||
|
rename("/spiffs/events.tmp", "/spiffs/events.json");
|
||||||
|
//unlink("/spiffs/events.bak");
|
||||||
|
|
||||||
|
free(eventsJson);
|
||||||
|
return ESP_OK;
|
||||||
|
|
||||||
|
error:
|
||||||
|
free(eventsJson);
|
||||||
|
return ESP_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
void add_event(RemindMeEvent e){
|
||||||
|
int count=0;
|
||||||
|
cJSON *root = cJSON_CreateObject();
|
||||||
|
read_json_file("/spiffs/events.json", &root);
|
||||||
|
printf("%s","####################### AVANT\n");
|
||||||
|
//printf("%s\n",cJSON_Print(root));
|
||||||
|
if (!cJSON_IsArray(root))
|
||||||
|
{
|
||||||
|
ESP_LOGE(TAG, "'root' n'est pas un tableau");
|
||||||
|
return;
|
||||||
|
}else{
|
||||||
|
cJSON *new_event = cJSON_CreateObject();
|
||||||
|
if (!new_event)
|
||||||
|
return;
|
||||||
|
|
||||||
|
cJSON_AddStringToObject(new_event, "evenement", e.evenement);
|
||||||
|
cJSON_AddStringToObject(new_event, "affichage", e.affichage);
|
||||||
|
cJSON_AddStringToObject(new_event, "date", e.date);
|
||||||
|
cJSON_AddStringToObject(new_event, "type", e.type);
|
||||||
|
cJSON_AddItemToArray(root, new_event);
|
||||||
|
}
|
||||||
|
printf("%s", "####################### APRES\n");
|
||||||
|
//printf("%s\n", cJSON_Print(root));
|
||||||
|
char *eventsJson=cJSON_Print(root);
|
||||||
|
events_save_atomic(eventsJson);
|
||||||
|
}
|
||||||
6
components/RemindMe/idf_component.yml
Normal file
6
components/RemindMe/idf_component.yml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
## IDF Component Manager Manifest File
|
||||||
|
dependencies:
|
||||||
|
## Required IDF version
|
||||||
|
idf:
|
||||||
|
version: '>=4.1.0'
|
||||||
|
|
||||||
19
components/RemindMe/include/RemindMe.h
Normal file
19
components/RemindMe/include/RemindMe.h
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#pragma once
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
char evenement[64];
|
||||||
|
char affichage[128];
|
||||||
|
char date[32];
|
||||||
|
char type[40];
|
||||||
|
} RemindMeEvent;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Charge les événements depuis le fichier JSON
|
||||||
|
* @param count (out) nombre d'événements chargés
|
||||||
|
* @return pointeur vers tableau d'événements ou NULL en cas d'erreur
|
||||||
|
*
|
||||||
|
* ⚠️ L'appelant doit libérer la mémoire avec free()
|
||||||
|
*/
|
||||||
|
RemindMeEvent *get_events(int *count);
|
||||||
|
|
||||||
|
void add_event();
|
||||||
12
components/RemindMe/test/CMakeLists.txt
Normal file
12
components/RemindMe/test/CMakeLists.txt
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.16)
|
||||||
|
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
||||||
|
|
||||||
|
set(COMPONENTS main)
|
||||||
|
|
||||||
|
list(APPEND EXTRA_COMPONENT_DIRS
|
||||||
|
../../RemindMe
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
project(remindme_host_test)
|
||||||
10
components/RemindMe/test/dependencies.lock
Normal file
10
components/RemindMe/test/dependencies.lock
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
dependencies:
|
||||||
|
idf:
|
||||||
|
source:
|
||||||
|
type: idf
|
||||||
|
version: 5.5.1
|
||||||
|
direct_dependencies:
|
||||||
|
- idf
|
||||||
|
manifest_hash: 2fc18f414627b3fc737adcef5ecbfa3a4f7cff55fd5f96a20734c8d5302b79ed
|
||||||
|
target: linux
|
||||||
|
version: 2.0.0
|
||||||
4
components/RemindMe/test/main/CMakeLists.txt
Normal file
4
components/RemindMe/test/main/CMakeLists.txt
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
idf_component_register(
|
||||||
|
SRCS "main.c"
|
||||||
|
REQUIRES RemindMe
|
||||||
|
)
|
||||||
28
components/RemindMe/test/main/main.c
Normal file
28
components/RemindMe/test/main/main.c
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#include "RemindMe.h"
|
||||||
|
#include "esp_log.h"
|
||||||
|
int app_main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
int count=0;
|
||||||
|
|
||||||
|
RemindMeEvent *events= get_events(&count);
|
||||||
|
if (!events)
|
||||||
|
{
|
||||||
|
ESP_LOGE("test", "Aucun événement chargé");
|
||||||
|
return 0;
|
||||||
|
} // Parcourir tous les événements
|
||||||
|
for (int i = 0; i < count; i++)
|
||||||
|
{
|
||||||
|
ESP_LOGI("test", "%s", events[i].affichage);
|
||||||
|
}
|
||||||
|
|
||||||
|
RemindMeEvent e = {
|
||||||
|
.affichage = "Test dans %d jours",
|
||||||
|
.date="2026-12-31",
|
||||||
|
.type="remaining_days",
|
||||||
|
.evenement="test"
|
||||||
|
|
||||||
|
};
|
||||||
|
add_event(e);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
9
components/RemindMe/test/test_RemindMe.c
Normal file
9
components/RemindMe/test/test_RemindMe.c
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#include "unity.h"
|
||||||
|
#include "RemindMe.h"
|
||||||
|
|
||||||
|
TEST_CASE("Test lecture JSON", "[RemindMe]")
|
||||||
|
{
|
||||||
|
Event event = {0};
|
||||||
|
esp_err_t ret = read_json_file("/spiffs/test.json", &event);
|
||||||
|
TEST_ASSERT_EQUAL(ESP_OK, ret);
|
||||||
|
}
|
||||||
@ -1,5 +1,10 @@
|
|||||||
|
include(${CMAKE_CURRENT_LIST_DIR}/fonts_symbols.cmake)
|
||||||
|
|
||||||
|
string(JOIN "," LVGL_SYMBOLS ${LVGL_SYMBOLS_CLASSIQUES})
|
||||||
|
message(STATUS "LVGL SYMBOL RANGE = ${LVGL_SYMBOLS}")
|
||||||
|
|
||||||
function (make_font fontName fileName fontSize)
|
function (make_font fontName fileName fontSize)
|
||||||
execute_process(COMMAND podman run -v ${PROJECT_DIR}/components/domotic_display/fonts:/app -w /app lvfontconv lv_font_conv --bpp 4 --size ${fontSize} --no-compress --font ${fontName}.ttf --symbols "0123456789.°àéèêûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'!? ():/-" --format lvgl -o ${fileName}_${fontSize}.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575,0xf077,0xf078,0xf27a)
|
execute_process(COMMAND podman run -v ${PROJECT_DIR}/components/domotic_display/fonts:/app -w /app lvfontconv lv_font_conv --bpp 4 --size ${fontSize} --no-compress --font ${fontName}.ttf --symbols "0123456789.°àéèêëûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'!? ():/-" --format lvgl -o ${fileName}_${fontSize}.c --font fa-solid-900.ttf --range ${LVGL_SYMBOLS})
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
make_font(Montserrat-Medium montserrat_medium 12 )
|
make_font(Montserrat-Medium montserrat_medium 12 )
|
||||||
@ -7,6 +12,9 @@ make_font(Montserrat-Medium montserrat_medium 18)
|
|||||||
make_font(Montserrat-Medium montserrat_medium 24)
|
make_font(Montserrat-Medium montserrat_medium 24)
|
||||||
make_font(Roboto-Medium roboto_medium 36)
|
make_font(Roboto-Medium roboto_medium 36)
|
||||||
make_font(Roboto-Medium roboto_medium 72)
|
make_font(Roboto-Medium roboto_medium 72)
|
||||||
|
make_font(Super_Malibu super_malibu 80)
|
||||||
|
|
||||||
|
|
||||||
#execute_process(COMMAND podman run -v /home/marc/rgb_lcd/components/domotic_display/fonts:/app -w /app lvfontconv lv_font_conv --bpp 4 --size 36 --no-compress --font Roboto-Medium.ttf --symbols "0123456789.°àéèûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'():ê/-" --format lvgl -o roboto_medium_36.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575)
|
#execute_process(COMMAND podman run -v /home/marc/rgb_lcd/components/domotic_display/fonts:/app -w /app lvfontconv lv_font_conv --bpp 4 --size 36 --no-compress --font Roboto-Medium.ttf --symbols "0123456789.°àéèûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'():ê/-" --format lvgl -o roboto_medium_36.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575)
|
||||||
#execute_process(COMMAND podman run -v /home/marc/rgb_lcd/components/domotic_display/fonts:/app -w /app lvfontconv lv_font_conv --bpp 4 --size 72 --no-compress --font Roboto-Medium.ttf --symbols "0123456789.°àéèûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'():ê/-" --format lvgl -o roboto_medium_72.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575)
|
#execute_process(COMMAND podman run -v /home/marc/rgb_lcd/components/domotic_display/fonts:/app -w /app lvfontconv lv_font_conv --bpp 4 --size 72 --no-compress --font Roboto-Medium.ttf --symbols "0123456789.°àéèûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'():ê/-" --format lvgl -o roboto_medium_72.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575)
|
||||||
|
|
||||||
|
|||||||
BIN
components/domotic_display/fonts/Super_Malibu.ttf
Normal file
BIN
components/domotic_display/fonts/Super_Malibu.ttf
Normal file
Binary file not shown.
BIN
components/domotic_display/fonts/Vlump.ttf
Normal file
BIN
components/domotic_display/fonts/Vlump.ttf
Normal file
Binary file not shown.
@ -1,7 +1,7 @@
|
|||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Size: 12 px
|
* Size: 12 px
|
||||||
* Bpp: 4
|
* Bpp: 4
|
||||||
* Opts: --bpp 4 --size 12 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°àéèêûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'!? ():/- --format lvgl -o montserrat_medium_12.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575,0xf077,0xf078,0xf27a
|
* Opts: --bpp 4 --size 12 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°àéèêëûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'!? ():/- --format lvgl -o montserrat_medium_12.c --font fa-solid-900.ttf --range 0xf00c,0xf00d,0xf011,0xf013,0xf015,0xf019,0xf021,0xf023,0xf1eb,0xf0f3,0xf240,0xf241,0xf242,0xf243,0xf244,0xf060,0xf061,0xf062,0xf063,0xf04b,0xf04c,0xf04d,0xf028,0xf027,0xf026,0xf06e,0xf070,0xf071,0xf05a,0xf128,0xf017,0xf073,0xf0c2,0xf575,0xf077,0xf078,0xf2ca,0xf27a,0xe1b0
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
|
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
@ -515,6 +515,13 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0xc5, 0xd0, 0x0, 0x0, 0xe, 0x92, 0x3a, 0x20,
|
0xc5, 0xd0, 0x0, 0x0, 0xe, 0x92, 0x3a, 0x20,
|
||||||
0x2b, 0xfe, 0x90,
|
0x2b, 0xfe, 0x90,
|
||||||
|
|
||||||
|
/* U+00EB "ë" */
|
||||||
|
0x0, 0xd1, 0xa4, 0x0, 0x3, 0x2, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x2b, 0xfd, 0x50, 0xe, 0x81,
|
||||||
|
0x4e, 0x45, 0xc0, 0x0, 0x6b, 0x7f, 0xee, 0xee,
|
||||||
|
0xc5, 0xd0, 0x0, 0x0, 0xe, 0x92, 0x3a, 0x20,
|
||||||
|
0x2b, 0xfe, 0x90,
|
||||||
|
|
||||||
/* U+00FB "û" */
|
/* U+00FB "û" */
|
||||||
0x1, 0xdd, 0x10, 0x0, 0xa5, 0x4b, 0x0, 0x0,
|
0x1, 0xdd, 0x10, 0x0, 0xa5, 0x4b, 0x0, 0x0,
|
||||||
0x0, 0x0, 0xf, 0x30, 0x2, 0xf0, 0xf3, 0x0,
|
0x0, 0x0, 0xf, 0x30, 0x2, 0xf0, 0xf3, 0x0,
|
||||||
@ -522,6 +529,60 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0xe, 0x40, 0x4, 0xf0, 0xab, 0x22, 0xcf, 0x1,
|
0xe, 0x40, 0x4, 0xf0, 0xab, 0x22, 0xcf, 0x1,
|
||||||
0xbf, 0xe6, 0xf0,
|
0xbf, 0xe6, 0xf0,
|
||||||
|
|
||||||
|
/* U+E1B0 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x52, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0xa, 0xff, 0x40, 0x0, 0x0, 0x0, 0x1,
|
||||||
|
0xcf, 0xff, 0xf5, 0x0, 0x0, 0x0, 0x2d, 0xff,
|
||||||
|
0xff, 0xff, 0x70, 0x0, 0x3, 0xef, 0xfd, 0x58,
|
||||||
|
0xff, 0xf9, 0x0, 0x4f, 0xff, 0xf5, 0x0, 0xdf,
|
||||||
|
0xff, 0xb0, 0xef, 0xff, 0xf8, 0x1, 0xff, 0xff,
|
||||||
|
0xf6, 0x2a, 0xff, 0xff, 0xdf, 0xff, 0xff, 0x30,
|
||||||
|
0x8, 0xff, 0xb1, 0x0, 0x4f, 0xff, 0x0, 0x8,
|
||||||
|
0xff, 0x30, 0x0, 0xb, 0xff, 0x0, 0x7, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0x0, 0x4, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xfc, 0x0, 0x0, 0x24, 0x44, 0x44,
|
||||||
|
0x44, 0x40, 0x0,
|
||||||
|
|
||||||
|
/* U+F00C "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x5, 0xf6, 0x0, 0x0, 0x0, 0x5, 0xfc,
|
||||||
|
0x2, 0x0, 0x0, 0x5, 0xfc, 0x0, 0xec, 0x0,
|
||||||
|
0x5, 0xfc, 0x0, 0x5, 0xfc, 0x5, 0xfc, 0x0,
|
||||||
|
0x0, 0x5, 0xfd, 0xfc, 0x0, 0x0, 0x0, 0x5,
|
||||||
|
0xfc, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0,
|
||||||
|
0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F00D "" */
|
||||||
|
0x9, 0x20, 0x0, 0x29, 0x11, 0xfe, 0x10, 0x1d,
|
||||||
|
0xf1, 0x3, 0xfd, 0x3d, 0xf3, 0x0, 0x3, 0xff,
|
||||||
|
0xf3, 0x0, 0x0, 0x1d, 0xfd, 0x10, 0x0, 0x1c,
|
||||||
|
0xf7, 0xfd, 0x10, 0xc, 0xf4, 0x4, 0xfc, 0x2,
|
||||||
|
0xe5, 0x0, 0x5, 0xe2,
|
||||||
|
|
||||||
|
/* U+F011 "" */
|
||||||
|
0x0, 0x0, 0x6, 0x30, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xe, 0x90, 0x0, 0x0, 0x1, 0xc7, 0xe, 0x90,
|
||||||
|
0xc9, 0x0, 0xb, 0xf3, 0xe, 0x90, 0x8f, 0x60,
|
||||||
|
0x3f, 0x60, 0xe, 0x90, 0xb, 0xe0, 0x8f, 0x0,
|
||||||
|
0xe, 0x90, 0x5, 0xf2, 0x9e, 0x0, 0xd, 0x80,
|
||||||
|
0x3, 0xf4, 0x7f, 0x0, 0x0, 0x0, 0x5, 0xf2,
|
||||||
|
0x3f, 0x60, 0x0, 0x0, 0xb, 0xe0, 0xb, 0xf3,
|
||||||
|
0x0, 0x0, 0x8f, 0x60, 0x1, 0xdf, 0xa6, 0x7c,
|
||||||
|
0xf9, 0x0, 0x0, 0x8, 0xef, 0xfd, 0x50, 0x0,
|
||||||
|
0x0, 0x0, 0x1, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F013 "" */
|
||||||
|
0x0, 0x0, 0x13, 0x30, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xbf, 0xf4, 0x0, 0x0, 0x3, 0x2, 0xef, 0xf9,
|
||||||
|
0x2, 0x10, 0x4f, 0xff, 0xff, 0xff, 0xff, 0xd0,
|
||||||
|
0xcf, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x4e, 0xff,
|
||||||
|
0x90, 0x9, 0xff, 0xb0, 0xb, 0xff, 0x20, 0x2,
|
||||||
|
0xff, 0x40, 0x4e, 0xff, 0x90, 0x9, 0xff, 0xb0,
|
||||||
|
0xcf, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x4f, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xd0, 0x3, 0x2, 0xef, 0xf9,
|
||||||
|
0x2, 0x10, 0x0, 0x0, 0xbf, 0xf4, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x14, 0x30, 0x0, 0x0,
|
||||||
|
|
||||||
/* U+F015 "" */
|
/* U+F015 "" */
|
||||||
0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0,
|
0x0, 0x0, 0x0, 0x3, 0x0, 0x0, 0x0, 0x0,
|
||||||
0x0, 0x0, 0x9, 0xfb, 0x0, 0x0, 0x0, 0x0,
|
0x0, 0x0, 0x9, 0xfb, 0x0, 0x0, 0x0, 0x0,
|
||||||
@ -537,6 +598,210 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0xfd, 0x0, 0x0, 0x4b, 0xb8, 0x0, 0x7, 0xbb,
|
0xfd, 0x0, 0x0, 0x4b, 0xb8, 0x0, 0x7, 0xbb,
|
||||||
0x60, 0x0,
|
0x60, 0x0,
|
||||||
|
|
||||||
|
/* U+F017 "" */
|
||||||
|
0x0, 0x0, 0x13, 0x31, 0x0, 0x0, 0x0, 0x2b,
|
||||||
|
0xff, 0xff, 0xb2, 0x0, 0x4, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0x40, 0x1e, 0xff, 0xf8, 0x8f, 0xff, 0xe1,
|
||||||
|
0x8f, 0xff, 0xf7, 0x7f, 0xff, 0xf8, 0xdf, 0xff,
|
||||||
|
0xf7, 0x7f, 0xff, 0xfd, 0xff, 0xff, 0xf7, 0x3e,
|
||||||
|
0xff, 0xff, 0xef, 0xff, 0xfe, 0x41, 0xbf, 0xfe,
|
||||||
|
0xbf, 0xff, 0xff, 0xf9, 0x7f, 0xfb, 0x4f, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf4, 0x9, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0x90, 0x0, 0x8f, 0xff, 0xff, 0xf8, 0x0,
|
||||||
|
0x0, 0x2, 0x7a, 0xa7, 0x20, 0x0,
|
||||||
|
|
||||||
|
/* U+F019 "" */
|
||||||
|
0x0, 0x0, 0x5, 0x50, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xb, 0xb0, 0x0, 0x0, 0x0, 0x0, 0xb, 0xb0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xb, 0xb0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0xb, 0xb0, 0x0, 0x0, 0x0, 0xae,
|
||||||
|
0x2b, 0xb2, 0xea, 0x0, 0x0, 0x2e, 0xed, 0xde,
|
||||||
|
0xe3, 0x0, 0x0, 0x3, 0xef, 0xfe, 0x30, 0x0,
|
||||||
|
0x16, 0x77, 0x3e, 0xe3, 0x77, 0x61, 0xdf, 0xff,
|
||||||
|
0xc3, 0x3c, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xfb, 0x7f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0x4, 0x44, 0x44, 0x44, 0x44, 0x40,
|
||||||
|
|
||||||
|
/* U+F021 "" */
|
||||||
|
0x0, 0x0, 0x57, 0x74, 0x0, 0x10, 0x0, 0x3e,
|
||||||
|
0xff, 0xff, 0xd2, 0xd8, 0x3, 0xfd, 0x40, 0x5,
|
||||||
|
0xef, 0xf9, 0xc, 0xe1, 0x0, 0x2, 0xaf, 0xf9,
|
||||||
|
0xc, 0x50, 0x0, 0x5, 0xff, 0xf6, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x28, 0x88, 0x20, 0x0,
|
||||||
|
0x1, 0x60, 0x9f, 0xff, 0x50, 0x0, 0xb, 0xe0,
|
||||||
|
0x9f, 0xf9, 0x0, 0x0, 0x8f, 0x70, 0x9e, 0x8f,
|
||||||
|
0xe9, 0x9d, 0xf9, 0x0, 0x36, 0x4, 0xbe, 0xeb,
|
||||||
|
0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F023 "" */
|
||||||
|
0x0, 0x0, 0x56, 0x30, 0x0, 0x0, 0x2, 0xef,
|
||||||
|
0xff, 0x80, 0x0, 0x0, 0xce, 0x30, 0x8f, 0x40,
|
||||||
|
0x0, 0xf, 0x70, 0x0, 0xf8, 0x0, 0x2, 0xf6,
|
||||||
|
0x0, 0xe, 0xa0, 0x8, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xd2, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0x8d, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xf5, 0x27, 0x88, 0x88, 0x88, 0x85, 0x0,
|
||||||
|
|
||||||
|
/* U+F026 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x62, 0x0, 0x0, 0xa, 0xf7,
|
||||||
|
0x0, 0x1, 0xcf, 0xf7, 0x28, 0x8d, 0xff, 0xf7,
|
||||||
|
0xdf, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xf7,
|
||||||
|
0xff, 0xff, 0xff, 0xf7, 0x7e, 0xff, 0xff, 0xf7,
|
||||||
|
0x0, 0x5, 0xff, 0xf7, 0x0, 0x0, 0x3e, 0xf7,
|
||||||
|
0x0, 0x0, 0x2, 0xd5, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F027 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x62, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xaf, 0x70, 0x0, 0x0, 0x1, 0xcf, 0xf8, 0x0,
|
||||||
|
0x2, 0x88, 0xdf, 0xff, 0x80, 0x30, 0xdf, 0xff,
|
||||||
|
0xff, 0xf8, 0x3f, 0x1f, 0xff, 0xff, 0xff, 0x80,
|
||||||
|
0xc5, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0x17, 0xef,
|
||||||
|
0xff, 0xff, 0x80, 0x30, 0x0, 0x5, 0xff, 0xf8,
|
||||||
|
0x0, 0x0, 0x0, 0x3, 0xef, 0x80, 0x0, 0x0,
|
||||||
|
0x0, 0x2, 0xd5, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F028 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x6, 0x20, 0x0, 0x3a, 0x0, 0x0,
|
||||||
|
0x0, 0xa, 0xf7, 0x0, 0x0, 0xca, 0x0, 0x0,
|
||||||
|
0x1c, 0xff, 0x80, 0xb, 0x91, 0xe4, 0x28, 0x8d,
|
||||||
|
0xff, 0xf8, 0x3, 0x1e, 0x48, 0xad, 0xff, 0xff,
|
||||||
|
0xff, 0x83, 0xf1, 0x8a, 0x3e, 0xff, 0xff, 0xff,
|
||||||
|
0xf8, 0xc, 0x56, 0xb2, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0x83, 0xf1, 0x8a, 0x3e, 0x7e, 0xff, 0xff, 0xf8,
|
||||||
|
0x3, 0x1e, 0x48, 0xa0, 0x0, 0x5f, 0xff, 0x80,
|
||||||
|
0xb, 0x91, 0xe4, 0x0, 0x0, 0x3e, 0xf8, 0x0,
|
||||||
|
0x0, 0xca, 0x0, 0x0, 0x0, 0x2d, 0x50, 0x0,
|
||||||
|
0x3a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F04B "" */
|
||||||
|
0x7a, 0x20, 0x0, 0x0, 0xf, 0xff, 0x80, 0x0,
|
||||||
|
0x0, 0xff, 0xff, 0xd4, 0x0, 0xf, 0xff, 0xff,
|
||||||
|
0xfa, 0x10, 0xff, 0xff, 0xff, 0xff, 0x6f, 0xff,
|
||||||
|
0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x6f,
|
||||||
|
0xff, 0xff, 0xfa, 0x10, 0xff, 0xff, 0xd4, 0x0,
|
||||||
|
0xf, 0xff, 0x80, 0x0, 0x0, 0x7a, 0x20, 0x0,
|
||||||
|
0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F04C "" */
|
||||||
|
0xbf, 0xb0, 0x6f, 0xe1, 0xff, 0xf0, 0xbf, 0xf4,
|
||||||
|
0xff, 0xf0, 0xbf, 0xf4, 0xff, 0xf0, 0xbf, 0xf4,
|
||||||
|
0xff, 0xf0, 0xbf, 0xf4, 0xff, 0xf0, 0xbf, 0xf4,
|
||||||
|
0xff, 0xf0, 0xbf, 0xf4, 0xff, 0xf0, 0xbf, 0xf4,
|
||||||
|
0xbf, 0xb0, 0x6f, 0xe1,
|
||||||
|
|
||||||
|
/* U+F04D "" */
|
||||||
|
0x8f, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff,
|
||||||
|
0x80,
|
||||||
|
|
||||||
|
/* U+F05A "" */
|
||||||
|
0x0, 0x0, 0x13, 0x31, 0x0, 0x0, 0x0, 0x2b,
|
||||||
|
0xff, 0xff, 0xa2, 0x0, 0x4, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0x40, 0x1e, 0xff, 0xfe, 0xef, 0xff, 0xe1,
|
||||||
|
0x8f, 0xff, 0xf6, 0x6f, 0xff, 0xf8, 0xdf, 0xff,
|
||||||
|
0xfc, 0xef, 0xff, 0xfd, 0xff, 0xff, 0xa0, 0x4f,
|
||||||
|
0xff, 0xff, 0xef, 0xff, 0xf9, 0x3f, 0xff, 0xfe,
|
||||||
|
0xbf, 0xff, 0xd4, 0x1d, 0xff, 0xfb, 0x4f, 0xff,
|
||||||
|
0xb4, 0x4b, 0xff, 0xf4, 0x9, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0x90, 0x0, 0x8f, 0xff, 0xff, 0xf8, 0x0,
|
||||||
|
0x0, 0x2, 0x7a, 0xa7, 0x20, 0x0,
|
||||||
|
|
||||||
|
/* U+F060 "" */
|
||||||
|
0x0, 0x0, 0x10, 0x0, 0x0, 0x0, 0x0, 0x8f,
|
||||||
|
0x20, 0x0, 0x0, 0x0, 0x8f, 0x90, 0x0, 0x0,
|
||||||
|
0x0, 0x8f, 0x90, 0x0, 0x0, 0x0, 0x8f, 0xe7,
|
||||||
|
0x77, 0x77, 0x77, 0x1d, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xf5, 0x3e, 0xe2, 0x0, 0x0, 0x0, 0x0, 0x3e,
|
||||||
|
0xe2, 0x0, 0x0, 0x0, 0x0, 0x3e, 0xe1, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x2b, 0x10, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F061 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xae, 0x20, 0x0, 0x0, 0x0, 0x2, 0xee, 0x20,
|
||||||
|
0x0, 0x0, 0x0, 0x2, 0xee, 0x20, 0x57, 0x77,
|
||||||
|
0x77, 0x7a, 0xfe, 0x2d, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xf6, 0x0, 0x0, 0x0, 0x8, 0xf9, 0x0, 0x0,
|
||||||
|
0x0, 0x8, 0xf9, 0x0, 0x0, 0x0, 0x7, 0xf9,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x68, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F062 "" */
|
||||||
|
0x0, 0x0, 0x83, 0x0, 0x0, 0x0, 0xc, 0xff,
|
||||||
|
0x30, 0x0, 0x0, 0xcf, 0xff, 0xf3, 0x0, 0xc,
|
||||||
|
0xf6, 0xf8, 0xdf, 0x30, 0xaf, 0x51, 0xf6, 0x1d,
|
||||||
|
0xf0, 0x54, 0x1, 0xf6, 0x1, 0x80, 0x0, 0x1,
|
||||||
|
0xf6, 0x0, 0x0, 0x0, 0x1, 0xf6, 0x0, 0x0,
|
||||||
|
0x0, 0x1, 0xf6, 0x0, 0x0, 0x0, 0x1, 0xf6,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xb3, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F063 "" */
|
||||||
|
0x0, 0x0, 0x82, 0x0, 0x0, 0x0, 0x1, 0xf6,
|
||||||
|
0x0, 0x0, 0x0, 0x1, 0xf6, 0x0, 0x0, 0x0,
|
||||||
|
0x1, 0xf6, 0x0, 0x0, 0x0, 0x1, 0xf6, 0x0,
|
||||||
|
0x0, 0x32, 0x1, 0xf6, 0x0, 0x40, 0xbf, 0x31,
|
||||||
|
0xf6, 0xc, 0xf1, 0x2e, 0xe4, 0xf7, 0xbf, 0x50,
|
||||||
|
0x2, 0xef, 0xff, 0xf6, 0x0, 0x0, 0x2e, 0xff,
|
||||||
|
0x60, 0x0, 0x0, 0x2, 0xb5, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F06E "" */
|
||||||
|
0x0, 0x0, 0x4, 0x9b, 0xa7, 0x10, 0x0, 0x0,
|
||||||
|
0x0, 0x2c, 0xff, 0xff, 0xff, 0x70, 0x0, 0x0,
|
||||||
|
0x2e, 0xfe, 0x62, 0x3a, 0xff, 0x90, 0x0, 0x1e,
|
||||||
|
0xff, 0x20, 0x39, 0x18, 0xff, 0x70, 0x9, 0xff,
|
||||||
|
0x80, 0x6, 0xfb, 0x1f, 0xff, 0x10, 0xef, 0xf6,
|
||||||
|
0x49, 0xff, 0xf0, 0xef, 0xf6, 0x9, 0xff, 0x83,
|
||||||
|
0xff, 0xfb, 0x1f, 0xff, 0x10, 0xd, 0xff, 0x24,
|
||||||
|
0xa9, 0x19, 0xff, 0x70, 0x0, 0x2e, 0xfe, 0x62,
|
||||||
|
0x3a, 0xff, 0x90, 0x0, 0x0, 0x2c, 0xff, 0xff,
|
||||||
|
0xff, 0x70, 0x0, 0x0, 0x0, 0x4, 0x9b, 0xa7,
|
||||||
|
0x10, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F070 "" */
|
||||||
|
0x6, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0xbd, 0x30, 0x6, 0xab, 0xa6, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x8f, 0x8d, 0xff, 0xff, 0xfe, 0x40,
|
||||||
|
0x0, 0x0, 0x0, 0x4f, 0xfd, 0x52, 0x5d, 0xff,
|
||||||
|
0x60, 0x0, 0x0, 0x34, 0x2d, 0xc1, 0x57, 0xd,
|
||||||
|
0xff, 0x30, 0x0, 0xc, 0xf7, 0xa, 0xec, 0xf7,
|
||||||
|
0x5f, 0xfc, 0x0, 0x2, 0xff, 0xf2, 0x7, 0xff,
|
||||||
|
0xb2, 0xff, 0xf2, 0x0, 0xd, 0xff, 0x50, 0x3,
|
||||||
|
0xec, 0x5f, 0xfc, 0x0, 0x0, 0x3f, 0xfd, 0x0,
|
||||||
|
0x1, 0xcf, 0xff, 0x30, 0x0, 0x0, 0x5f, 0xfd,
|
||||||
|
0x52, 0x40, 0x9f, 0x90, 0x0, 0x0, 0x0, 0x4e,
|
||||||
|
0xff, 0xff, 0xb1, 0x5f, 0x80, 0x0, 0x0, 0x0,
|
||||||
|
0x6, 0xab, 0xa6, 0x0, 0x3d, 0xb0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x16, 0x0,
|
||||||
|
|
||||||
|
/* U+F071 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x66, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x3, 0xff, 0x30, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xc, 0xff, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x5f,
|
||||||
|
0xbb, 0xf6, 0x0, 0x0, 0x0, 0x0, 0xef, 0x77,
|
||||||
|
0xfe, 0x0, 0x0, 0x0, 0x8, 0xff, 0x77, 0xff,
|
||||||
|
0x80, 0x0, 0x0, 0x2f, 0xff, 0x77, 0xff, 0xf2,
|
||||||
|
0x0, 0x0, 0xbf, 0xff, 0xff, 0xff, 0xfb, 0x0,
|
||||||
|
0x4, 0xff, 0xff, 0x55, 0xff, 0xff, 0x40, 0xd,
|
||||||
|
0xff, 0xff, 0xcc, 0xff, 0xff, 0xd0, 0xb, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xb0,
|
||||||
|
|
||||||
|
/* U+F073 "" */
|
||||||
|
0x0, 0x33, 0x0, 0x6, 0x0, 0x0, 0xb, 0xb0,
|
||||||
|
0x3, 0xf3, 0x0, 0xbf, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0x4f, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x44, 0x44,
|
||||||
|
0x44, 0x44, 0x44, 0x2f, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xf8, 0xfc, 0x8f, 0xc8, 0xfc, 0x8f, 0x8f, 0x80,
|
||||||
|
0xf8, 0xf, 0x80, 0xf8, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0x8f, 0xc8, 0xfc, 0x8f, 0xc8, 0xf8, 0xf8,
|
||||||
|
0xf, 0x80, 0xf8, 0xf, 0x8f, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xf7, 0x47, 0x88, 0x88, 0x88, 0x87, 0x0,
|
||||||
|
|
||||||
/* U+F077 "" */
|
/* U+F077 "" */
|
||||||
0x0, 0x0, 0x1, 0x10, 0x0, 0x0, 0x0, 0x0,
|
0x0, 0x0, 0x1, 0x10, 0x0, 0x0, 0x0, 0x0,
|
||||||
0x2e, 0xe2, 0x0, 0x0, 0x0, 0x2, 0xee, 0xee,
|
0x2e, 0xe2, 0x0, 0x0, 0x0, 0x2, 0xee, 0xee,
|
||||||
@ -566,6 +831,89 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0xff, 0xff, 0xf8, 0x4, 0xce, 0xee, 0xee, 0xee,
|
0xff, 0xff, 0xf8, 0x4, 0xce, 0xee, 0xee, 0xee,
|
||||||
0xee, 0xd7, 0x0,
|
0xee, 0xd7, 0x0,
|
||||||
|
|
||||||
|
/* U+F0F3 "" */
|
||||||
|
0x0, 0x0, 0x1, 0x50, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x9, 0xf2, 0x0, 0x0, 0x0, 0x2, 0xef, 0xff,
|
||||||
|
0x90, 0x0, 0x0, 0xe, 0xff, 0xff, 0xf6, 0x0,
|
||||||
|
0x0, 0x5f, 0xff, 0xff, 0xfd, 0x0, 0x0, 0x7f,
|
||||||
|
0xff, 0xff, 0xff, 0x0, 0x0, 0x9f, 0xff, 0xff,
|
||||||
|
0xff, 0x10, 0x0, 0xdf, 0xff, 0xff, 0xff, 0x50,
|
||||||
|
0x6, 0xff, 0xff, 0xff, 0xff, 0xd1, 0xe, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf6, 0x2, 0x33, 0x33, 0x33,
|
||||||
|
0x33, 0x30, 0x0, 0x0, 0x2f, 0xf9, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x3, 0x60, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F128 "" */
|
||||||
|
0x4, 0xdf, 0xe9, 0x0, 0x2f, 0xd8, 0xaf, 0xa0,
|
||||||
|
0x8f, 0x10, 0x8, 0xf0, 0x69, 0x0, 0x7, 0xf1,
|
||||||
|
0x0, 0x0, 0x2e, 0xd0, 0x0, 0x5, 0xfe, 0x30,
|
||||||
|
0x0, 0xd, 0xc1, 0x0, 0x0, 0xa, 0x40, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x60, 0x0,
|
||||||
|
0x0, 0x1e, 0x70, 0x0,
|
||||||
|
|
||||||
|
/* U+F1EB "" */
|
||||||
|
0x0, 0x0, 0x26, 0x89, 0x86, 0x20, 0x0, 0x0,
|
||||||
|
0x5, 0xdf, 0xff, 0xef, 0xff, 0xd5, 0x0, 0x1c,
|
||||||
|
0xfc, 0x61, 0x0, 0x1, 0x6c, 0xfc, 0x1d, 0xf5,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x5, 0xfd, 0x42, 0x0,
|
||||||
|
0x4a, 0xef, 0xea, 0x40, 0x2, 0x40, 0x0, 0xaf,
|
||||||
|
0xea, 0x8a, 0xef, 0xa0, 0x0, 0x0, 0x1e, 0x70,
|
||||||
|
0x0, 0x0, 0x7e, 0x10, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xbf,
|
||||||
|
0xb0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0xfe,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4b, 0x40,
|
||||||
|
0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F240 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfd, 0x20, 0xfc, 0x66,
|
||||||
|
0x66, 0x66, 0x66, 0x7f, 0x80, 0xf7, 0xad, 0xdd,
|
||||||
|
0xdd, 0xdd, 0x5e, 0xe3, 0xf7, 0xcf, 0xff, 0xff,
|
||||||
|
0xff, 0x5e, 0xf5, 0xf7, 0xad, 0xdd, 0xdd, 0xdd,
|
||||||
|
0x4e, 0xe2, 0xfc, 0x77, 0x77, 0x77, 0x77, 0x7f,
|
||||||
|
0x80, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x10,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F241 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfd, 0x20, 0xfc, 0x66,
|
||||||
|
0x66, 0x66, 0x66, 0x7f, 0x80, 0xf7, 0xad, 0xdd,
|
||||||
|
0xdd, 0x10, 0xe, 0xe3, 0xf7, 0xcf, 0xff, 0xff,
|
||||||
|
0x20, 0xe, 0xf5, 0xf7, 0xad, 0xdd, 0xdd, 0x10,
|
||||||
|
0xe, 0xe2, 0xfc, 0x77, 0x77, 0x77, 0x77, 0x7f,
|
||||||
|
0x80, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x10,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F242 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfd, 0x20, 0xfc, 0x66,
|
||||||
|
0x66, 0x66, 0x66, 0x7f, 0x80, 0xf7, 0xad, 0xdd,
|
||||||
|
0x90, 0x0, 0xe, 0xe3, 0xf7, 0xcf, 0xff, 0xa0,
|
||||||
|
0x0, 0xe, 0xf5, 0xf7, 0xad, 0xdd, 0x90, 0x0,
|
||||||
|
0xe, 0xe2, 0xfc, 0x77, 0x77, 0x77, 0x77, 0x7f,
|
||||||
|
0x80, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x10,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F243 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfd, 0x20, 0xfc, 0x66,
|
||||||
|
0x66, 0x66, 0x66, 0x7f, 0x80, 0xf7, 0xad, 0x60,
|
||||||
|
0x0, 0x0, 0xe, 0xe3, 0xf7, 0xcf, 0x70, 0x0,
|
||||||
|
0x0, 0xe, 0xf5, 0xf7, 0xad, 0x60, 0x0, 0x0,
|
||||||
|
0xe, 0xe2, 0xfc, 0x77, 0x77, 0x77, 0x77, 0x7f,
|
||||||
|
0x80, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x10,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F244 "" */
|
||||||
|
0x0, 0x11, 0x11, 0x11, 0x11, 0x0, 0x0, 0x6f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xfd, 0x20, 0xfc, 0x77,
|
||||||
|
0x77, 0x77, 0x77, 0x7f, 0x80, 0xf8, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0xe, 0xe3, 0xf8, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0xe, 0xf5, 0xf8, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xe, 0xe2, 0xfc, 0x77, 0x77, 0x77, 0x77, 0x7f,
|
||||||
|
0x80, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x10,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
/* U+F27A "" */
|
/* U+F27A "" */
|
||||||
0x4a, 0xbb, 0xbb, 0xbb, 0xbb, 0xa4, 0xef, 0xff,
|
0x4a, 0xbb, 0xbb, 0xbb, 0xbb, 0xa4, 0xef, 0xff,
|
||||||
0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff,
|
0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff,
|
||||||
@ -578,6 +926,15 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0x0, 0x0, 0x0, 0x3, 0xf5, 0x0, 0x0, 0x0,
|
0x0, 0x0, 0x0, 0x3, 0xf5, 0x0, 0x0, 0x0,
|
||||||
0x0, 0x0, 0x10, 0x0, 0x0, 0x0,
|
0x0, 0x0, 0x10, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F2CA "" */
|
||||||
|
0x0, 0x26, 0x50, 0x0, 0x3, 0xff, 0xfc, 0x0,
|
||||||
|
0xb, 0xd1, 0x5f, 0x40, 0xd, 0xa0, 0x1f, 0x60,
|
||||||
|
0xe, 0xa0, 0x1f, 0x70, 0xe, 0xa0, 0x1f, 0x70,
|
||||||
|
0xe, 0xa3, 0x1f, 0x70, 0x2f, 0x89, 0x2e, 0xb0,
|
||||||
|
0x8f, 0x3e, 0x97, 0xf1, 0x8f, 0x3f, 0xc6, 0xf1,
|
||||||
|
0x4f, 0x93, 0x4d, 0xd0, 0x8, 0xff, 0xfe, 0x30,
|
||||||
|
0x0, 0x26, 0x50, 0x0,
|
||||||
|
|
||||||
/* U+F575 "" */
|
/* U+F575 "" */
|
||||||
0x19, 0x20, 0x1, 0x40, 0x0, 0x0, 0x1e, 0xe2,
|
0x19, 0x20, 0x1, 0x40, 0x0, 0x0, 0x1e, 0xe2,
|
||||||
0x3e, 0xfc, 0x10, 0x0, 0x2, 0xee, 0xed, 0x6f,
|
0x3e, 0xfc, 0x10, 0x0, 0x2, 0xee, 0xed, 0x6f,
|
||||||
@ -677,13 +1034,47 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
|
|||||||
{.bitmap_index = 2301, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
|
{.bitmap_index = 2301, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
|
||||||
{.bitmap_index = 2336, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
|
{.bitmap_index = 2336, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
|
||||||
{.bitmap_index = 2371, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
|
{.bitmap_index = 2371, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
|
||||||
{.bitmap_index = 2406, .adv_w = 130, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
|
{.bitmap_index = 2406, .adv_w = 118, .box_w = 7, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
|
||||||
{.bitmap_index = 2441, .adv_w = 216, .box_w = 15, .box_h = 13, .ofs_x = -1, .ofs_y = -2},
|
{.bitmap_index = 2441, .adv_w = 130, .box_w = 7, .box_h = 10, .ofs_x = 1, .ofs_y = 0},
|
||||||
{.bitmap_index = 2539, .adv_w = 192, .box_w = 12, .box_h = 7, .ofs_x = 0, .ofs_y = 2},
|
{.bitmap_index = 2476, .adv_w = 216, .box_w = 14, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
{.bitmap_index = 2581, .adv_w = 192, .box_w = 12, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
|
{.bitmap_index = 2567, .adv_w = 168, .box_w = 11, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
|
||||||
{.bitmap_index = 2623, .adv_w = 240, .box_w = 15, .box_h = 11, .ofs_x = 0, .ofs_y = -1},
|
{.bitmap_index = 2617, .adv_w = 144, .box_w = 9, .box_h = 8, .ofs_x = 0, .ofs_y = 1},
|
||||||
{.bitmap_index = 2706, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
{.bitmap_index = 2653, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
{.bitmap_index = 2784, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2}
|
{.bitmap_index = 2731, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 2809, .adv_w = 216, .box_w = 15, .box_h = 13, .ofs_x = -1, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 2907, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 2985, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 3063, .adv_w = 192, .box_w = 12, .box_h = 12, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 3135, .adv_w = 168, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 3207, .adv_w = 120, .box_w = 8, .box_h = 12, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 3255, .adv_w = 168, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 3321, .adv_w = 240, .box_w = 15, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 3419, .adv_w = 144, .box_w = 9, .box_h = 11, .ofs_x = 0, .ofs_y = -1},
|
||||||
|
{.bitmap_index = 3469, .adv_w = 120, .box_w = 8, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 3505, .adv_w = 144, .box_w = 9, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 3546, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 3624, .adv_w = 168, .box_w = 11, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 3679, .adv_w = 168, .box_w = 11, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 3734, .adv_w = 144, .box_w = 10, .box_h = 11, .ofs_x = 0, .ofs_y = -1},
|
||||||
|
{.bitmap_index = 3789, .adv_w = 144, .box_w = 10, .box_h = 11, .ofs_x = 0, .ofs_y = -1},
|
||||||
|
{.bitmap_index = 3844, .adv_w = 216, .box_w = 15, .box_h = 11, .ofs_x = -1, .ofs_y = -1},
|
||||||
|
{.bitmap_index = 3927, .adv_w = 240, .box_w = 17, .box_h = 13, .ofs_x = -1, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 4038, .adv_w = 192, .box_w = 14, .box_h = 11, .ofs_x = -1, .ofs_y = -1},
|
||||||
|
{.bitmap_index = 4115, .adv_w = 168, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 4187, .adv_w = 192, .box_w = 12, .box_h = 7, .ofs_x = 0, .ofs_y = 2},
|
||||||
|
{.bitmap_index = 4229, .adv_w = 192, .box_w = 12, .box_h = 7, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 4271, .adv_w = 240, .box_w = 15, .box_h = 11, .ofs_x = 0, .ofs_y = -1},
|
||||||
|
{.bitmap_index = 4354, .adv_w = 168, .box_w = 12, .box_h = 13, .ofs_x = -1, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 4432, .adv_w = 120, .box_w = 8, .box_h = 11, .ofs_x = 0, .ofs_y = -1},
|
||||||
|
{.bitmap_index = 4476, .adv_w = 240, .box_w = 15, .box_h = 11, .ofs_x = 0, .ofs_y = -1},
|
||||||
|
{.bitmap_index = 4559, .adv_w = 216, .box_w = 14, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 4622, .adv_w = 216, .box_w = 14, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 4685, .adv_w = 216, .box_w = 14, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 4748, .adv_w = 216, .box_w = 14, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 4811, .adv_w = 216, .box_w = 14, .box_h = 9, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 4874, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 4952, .adv_w = 120, .box_w = 8, .box_h = 13, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 5004, .adv_w = 192, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -2}
|
||||||
};
|
};
|
||||||
|
|
||||||
/*---------------------
|
/*---------------------
|
||||||
@ -698,8 +1089,12 @@ static const uint8_t glyph_id_ofs_list_0[] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static const uint16_t unicode_list_3[] = {
|
static const uint16_t unicode_list_3[] = {
|
||||||
0x0, 0x30, 0x38, 0x39, 0x3a, 0x4b, 0xef65, 0xefc7,
|
0x0, 0x30, 0x38, 0x39, 0x3a, 0x3b, 0x4b, 0xe100,
|
||||||
0xefc8, 0xf012, 0xf1ca, 0xf4c5
|
0xef5c, 0xef5d, 0xef61, 0xef63, 0xef65, 0xef67, 0xef69, 0xef71,
|
||||||
|
0xef73, 0xef76, 0xef77, 0xef78, 0xef9b, 0xef9c, 0xef9d, 0xefaa,
|
||||||
|
0xefb0, 0xefb1, 0xefb2, 0xefb3, 0xefbe, 0xefc0, 0xefc1, 0xefc3,
|
||||||
|
0xefc7, 0xefc8, 0xf012, 0xf043, 0xf078, 0xf13b, 0xf190, 0xf191,
|
||||||
|
0xf192, 0xf193, 0xf194, 0xf1ca, 0xf21a, 0xf4c5
|
||||||
};
|
};
|
||||||
|
|
||||||
/*Collect the unicode lists and glyph_id offsets*/
|
/*Collect the unicode lists and glyph_id offsets*/
|
||||||
@ -719,7 +1114,7 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
.range_start = 176, .range_length = 62662, .glyph_id_start = 75,
|
.range_start = 176, .range_length = 62662, .glyph_id_start = 75,
|
||||||
.unicode_list = unicode_list_3, .glyph_id_ofs_list = NULL, .list_length = 12, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
|
.unicode_list = unicode_list_3, .glyph_id_ofs_list = NULL, .list_length = 46, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -741,7 +1136,12 @@ static const uint8_t kern_left_class_mapping[] =
|
|||||||
39, 45, 45, 46, 42, 39, 39, 40,
|
39, 45, 45, 46, 42, 39, 39, 40,
|
||||||
40, 47, 48, 49, 50, 45, 51, 51,
|
40, 47, 48, 49, 50, 45, 51, 51,
|
||||||
52, 51, 53, 54, 39, 43, 43, 43,
|
52, 51, 53, 54, 39, 43, 43, 43,
|
||||||
45, 0, 0, 0, 0, 0, 0
|
43, 45, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
/*Map glyph_ids to kern right classes*/
|
/*Map glyph_ids to kern right classes*/
|
||||||
@ -757,7 +1157,12 @@ static const uint8_t kern_right_class_mapping[] =
|
|||||||
32, 34, 35, 32, 32, 36, 36, 33,
|
32, 34, 35, 32, 32, 36, 36, 33,
|
||||||
36, 33, 36, 37, 38, 39, 40, 40,
|
36, 33, 36, 37, 38, 39, 40, 40,
|
||||||
41, 40, 42, 43, 31, 33, 33, 33,
|
41, 40, 42, 43, 31, 33, 33, 33,
|
||||||
39, 0, 0, 0, 0, 0, 0
|
33, 39, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
/*Kern values between classes*/
|
/*Kern values between classes*/
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Size: 18 px
|
* Size: 18 px
|
||||||
* Bpp: 4
|
* Bpp: 4
|
||||||
* Opts: --bpp 4 --size 18 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°àéèêûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'!? ():/- --format lvgl -o montserrat_medium_18.c --font fa-solid-900.ttf --range 61461,0xf0c2,0xf575,0xf077,0xf078,0xf27a
|
* Opts: --bpp 4 --size 18 --no-compress --font Montserrat-Medium.ttf --symbols 0123456789.°àéèêëûCABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz %,'!? ():/- --format lvgl -o montserrat_medium_18.c --font fa-solid-900.ttf --range 0xf00c,0xf00d,0xf011,0xf013,0xf015,0xf019,0xf021,0xf023,0xf1eb,0xf0f3,0xf240,0xf241,0xf242,0xf243,0xf244,0xf060,0xf061,0xf062,0xf063,0xf04b,0xf04c,0xf04d,0xf028,0xf027,0xf026,0xf06e,0xf070,0xf071,0xf05a,0xf128,0xf017,0xf073,0xf0c2,0xf575,0xf077,0xf078,0xf2ca,0xf27a,0xe1b0
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
|
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
@ -839,6 +839,18 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0x9, 0x10, 0x0, 0xdf, 0xda, 0xae, 0xf6, 0x0,
|
0x9, 0x10, 0x0, 0xdf, 0xda, 0xae, 0xf6, 0x0,
|
||||||
0x0, 0x7d, 0xff, 0xc5, 0x0,
|
0x0, 0x7d, 0xff, 0xc5, 0x0,
|
||||||
|
|
||||||
|
/* U+00EB "ë" */
|
||||||
|
0x0, 0xd, 0x90, 0x8d, 0x0, 0x0, 0x0, 0xc8,
|
||||||
|
0x7, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8,
|
||||||
|
0xdf, 0xe9, 0x10, 0x0, 0x1d, 0xfb, 0x8a, 0xfe,
|
||||||
|
0x20, 0xa, 0xf3, 0x0, 0x3, 0xfb, 0x0, 0xfa,
|
||||||
|
0x0, 0x0, 0x9, 0xf1, 0x3f, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0x33, 0xfa, 0x33, 0x33, 0x33, 0x30, 0xf,
|
||||||
|
0xd0, 0x0, 0x0, 0x0, 0x0, 0x9f, 0x90, 0x0,
|
||||||
|
0x9, 0x10, 0x0, 0xdf, 0xda, 0xae, 0xf6, 0x0,
|
||||||
|
0x0, 0x7d, 0xff, 0xc5, 0x0,
|
||||||
|
|
||||||
/* U+00FB "û" */
|
/* U+00FB "û" */
|
||||||
0x0, 0x4, 0xff, 0x50, 0x0, 0x0, 0x3f, 0x87,
|
0x0, 0x4, 0xff, 0x50, 0x0, 0x0, 0x3f, 0x87,
|
||||||
0xf5, 0x0, 0x0, 0x75, 0x0, 0x47, 0x0, 0x0,
|
0xf5, 0x0, 0x0, 0x75, 0x0, 0x47, 0x0, 0x0,
|
||||||
@ -850,6 +862,105 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0xc0, 0x0, 0x1e, 0xf8, 0xa, 0xfd, 0x89, 0xee,
|
0xc0, 0x0, 0x1e, 0xf8, 0xa, 0xfd, 0x89, 0xee,
|
||||||
0xf8, 0x0, 0x8d, 0xfe, 0x92, 0xf8,
|
0xf8, 0x0, 0x8d, 0xfe, 0x92, 0xf8,
|
||||||
|
|
||||||
|
/* U+E1B0 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x1b, 0xd3, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2d, 0xff,
|
||||||
|
0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x3e, 0xff, 0xff, 0xf6, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x4f, 0xff, 0xff, 0xff, 0xf8, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x6f, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xf9, 0x0, 0x0, 0x0, 0x0, 0x8f, 0xff,
|
||||||
|
0xff, 0xfe, 0xff, 0xff, 0xfb, 0x0, 0x0, 0x0,
|
||||||
|
0xaf, 0xff, 0xff, 0xa0, 0x6, 0xff, 0xff, 0xfd,
|
||||||
|
0x10, 0x1, 0xcf, 0xff, 0xff, 0xf0, 0x0, 0xc,
|
||||||
|
0xff, 0xff, 0xfe, 0x20, 0xcf, 0xff, 0xff, 0xfe,
|
||||||
|
0x0, 0x0, 0xbf, 0xff, 0xff, 0xfe, 0x1d, 0xff,
|
||||||
|
0xff, 0xff, 0xf6, 0x0, 0x3f, 0xff, 0xff, 0xff,
|
||||||
|
0xf1, 0x2, 0xcf, 0xff, 0xff, 0xfc, 0xbf, 0xff,
|
||||||
|
0xff, 0xff, 0x21, 0x0, 0xc, 0xff, 0xff, 0xc6,
|
||||||
|
0x44, 0x5a, 0xff, 0xff, 0xf0, 0x0, 0x0, 0xcf,
|
||||||
|
0xff, 0xc0, 0x0, 0x0, 0x8, 0xff, 0xff, 0x0,
|
||||||
|
0x0, 0xc, 0xff, 0xf5, 0x0, 0x0, 0x0, 0x1f,
|
||||||
|
0xff, 0xf0, 0x0, 0x0, 0xcf, 0xff, 0x62, 0x22,
|
||||||
|
0x22, 0x22, 0xff, 0xff, 0x0, 0x0, 0xb, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x0,
|
||||||
|
0x0, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xfe, 0x0, 0x0, 0x2, 0xef, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0x50, 0x0, 0x0, 0x0, 0x34,
|
||||||
|
0x44, 0x44, 0x44, 0x44, 0x43, 0x10, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F00C "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x51,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0xfa,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xbf, 0xf6,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0xff, 0x70,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0xbf, 0xf7, 0x0,
|
||||||
|
0x9c, 0x10, 0x0, 0x0, 0xb, 0xff, 0x70, 0x0,
|
||||||
|
0xef, 0xd1, 0x0, 0x0, 0xbf, 0xf7, 0x0, 0x0,
|
||||||
|
0x4f, 0xfd, 0x10, 0xb, 0xff, 0x70, 0x0, 0x0,
|
||||||
|
0x4, 0xff, 0xd2, 0xaf, 0xf7, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x4f, 0xff, 0xff, 0x70, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x4, 0xff, 0xf7, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x4d, 0x70, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F00D "" */
|
||||||
|
0x37, 0x0, 0x0, 0x0, 0x3, 0x70, 0xdf, 0xb0,
|
||||||
|
0x0, 0x0, 0x4f, 0xf5, 0x7f, 0xfb, 0x0, 0x4,
|
||||||
|
0xff, 0xe1, 0x8, 0xff, 0xa0, 0x3f, 0xfe, 0x20,
|
||||||
|
0x0, 0x8f, 0xfb, 0xff, 0xe2, 0x0, 0x0, 0x8,
|
||||||
|
0xff, 0xfe, 0x20, 0x0, 0x0, 0x2, 0xff, 0xfa,
|
||||||
|
0x0, 0x0, 0x0, 0x2e, 0xff, 0xff, 0x90, 0x0,
|
||||||
|
0x2, 0xef, 0xe3, 0xaf, 0xf8, 0x0, 0x2e, 0xff,
|
||||||
|
0x30, 0xa, 0xff, 0x80, 0xcf, 0xf3, 0x0, 0x0,
|
||||||
|
0xaf, 0xf4, 0x9e, 0x40, 0x0, 0x0, 0xa, 0xe2,
|
||||||
|
|
||||||
|
/* U+F011 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xaa, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x10, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x1, 0x40, 0x1, 0xff, 0x10,
|
||||||
|
0x4, 0x10, 0x0, 0x0, 0x1d, 0xf5, 0x1, 0xff,
|
||||||
|
0x10, 0x5f, 0xd1, 0x0, 0x0, 0xcf, 0xf3, 0x1,
|
||||||
|
0xff, 0x10, 0x2f, 0xfd, 0x0, 0x7, 0xff, 0x40,
|
||||||
|
0x1, 0xff, 0x10, 0x3, 0xff, 0x70, 0xe, 0xf9,
|
||||||
|
0x0, 0x1, 0xff, 0x10, 0x0, 0x8f, 0xe0, 0x3f,
|
||||||
|
0xf2, 0x0, 0x1, 0xff, 0x10, 0x0, 0x1f, 0xf3,
|
||||||
|
0x5f, 0xe0, 0x0, 0x1, 0xff, 0x10, 0x0, 0xe,
|
||||||
|
0xf5, 0x6f, 0xd0, 0x0, 0x0, 0xff, 0x0, 0x0,
|
||||||
|
0xc, 0xf7, 0x5f, 0xe0, 0x0, 0x0, 0x22, 0x0,
|
||||||
|
0x0, 0xe, 0xf6, 0x2f, 0xf3, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x2f, 0xf3, 0xd, 0xfa, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0xaf, 0xd0, 0x5, 0xff, 0x60,
|
||||||
|
0x0, 0x0, 0x0, 0x6, 0xff, 0x60, 0x0, 0xaf,
|
||||||
|
0xf8, 0x0, 0x0, 0x0, 0x8f, 0xfa, 0x0, 0x0,
|
||||||
|
0xb, 0xff, 0xe9, 0x77, 0x9e, 0xff, 0xb0, 0x0,
|
||||||
|
0x0, 0x0, 0x8f, 0xff, 0xff, 0xff, 0xf8, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x1, 0x7b, 0xdd, 0xb7, 0x10,
|
||||||
|
0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F013 "" */
|
||||||
|
0x0, 0x0, 0x0, 0xa, 0xcc, 0xa0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x4f, 0xff, 0xf4, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x8f, 0xff, 0xf7,
|
||||||
|
0x0, 0x0, 0x0, 0x1, 0xca, 0x59, 0xff, 0xff,
|
||||||
|
0xff, 0x85, 0xac, 0x10, 0xb, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xa0, 0x3f, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xf2, 0x6f, 0xff,
|
||||||
|
0xff, 0xfc, 0x66, 0xcf, 0xff, 0xff, 0xf5, 0x9,
|
||||||
|
0xff, 0xff, 0xc0, 0x0, 0xc, 0xff, 0xff, 0x80,
|
||||||
|
0x0, 0xcf, 0xff, 0x50, 0x0, 0x5, 0xff, 0xfb,
|
||||||
|
0x0, 0x0, 0xbf, 0xff, 0x30, 0x0, 0x3, 0xff,
|
||||||
|
0xfb, 0x0, 0x3, 0xef, 0xff, 0x80, 0x0, 0x8,
|
||||||
|
0xff, 0xfe, 0x30, 0x3f, 0xff, 0xff, 0xf6, 0x0,
|
||||||
|
0x6f, 0xff, 0xff, 0xf3, 0x5f, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xf5, 0xe, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xd0, 0x4, 0xff,
|
||||||
|
0xbe, 0xff, 0xff, 0xff, 0xeb, 0xff, 0x40, 0x0,
|
||||||
|
0x20, 0x0, 0xbf, 0xff, 0xfa, 0x0, 0x12, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x5f, 0xff, 0xf5, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x2f, 0xff, 0xf1, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x33, 0x10,
|
||||||
|
0x0, 0x0, 0x0,
|
||||||
|
|
||||||
/* U+F015 "" */
|
/* U+F015 "" */
|
||||||
0x0, 0x0, 0x0, 0x0, 0xb, 0xd3, 0x0, 0x0,
|
0x0, 0x0, 0x0, 0x0, 0xb, 0xd3, 0x0, 0x0,
|
||||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1d, 0xff,
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1d, 0xff,
|
||||||
@ -877,6 +988,397 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0x3, 0xff, 0xff, 0xa0, 0x0, 0x0, 0x0, 0x0,
|
0x3, 0xff, 0xff, 0xa0, 0x0, 0x0, 0x0, 0x0,
|
||||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F017 "" */
|
||||||
|
0x0, 0x0, 0x2, 0x7b, 0xdd, 0xb7, 0x20, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0xaf, 0xff, 0xff, 0xff, 0xfa,
|
||||||
|
0x0, 0x0, 0x0, 0x2d, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xd2, 0x0, 0x0, 0xdf, 0xff, 0xff, 0xcc,
|
||||||
|
0xff, 0xff, 0xfd, 0x10, 0xa, 0xff, 0xff, 0xff,
|
||||||
|
0x22, 0xff, 0xff, 0xff, 0xa0, 0x3f, 0xff, 0xff,
|
||||||
|
0xff, 0x22, 0xff, 0xff, 0xff, 0xf3, 0x9f, 0xff,
|
||||||
|
0xff, 0xff, 0x22, 0xff, 0xff, 0xff, 0xf9, 0xdf,
|
||||||
|
0xff, 0xff, 0xff, 0x22, 0xff, 0xff, 0xff, 0xfd,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0x21, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0x50, 0x2c, 0xff,
|
||||||
|
0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xf8, 0x0,
|
||||||
|
0x7f, 0xff, 0xfe, 0xaf, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xd3, 0xd, 0xff, 0xfa, 0x5f, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xdf, 0xff, 0xf5, 0xd, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xd0, 0x2, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x0,
|
||||||
|
0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x0,
|
||||||
|
0x0, 0x3, 0xef, 0xff, 0xff, 0xff, 0xfe, 0x30,
|
||||||
|
0x0, 0x0, 0x0, 0x6, 0xcf, 0xff, 0xfc, 0x60,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x11, 0x0,
|
||||||
|
0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F019 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x77, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x10, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0x10,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xff,
|
||||||
|
0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1,
|
||||||
|
0xff, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x1, 0xff, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x1, 0xff, 0x10, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x5, 0xf7, 0x1, 0xff, 0x10, 0x7f, 0x50, 0x0,
|
||||||
|
0x0, 0x8, 0xff, 0x71, 0xff, 0x17, 0xff, 0x80,
|
||||||
|
0x0, 0x0, 0x0, 0xcf, 0xf9, 0xff, 0x9f, 0xfc,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xc, 0xff, 0xff, 0xff,
|
||||||
|
0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xcf, 0xff,
|
||||||
|
0xfc, 0x0, 0x0, 0x0, 0x2, 0x55, 0x55, 0x1c,
|
||||||
|
0xff, 0xc1, 0x55, 0x55, 0x20, 0x7f, 0xff, 0xff,
|
||||||
|
0xb1, 0xbb, 0x1a, 0xff, 0xff, 0xf7, 0xef, 0xff,
|
||||||
|
0xff, 0xfb, 0x33, 0xbf, 0xff, 0xec, 0xfe, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x71, 0xff,
|
||||||
|
0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd,
|
||||||
|
0xfe, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xf5, 0x1, 0x33, 0x33, 0x33, 0x33, 0x33,
|
||||||
|
0x33, 0x33, 0x10,
|
||||||
|
|
||||||
|
/* U+F021 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x37, 0x98, 0x62, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x4d, 0xff, 0xff, 0xff, 0xb2,
|
||||||
|
0xb, 0xf2, 0x0, 0x6, 0xff, 0xfd, 0xaa, 0xef,
|
||||||
|
0xff, 0x4e, 0xf5, 0x0, 0x5f, 0xfc, 0x30, 0x0,
|
||||||
|
0x4, 0xef, 0xff, 0xf5, 0x0, 0xef, 0xb0, 0x0,
|
||||||
|
0x0, 0x0, 0x3e, 0xff, 0xf5, 0x7, 0xff, 0x10,
|
||||||
|
0x0, 0x0, 0xa, 0xff, 0xff, 0xf5, 0x5, 0xf7,
|
||||||
|
0x0, 0x0, 0x0, 0xa, 0xff, 0xff, 0xf2, 0x0,
|
||||||
|
0x10, 0x0, 0x0, 0x0, 0x0, 0x11, 0x11, 0x10,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x5, 0x66, 0x66, 0x20, 0x0, 0x0, 0x0,
|
||||||
|
0x5, 0x0, 0x4f, 0xff, 0xff, 0xc0, 0x0, 0x0,
|
||||||
|
0x0, 0xaf, 0x80, 0x5f, 0xff, 0xfd, 0x70, 0x0,
|
||||||
|
0x0, 0x3, 0xff, 0x50, 0x5f, 0xff, 0xf4, 0x0,
|
||||||
|
0x0, 0x0, 0x2e, 0xfd, 0x0, 0x5f, 0xfd, 0xff,
|
||||||
|
0x92, 0x0, 0x17, 0xff, 0xf2, 0x0, 0x5f, 0xe1,
|
||||||
|
0xcf, 0xff, 0xff, 0xff, 0xfe, 0x30, 0x0, 0x1b,
|
||||||
|
0x70, 0x7, 0xef, 0xff, 0xff, 0x91, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x2, 0x44, 0x20, 0x0, 0x0,
|
||||||
|
0x0,
|
||||||
|
|
||||||
|
/* U+F023 "" */
|
||||||
|
0x0, 0x0, 0x4, 0xad, 0xd9, 0x20, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x8f, 0xff, 0xff, 0xf5, 0x0, 0x0,
|
||||||
|
0x0, 0x5, 0xff, 0xc7, 0x7e, 0xff, 0x20, 0x0,
|
||||||
|
0x0, 0xd, 0xfb, 0x0, 0x1, 0xef, 0x90, 0x0,
|
||||||
|
0x0, 0x1f, 0xf3, 0x0, 0x0, 0x7f, 0xd0, 0x0,
|
||||||
|
0x0, 0x2f, 0xf1, 0x0, 0x0, 0x5f, 0xe0, 0x0,
|
||||||
|
0x0, 0x3f, 0xf1, 0x0, 0x0, 0x5f, 0xf0, 0x0,
|
||||||
|
0x2c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb1,
|
||||||
|
0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa,
|
||||||
|
0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe2,
|
||||||
|
0x1, 0x34, 0x44, 0x44, 0x44, 0x44, 0x43, 0x0,
|
||||||
|
|
||||||
|
/* U+F026 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x5, 0x60, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x8f, 0xf3, 0x0, 0x0, 0x0, 0x9,
|
||||||
|
0xff, 0xf3, 0x0, 0x0, 0x0, 0xbf, 0xff, 0xf3,
|
||||||
|
0x0, 0x11, 0x2c, 0xff, 0xff, 0xf3, 0x3e, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf3, 0xdf, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf3, 0xaf, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xf3, 0x7, 0xaa, 0xbf, 0xff, 0xff, 0xf3,
|
||||||
|
0x0, 0x0, 0x7, 0xff, 0xff, 0xf3, 0x0, 0x0,
|
||||||
|
0x0, 0x5f, 0xff, 0xf3, 0x0, 0x0, 0x0, 0x3,
|
||||||
|
0xef, 0xf3, 0x0, 0x0, 0x0, 0x0, 0x2e, 0xf1,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x10,
|
||||||
|
|
||||||
|
/* U+F027 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x5, 0x60, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x8f, 0xf3, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x9, 0xff, 0xf4, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0xbf, 0xff, 0xf4, 0x0, 0x0,
|
||||||
|
0x0, 0x11, 0x2c, 0xff, 0xff, 0xf4, 0x0, 0x0,
|
||||||
|
0x3e, 0xff, 0xff, 0xff, 0xff, 0xf4, 0x4, 0x40,
|
||||||
|
0xdf, 0xff, 0xff, 0xff, 0xff, 0xf4, 0xb, 0xf3,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xf4, 0x3, 0xfa,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xf4, 0x0, 0xfb,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xf4, 0x7, 0xf7,
|
||||||
|
0xaf, 0xff, 0xff, 0xff, 0xff, 0xf4, 0xb, 0xc0,
|
||||||
|
0x7, 0xaa, 0xbf, 0xff, 0xff, 0xf4, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x7, 0xff, 0xff, 0xf4, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x5f, 0xff, 0xf4, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x3, 0xef, 0xf4, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x2e, 0xf1, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x10, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F028 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x56, 0x0, 0x0, 0x0, 0x4a, 0x10, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x8f, 0xf3, 0x0, 0x0, 0x6,
|
||||||
|
0xfc, 0x10, 0x0, 0x0, 0x0, 0x0, 0x9f, 0xff,
|
||||||
|
0x40, 0x0, 0x0, 0x8, 0xfa, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0xbf, 0xff, 0xf4, 0x0, 0xa, 0xe2, 0xb,
|
||||||
|
0xf4, 0x0, 0x1, 0x12, 0xcf, 0xff, 0xff, 0x40,
|
||||||
|
0x0, 0x3f, 0xe0, 0x1f, 0xb0, 0x3e, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xf4, 0x4, 0x40, 0x6f, 0x80, 0xbf,
|
||||||
|
0x1d, 0xff, 0xff, 0xff, 0xff, 0xff, 0x40, 0xbf,
|
||||||
|
0x30, 0xed, 0x6, 0xf4, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xf4, 0x3, 0xfa, 0xa, 0xf0, 0x4f, 0x6f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0x40, 0xf, 0xb0,
|
||||||
|
0x9f, 0x13, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xf4, 0x7, 0xf7, 0xc, 0xf0, 0x5f, 0x5a, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0x40, 0xbc, 0x2, 0xfb,
|
||||||
|
0x8, 0xf3, 0x7, 0xaa, 0xbf, 0xff, 0xff, 0xf4,
|
||||||
|
0x0, 0x0, 0xbf, 0x40, 0xde, 0x0, 0x0, 0x0,
|
||||||
|
0x7f, 0xff, 0xff, 0x40, 0x0, 0x9f, 0x90, 0x6f,
|
||||||
|
0x80, 0x0, 0x0, 0x0, 0x5f, 0xff, 0xf4, 0x0,
|
||||||
|
0x4, 0x70, 0x2e, 0xe0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x3e, 0xff, 0x40, 0x0, 0x0, 0x2e, 0xf5, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x2e, 0xf1, 0x0, 0x0,
|
||||||
|
0x8, 0xf6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x1, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F04B "" */
|
||||||
|
0x28, 0x50, 0x0, 0x0, 0x0, 0x0, 0x0, 0xdf,
|
||||||
|
0xfc, 0x30, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff,
|
||||||
|
0xf9, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff,
|
||||||
|
0xe5, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xb2, 0x0, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0x80, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd,
|
||||||
|
0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf6, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xe6, 0x0, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xfa, 0x10, 0x0, 0xff, 0xff, 0xff, 0xfd,
|
||||||
|
0x40, 0x0, 0x0, 0xff, 0xff, 0xff, 0x70, 0x0,
|
||||||
|
0x0, 0x0, 0xff, 0xff, 0xb1, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x8f, 0xd4, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F04C "" */
|
||||||
|
0x17, 0x74, 0x0, 0x2, 0x77, 0x20, 0xcf, 0xff,
|
||||||
|
0x40, 0x1f, 0xff, 0xf1, 0xff, 0xff, 0x70, 0x3f,
|
||||||
|
0xff, 0xf3, 0xff, 0xff, 0x70, 0x3f, 0xff, 0xf3,
|
||||||
|
0xff, 0xff, 0x70, 0x3f, 0xff, 0xf3, 0xff, 0xff,
|
||||||
|
0x70, 0x3f, 0xff, 0xf3, 0xff, 0xff, 0x70, 0x3f,
|
||||||
|
0xff, 0xf3, 0xff, 0xff, 0x70, 0x3f, 0xff, 0xf3,
|
||||||
|
0xff, 0xff, 0x70, 0x3f, 0xff, 0xf3, 0xff, 0xff,
|
||||||
|
0x70, 0x3f, 0xff, 0xf3, 0xff, 0xff, 0x70, 0x3f,
|
||||||
|
0xff, 0xf3, 0xff, 0xff, 0x70, 0x3f, 0xff, 0xf3,
|
||||||
|
0xff, 0xff, 0x70, 0x3f, 0xff, 0xf3, 0x6f, 0xfc,
|
||||||
|
0x10, 0xa, 0xff, 0xa0,
|
||||||
|
|
||||||
|
/* U+F04D "" */
|
||||||
|
0x4, 0x78, 0x88, 0x88, 0x88, 0x87, 0x10, 0x8f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf7, 0xcf, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xf4, 0x2c, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0x80,
|
||||||
|
|
||||||
|
/* U+F05A "" */
|
||||||
|
0x0, 0x0, 0x0, 0x47, 0x99, 0x74, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x6e, 0xff, 0xff, 0xff, 0xe6,
|
||||||
|
0x0, 0x0, 0x0, 0x1b, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xb1, 0x0, 0x0, 0xcf, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xfc, 0x0, 0x9, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0x90, 0x2f, 0xff, 0xff,
|
||||||
|
0xff, 0x11, 0xff, 0xff, 0xff, 0xf2, 0x8f, 0xff,
|
||||||
|
0xff, 0xff, 0x22, 0xff, 0xff, 0xff, 0xf8, 0xdf,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xff, 0xff, 0xff, 0xe3, 0x13, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xe4, 0x10, 0xdf, 0xff,
|
||||||
|
0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0x60, 0xdf,
|
||||||
|
0xff, 0xff, 0xfe, 0xaf, 0xff, 0xff, 0xff, 0x60,
|
||||||
|
0xdf, 0xff, 0xff, 0xfa, 0x5f, 0xff, 0xff, 0xe1,
|
||||||
|
0x0, 0x1e, 0xff, 0xff, 0xf5, 0xd, 0xff, 0xff,
|
||||||
|
0xf8, 0x77, 0x8f, 0xff, 0xff, 0xd0, 0x2, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x20, 0x0,
|
||||||
|
0x4f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf4, 0x0,
|
||||||
|
0x0, 0x2, 0xdf, 0xff, 0xff, 0xff, 0xfd, 0x20,
|
||||||
|
0x0, 0x0, 0x0, 0x5, 0xae, 0xff, 0xea, 0x50,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F060 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x74, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0xc, 0xfd, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0xcf, 0xf6, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0xc, 0xff, 0x60, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0xcf, 0xf6, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xc, 0xff, 0x60, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7,
|
||||||
|
0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa,
|
||||||
|
0x3f, 0xff, 0x74, 0x44, 0x44, 0x44, 0x44, 0x40,
|
||||||
|
0x3, 0xff, 0xe2, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x3f, 0xfe, 0x20, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x3, 0xff, 0xe2, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x3f, 0xfc, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x3, 0xd8, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F061 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x66, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x1, 0xff, 0x90, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xaf, 0xf9, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xa, 0xff, 0x90, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0xaf, 0xf9, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0xff, 0x90,
|
||||||
|
0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7,
|
||||||
|
0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa,
|
||||||
|
0x14, 0x44, 0x44, 0x44, 0x44, 0x49, 0xff, 0xd1,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, 0xfd, 0x10,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x5, 0xff, 0xd1, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x5f, 0xfd, 0x10, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xff, 0xd1, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xbc, 0x10, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F062 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x85, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0xc, 0xff, 0x60, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xcf, 0xff, 0xf6, 0x0, 0x0, 0x0, 0xc, 0xff,
|
||||||
|
0xff, 0xff, 0x60, 0x0, 0x0, 0xcf, 0xfb, 0xff,
|
||||||
|
0xbf, 0xf6, 0x0, 0xc, 0xff, 0x65, 0xfe, 0xc,
|
||||||
|
0xff, 0x60, 0xbf, 0xf6, 0x5, 0xfe, 0x0, 0xcf,
|
||||||
|
0xf5, 0xdf, 0x60, 0x5, 0xfe, 0x0, 0xc, 0xf6,
|
||||||
|
0x12, 0x0, 0x5, 0xfe, 0x0, 0x0, 0x30, 0x0,
|
||||||
|
0x0, 0x5, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x5, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5,
|
||||||
|
0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0xfe,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0xfe, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x5, 0xfe, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x2, 0xfb, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F063 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x85, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x4, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x5, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5,
|
||||||
|
0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0xfe,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0xfe, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x5, 0xfe, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x5, 0xfe, 0x0, 0x0, 0x0,
|
||||||
|
0x7a, 0x10, 0x5, 0xfe, 0x0, 0x4, 0xb2, 0xef,
|
||||||
|
0xd1, 0x5, 0xfe, 0x0, 0x5f, 0xf7, 0x5f, 0xfd,
|
||||||
|
0x15, 0xfe, 0x5, 0xff, 0xd1, 0x5, 0xff, 0xc6,
|
||||||
|
0xfe, 0x4f, 0xfd, 0x10, 0x0, 0x5f, 0xff, 0xff,
|
||||||
|
0xff, 0xd1, 0x0, 0x0, 0x5, 0xff, 0xff, 0xfd,
|
||||||
|
0x10, 0x0, 0x0, 0x0, 0x5f, 0xff, 0xd1, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x5, 0xfd, 0x10, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F06E "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x37, 0x9a, 0x85, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5e, 0xff,
|
||||||
|
0xff, 0xff, 0xf8, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x1b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd2, 0x0,
|
||||||
|
0x0, 0x0, 0x1, 0xdf, 0xff, 0xd7, 0x33, 0x5c,
|
||||||
|
0xff, 0xff, 0x30, 0x0, 0x0, 0xd, 0xff, 0xfb,
|
||||||
|
0x0, 0x0, 0x0, 0x7f, 0xff, 0xf2, 0x0, 0x0,
|
||||||
|
0xaf, 0xff, 0xd0, 0x0, 0xf, 0xc2, 0xa, 0xff,
|
||||||
|
0xfd, 0x0, 0x3, 0xff, 0xff, 0x60, 0x0, 0xf,
|
||||||
|
0xfe, 0x2, 0xff, 0xff, 0x80, 0xb, 0xff, 0xff,
|
||||||
|
0x20, 0x0, 0x8f, 0xff, 0x50, 0xef, 0xff, 0xf1,
|
||||||
|
0xe, 0xff, 0xff, 0x12, 0xce, 0xff, 0xff, 0x70,
|
||||||
|
0xdf, 0xff, 0xf3, 0x7, 0xff, 0xff, 0x40, 0xef,
|
||||||
|
0xff, 0xff, 0x30, 0xff, 0xff, 0xc0, 0x0, 0xef,
|
||||||
|
0xff, 0xa0, 0x5f, 0xff, 0xf8, 0x6, 0xff, 0xff,
|
||||||
|
0x30, 0x0, 0x3f, 0xff, 0xf4, 0x2, 0x88, 0x40,
|
||||||
|
0x1e, 0xff, 0xf7, 0x0, 0x0, 0x6, 0xff, 0xff,
|
||||||
|
0x70, 0x0, 0x5, 0xef, 0xff, 0xa0, 0x0, 0x0,
|
||||||
|
0x0, 0x6f, 0xff, 0xff, 0xcb, 0xef, 0xff, 0xf9,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x3, 0xdf, 0xff, 0xff,
|
||||||
|
0xff, 0xfe, 0x50, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x5, 0xbf, 0xff, 0xfc, 0x60, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F070 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xa, 0x80, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xc, 0xfc, 0x10, 0x0, 0x4, 0x8a, 0xa8, 0x61,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x9f, 0xe3, 0x5,
|
||||||
|
0xdf, 0xff, 0xff, 0xff, 0x91, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x6, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xfe, 0x40, 0x0, 0x0, 0x0, 0x0, 0x3e, 0xff,
|
||||||
|
0xfe, 0x73, 0x24, 0xaf, 0xff, 0xf5, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x1, 0xcf, 0xf2, 0x0, 0x0, 0x5,
|
||||||
|
0xff, 0xff, 0x40, 0x0, 0x0, 0x7, 0x90, 0x8,
|
||||||
|
0xfe, 0x30, 0xdd, 0x30, 0x7f, 0xff, 0xe1, 0x0,
|
||||||
|
0x0, 0x2f, 0xfc, 0x10, 0x5f, 0xf6, 0xef, 0xf2,
|
||||||
|
0xf, 0xff, 0xfa, 0x0, 0x0, 0x9f, 0xff, 0xe1,
|
||||||
|
0x2, 0xdf, 0xff, 0xf7, 0xc, 0xff, 0xff, 0x20,
|
||||||
|
0x0, 0xcf, 0xff, 0xf3, 0x0, 0x1b, 0xff, 0xf9,
|
||||||
|
0xb, 0xff, 0xff, 0x40, 0x0, 0x5f, 0xff, 0xf6,
|
||||||
|
0x0, 0x0, 0x7f, 0xf7, 0xd, 0xff, 0xfd, 0x0,
|
||||||
|
0x0, 0xc, 0xff, 0xfc, 0x0, 0x0, 0x4, 0xef,
|
||||||
|
0xaf, 0xff, 0xf4, 0x0, 0x0, 0x2, 0xff, 0xff,
|
||||||
|
0x60, 0x0, 0x0, 0x2d, 0xff, 0xff, 0x90, 0x0,
|
||||||
|
0x0, 0x0, 0x4f, 0xff, 0xf8, 0x10, 0x0, 0x0,
|
||||||
|
0xaf, 0xfc, 0x0, 0x0, 0x0, 0x0, 0x4, 0xff,
|
||||||
|
0xff, 0xfc, 0xbd, 0xb1, 0x6, 0xff, 0x50, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x2c, 0xff, 0xff, 0xff, 0xfd,
|
||||||
|
0x20, 0x3e, 0xf9, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x4a, 0xef, 0xff, 0xc7, 0x10, 0x1, 0xcf, 0xc1,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10, 0x0,
|
||||||
|
0x0, 0x0, 0x9, 0xf6, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x20,
|
||||||
|
|
||||||
|
/* U+F071 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x3, 0x30, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4f, 0xf5,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xef, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x8, 0xff, 0xff, 0x80, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x2f, 0xff, 0xff, 0xf2, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0xbf, 0xf7, 0x7f,
|
||||||
|
0xfb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0xff,
|
||||||
|
0xf2, 0x2f, 0xff, 0x50, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xd, 0xff, 0xf2, 0x2f, 0xff, 0xe0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x8f, 0xff, 0xf2, 0x2f, 0xff, 0xf8,
|
||||||
|
0x0, 0x0, 0x0, 0x2, 0xff, 0xff, 0xf2, 0x2f,
|
||||||
|
0xff, 0xff, 0x20, 0x0, 0x0, 0xb, 0xff, 0xff,
|
||||||
|
0xf9, 0x9f, 0xff, 0xff, 0xb0, 0x0, 0x0, 0x4f,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x0,
|
||||||
|
0x0, 0xdf, 0xff, 0xff, 0xf0, 0xf, 0xff, 0xff,
|
||||||
|
0xfd, 0x0, 0x8, 0xff, 0xff, 0xff, 0xf4, 0x4f,
|
||||||
|
0xff, 0xff, 0xff, 0x80, 0xe, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xa, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa0,
|
||||||
|
0x0, 0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
|
||||||
|
0x21, 0x0,
|
||||||
|
|
||||||
|
/* U+F073 "" */
|
||||||
|
0x0, 0x2, 0xa2, 0x0, 0x0, 0x59, 0x10, 0x0,
|
||||||
|
0x0, 0x9, 0xf9, 0x0, 0x0, 0xdf, 0x50, 0x0,
|
||||||
|
0x5, 0x6c, 0xfc, 0x66, 0x66, 0xef, 0xa6, 0x40,
|
||||||
|
0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xff, 0x84, 0xbf, 0xe4, 0x5f, 0xf8, 0x4b, 0xfc,
|
||||||
|
0xff, 0x40, 0x8f, 0xc0, 0xf, 0xf4, 0x8, 0xfc,
|
||||||
|
0xff, 0xa6, 0xcf, 0xe7, 0x8f, 0xfa, 0x6c, 0xfc,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc,
|
||||||
|
0xff, 0xed, 0xff, 0xfd, 0xef, 0xfe, 0xdf, 0xfc,
|
||||||
|
0xff, 0x40, 0x8f, 0xc0, 0xf, 0xf4, 0x8, 0xfc,
|
||||||
|
0xff, 0x50, 0x9f, 0xd0, 0x1f, 0xf5, 0x9, 0xfc,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb,
|
||||||
|
0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf6,
|
||||||
|
0x3, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x20,
|
||||||
|
|
||||||
/* U+F077 "" */
|
/* U+F077 "" */
|
||||||
0x0, 0x0, 0x0, 0x3, 0x30, 0x0, 0x0, 0x0,
|
0x0, 0x0, 0x0, 0x3, 0x30, 0x0, 0x0, 0x0,
|
||||||
0x0, 0x0, 0x0, 0x6f, 0xf6, 0x0, 0x0, 0x0,
|
0x0, 0x0, 0x0, 0x6f, 0xf6, 0x0, 0x0, 0x0,
|
||||||
@ -928,6 +1430,159 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0x0, 0x0, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
|
0x0, 0x0, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
|
||||||
0x11, 0x10, 0x0, 0x0,
|
0x11, 0x10, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F0F3 "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x96, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x3f, 0xf0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x7d, 0xff, 0xb4, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x1, 0xdf, 0xff, 0xff, 0xf9,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xcf, 0xff, 0xff, 0xff,
|
||||||
|
0xf8, 0x0, 0x0, 0x0, 0x5f, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xf1, 0x0, 0x0, 0xa, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0x50, 0x0, 0x0, 0xbf, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xf7, 0x0, 0x0, 0xc, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0x80, 0x0, 0x0, 0xef, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf9, 0x0, 0x0, 0x2f, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xd0, 0x0, 0x9, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0x50, 0x4, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x10, 0xef,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xa,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x60,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x4f, 0xff, 0xf0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0xbf, 0xf6, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x21, 0x0, 0x0,
|
||||||
|
0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F128 "" */
|
||||||
|
0x0, 0x3b, 0xff, 0xfc, 0x50, 0x0, 0x4f, 0xff,
|
||||||
|
0xff, 0xff, 0x80, 0xe, 0xfe, 0x65, 0x5c, 0xff,
|
||||||
|
0x34, 0xff, 0x20, 0x0, 0xd, 0xf8, 0x6f, 0xd0,
|
||||||
|
0x0, 0x0, 0x9f, 0xa1, 0x94, 0x0, 0x0, 0xc,
|
||||||
|
0xf9, 0x0, 0x0, 0x0, 0x8, 0xff, 0x40, 0x0,
|
||||||
|
0x0, 0x2c, 0xff, 0xa0, 0x0, 0x0, 0x1e, 0xff,
|
||||||
|
0x90, 0x0, 0x0, 0x6, 0xff, 0x30, 0x0, 0x0,
|
||||||
|
0x0, 0x6f, 0xb0, 0x0, 0x0, 0x0, 0x0, 0x51,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x4, 0xc7, 0x0, 0x0, 0x0, 0x0, 0xbf,
|
||||||
|
0xf0, 0x0, 0x0, 0x0, 0x6, 0xe9, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F1EB "" */
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x24, 0x56, 0x53, 0x10,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5b, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xd8, 0x20, 0x0, 0x0, 0x0,
|
||||||
|
0x5, 0xdf, 0xff, 0xff, 0xed, 0xff, 0xff, 0xff,
|
||||||
|
0xa2, 0x0, 0x0, 0x1c, 0xff, 0xfb, 0x62, 0x0,
|
||||||
|
0x0, 0x4, 0x8d, 0xff, 0xf7, 0x0, 0x4e, 0xff,
|
||||||
|
0x92, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5, 0xdf,
|
||||||
|
0xfa, 0xf, 0xfe, 0x30, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x9f, 0xf7, 0x69, 0x10, 0x0,
|
||||||
|
0x4, 0x9d, 0xef, 0xeb, 0x71, 0x0, 0x0, 0x5a,
|
||||||
|
0x10, 0x0, 0x0, 0x3c, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xf8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x5f, 0xff,
|
||||||
|
0xc7, 0x54, 0x69, 0xef, 0xfc, 0x10, 0x0, 0x0,
|
||||||
|
0x0, 0xc, 0xfd, 0x30, 0x0, 0x0, 0x0, 0x8f,
|
||||||
|
0xf4, 0x0, 0x0, 0x0, 0x0, 0x26, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x36, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x3, 0x50, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xff,
|
||||||
|
0xe1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0xef, 0xff, 0x60, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0xff, 0xf6,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x4e, 0xfa, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F240 "" */
|
||||||
|
0x0, 0x45, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
|
||||||
|
0x41, 0x0, 0x3, 0xef, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf5, 0x0, 0xcf, 0xfe, 0xee,
|
||||||
|
0xee, 0xee, 0xee, 0xee, 0xee, 0xff, 0xe0, 0xf,
|
||||||
|
0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0xff, 0x20, 0xff, 0x37, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xfe, 0xf, 0xfe, 0x1f, 0xf3, 0x7f, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xf3, 0xff,
|
||||||
|
0x37, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf,
|
||||||
|
0xff, 0x3f, 0xf3, 0x7f, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xe0, 0xff, 0xf3, 0xff, 0x33, 0x77, 0x77,
|
||||||
|
0x77, 0x77, 0x77, 0x77, 0xf, 0xf7, 0xe, 0xf8,
|
||||||
|
0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x46, 0xff,
|
||||||
|
0x10, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xc0, 0x0, 0x9e, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xfe, 0xa1, 0x0,
|
||||||
|
|
||||||
|
/* U+F241 "" */
|
||||||
|
0x0, 0x45, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
|
||||||
|
0x41, 0x0, 0x3, 0xef, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf4, 0x0, 0xcf, 0xfe, 0xee,
|
||||||
|
0xee, 0xee, 0xee, 0xee, 0xee, 0xff, 0xe0, 0xf,
|
||||||
|
0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
|
||||||
|
0xff, 0x10, 0xff, 0x3d, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0x20, 0x0, 0x1f, 0xfe, 0x1f, 0xf3, 0xdf, 0xff,
|
||||||
|
0xff, 0xff, 0xf2, 0x0, 0x1, 0xff, 0xf3, 0xff,
|
||||||
|
0x3d, 0xff, 0xff, 0xff, 0xff, 0x20, 0x0, 0x1f,
|
||||||
|
0xff, 0x3f, 0xf3, 0xdf, 0xff, 0xff, 0xff, 0xf2,
|
||||||
|
0x0, 0x1, 0xff, 0xf3, 0xff, 0x36, 0x77, 0x77,
|
||||||
|
0x77, 0x77, 0x10, 0x0, 0x1f, 0xf7, 0xe, 0xf8,
|
||||||
|
0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x47, 0xff,
|
||||||
|
0x0, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xb0, 0x0, 0x9e, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xfe, 0xa1, 0x0,
|
||||||
|
|
||||||
|
/* U+F242 "" */
|
||||||
|
0x0, 0x45, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
|
||||||
|
0x41, 0x0, 0x3, 0xef, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf4, 0x0, 0xcf, 0xfe, 0xee,
|
||||||
|
0xee, 0xee, 0xee, 0xee, 0xee, 0xff, 0xe0, 0xf,
|
||||||
|
0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
|
||||||
|
0xff, 0x10, 0xff, 0x3a, 0xff, 0xff, 0xff, 0x10,
|
||||||
|
0x0, 0x0, 0x1f, 0xfe, 0x1f, 0xf3, 0xaf, 0xff,
|
||||||
|
0xff, 0xf1, 0x0, 0x0, 0x1, 0xff, 0xf3, 0xff,
|
||||||
|
0x3a, 0xff, 0xff, 0xff, 0x10, 0x0, 0x0, 0x1f,
|
||||||
|
0xff, 0x3f, 0xf3, 0xaf, 0xff, 0xff, 0xf1, 0x0,
|
||||||
|
0x0, 0x1, 0xff, 0xf3, 0xff, 0x35, 0x77, 0x77,
|
||||||
|
0x77, 0x0, 0x0, 0x0, 0x1f, 0xf7, 0xe, 0xf8,
|
||||||
|
0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x47, 0xff,
|
||||||
|
0x0, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xb0, 0x0, 0x9e, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xfe, 0xa1, 0x0,
|
||||||
|
|
||||||
|
/* U+F243 "" */
|
||||||
|
0x0, 0x45, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
|
||||||
|
0x41, 0x0, 0x3, 0xef, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf4, 0x0, 0xcf, 0xfe, 0xee,
|
||||||
|
0xee, 0xee, 0xee, 0xee, 0xee, 0xff, 0xe0, 0xf,
|
||||||
|
0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
|
||||||
|
0xff, 0x10, 0xff, 0x37, 0xff, 0xe0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x1f, 0xfe, 0x1f, 0xf3, 0x7f, 0xfe,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x1, 0xff, 0xf3, 0xff,
|
||||||
|
0x37, 0xff, 0xe0, 0x0, 0x0, 0x0, 0x0, 0x1f,
|
||||||
|
0xff, 0x3f, 0xf3, 0x7f, 0xfe, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x1, 0xff, 0xf3, 0xff, 0x33, 0x77, 0x70,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x1f, 0xf7, 0xe, 0xf8,
|
||||||
|
0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x47, 0xff,
|
||||||
|
0x0, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xb0, 0x0, 0x9e, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xfe, 0xa1, 0x0,
|
||||||
|
|
||||||
|
/* U+F244 "" */
|
||||||
|
0x0, 0x45, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
|
||||||
|
0x41, 0x0, 0x3, 0xef, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xf4, 0x0, 0xcf, 0xfe, 0xee,
|
||||||
|
0xee, 0xee, 0xee, 0xee, 0xee, 0xff, 0xe0, 0xf,
|
||||||
|
0xf4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
|
||||||
|
0xff, 0x10, 0xff, 0x40, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x2f, 0xfe, 0x1f, 0xf4, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x2, 0xff, 0xf3, 0xff,
|
||||||
|
0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2f,
|
||||||
|
0xff, 0x4f, 0xf4, 0x0, 0x0, 0x0, 0x0, 0x0,
|
||||||
|
0x0, 0x2, 0xff, 0xf3, 0xff, 0x40, 0x0, 0x0,
|
||||||
|
0x0, 0x0, 0x0, 0x0, 0x2f, 0xf7, 0xe, 0xf8,
|
||||||
|
0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x47, 0xff,
|
||||||
|
0x0, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xb0, 0x0, 0x9e, 0xff, 0xff, 0xff,
|
||||||
|
0xff, 0xff, 0xff, 0xfe, 0xa1, 0x0,
|
||||||
|
|
||||||
/* U+F27A "" */
|
/* U+F27A "" */
|
||||||
0x7, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
|
0x7, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
|
||||||
0x70, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
0x70, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||||
@ -952,6 +1607,22 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
|
|||||||
0x0, 0x0, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0,
|
0x0, 0x0, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0,
|
||||||
0x0, 0x0, 0x0,
|
0x0, 0x0, 0x0,
|
||||||
|
|
||||||
|
/* U+F2CA "" */
|
||||||
|
0x0, 0x3, 0xbd, 0xc6, 0x0, 0x0, 0x5, 0xff,
|
||||||
|
0xff, 0xfa, 0x0, 0x0, 0xef, 0xc6, 0xaf, 0xf5,
|
||||||
|
0x0, 0x3f, 0xf1, 0x0, 0xdf, 0x90, 0x4, 0xff,
|
||||||
|
0x0, 0xb, 0xfa, 0x0, 0x5f, 0xf0, 0x0, 0xbf,
|
||||||
|
0xa0, 0x5, 0xff, 0x0, 0xb, 0xfa, 0x0, 0x5f,
|
||||||
|
0xf0, 0x0, 0xbf, 0xa0, 0x5, 0xff, 0x0, 0xb,
|
||||||
|
0xfa, 0x0, 0x5f, 0xe0, 0x91, 0xbf, 0xa0, 0x9,
|
||||||
|
0xfd, 0xf, 0x39, 0xfe, 0x1, 0xff, 0x51, 0xf4,
|
||||||
|
0x2f, 0xf7, 0x5f, 0xe0, 0xdf, 0xf1, 0x9f, 0xa6,
|
||||||
|
0xfe, 0xf, 0xff, 0x38, 0xfc, 0x3f, 0xf3, 0x5d,
|
||||||
|
0x80, 0xdf, 0x90, 0xdf, 0xe4, 0x2, 0xaf, 0xf3,
|
||||||
|
0x3, 0xff, 0xff, 0xff, 0xf8, 0x0, 0x2, 0xbf,
|
||||||
|
0xff, 0xe6, 0x0, 0x0, 0x0, 0x13, 0x20, 0x0,
|
||||||
|
0x0,
|
||||||
|
|
||||||
/* U+F575 "" */
|
/* U+F575 "" */
|
||||||
0x6, 0xa1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0,
|
0x6, 0xa1, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0,
|
||||||
0x0, 0xd, 0xfd, 0x10, 0x3, 0xdf, 0xe4, 0x0,
|
0x0, 0xd, 0xfd, 0x10, 0x3, 0xdf, 0xe4, 0x0,
|
||||||
@ -1063,13 +1734,47 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
|
|||||||
{.bitmap_index = 4776, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
{.bitmap_index = 4776, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
||||||
{.bitmap_index = 4853, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
{.bitmap_index = 4853, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
||||||
{.bitmap_index = 4930, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
{.bitmap_index = 4930, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
||||||
{.bitmap_index = 5007, .adv_w = 195, .box_w = 10, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
|
{.bitmap_index = 5007, .adv_w = 176, .box_w = 11, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
||||||
{.bitmap_index = 5077, .adv_w = 324, .box_w = 21, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
{.bitmap_index = 5084, .adv_w = 195, .box_w = 10, .box_h = 14, .ofs_x = 1, .ofs_y = 0},
|
||||||
{.bitmap_index = 5277, .adv_w = 288, .box_w = 16, .box_h = 10, .ofs_x = 1, .ofs_y = 3},
|
{.bitmap_index = 5154, .adv_w = 324, .box_w = 21, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
{.bitmap_index = 5357, .adv_w = 288, .box_w = 16, .box_h = 10, .ofs_x = 1, .ofs_y = 1},
|
{.bitmap_index = 5354, .adv_w = 252, .box_w = 16, .box_h = 12, .ofs_x = 0, .ofs_y = 1},
|
||||||
{.bitmap_index = 5437, .adv_w = 360, .box_w = 23, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
|
{.bitmap_index = 5450, .adv_w = 216, .box_w = 12, .box_h = 12, .ofs_x = 1, .ofs_y = 1},
|
||||||
{.bitmap_index = 5633, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
{.bitmap_index = 5522, .adv_w = 288, .box_w = 18, .box_h = 18, .ofs_x = 0, .ofs_y = -2},
|
||||||
{.bitmap_index = 5804, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3}
|
{.bitmap_index = 5684, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 5855, .adv_w = 324, .box_w = 21, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 6055, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 6226, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 6397, .adv_w = 288, .box_w = 18, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 6550, .adv_w = 252, .box_w = 16, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 6702, .adv_w = 180, .box_w = 12, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 6804, .adv_w = 252, .box_w = 16, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 6940, .adv_w = 360, .box_w = 23, .box_h = 18, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 7147, .adv_w = 216, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 7266, .adv_w = 180, .box_w = 12, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 7350, .adv_w = 216, .box_w = 14, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 7448, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 7619, .adv_w = 252, .box_w = 16, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 7731, .adv_w = 252, .box_w = 16, .box_h = 14, .ofs_x = 0, .ofs_y = 0},
|
||||||
|
{.bitmap_index = 7843, .adv_w = 216, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 7962, .adv_w = 216, .box_w = 14, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 8081, .adv_w = 324, .box_w = 22, .box_h = 17, .ofs_x = -1, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 8268, .adv_w = 360, .box_w = 24, .box_h = 20, .ofs_x = -1, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 8508, .adv_w = 288, .box_w = 20, .box_h = 17, .ofs_x = -1, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 8678, .adv_w = 252, .box_w = 16, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 8830, .adv_w = 288, .box_w = 16, .box_h = 10, .ofs_x = 1, .ofs_y = 3},
|
||||||
|
{.bitmap_index = 8910, .adv_w = 288, .box_w = 16, .box_h = 10, .ofs_x = 1, .ofs_y = 1},
|
||||||
|
{.bitmap_index = 8990, .adv_w = 360, .box_w = 23, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 9186, .adv_w = 252, .box_w = 17, .box_h = 19, .ofs_x = -1, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 9348, .adv_w = 180, .box_w = 11, .box_h = 16, .ofs_x = 0, .ofs_y = -1},
|
||||||
|
{.bitmap_index = 9436, .adv_w = 360, .box_w = 23, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
|
||||||
|
{.bitmap_index = 9632, .adv_w = 324, .box_w = 21, .box_h = 12, .ofs_x = 0, .ofs_y = 1},
|
||||||
|
{.bitmap_index = 9758, .adv_w = 324, .box_w = 21, .box_h = 12, .ofs_x = 0, .ofs_y = 1},
|
||||||
|
{.bitmap_index = 9884, .adv_w = 324, .box_w = 21, .box_h = 12, .ofs_x = 0, .ofs_y = 1},
|
||||||
|
{.bitmap_index = 10010, .adv_w = 324, .box_w = 21, .box_h = 12, .ofs_x = 0, .ofs_y = 1},
|
||||||
|
{.bitmap_index = 10136, .adv_w = 324, .box_w = 21, .box_h = 12, .ofs_x = 0, .ofs_y = 1},
|
||||||
|
{.bitmap_index = 10262, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 10433, .adv_w = 180, .box_w = 11, .box_h = 19, .ofs_x = 0, .ofs_y = -3},
|
||||||
|
{.bitmap_index = 10538, .adv_w = 288, .box_w = 18, .box_h = 19, .ofs_x = 0, .ofs_y = -3}
|
||||||
};
|
};
|
||||||
|
|
||||||
/*---------------------
|
/*---------------------
|
||||||
@ -1084,8 +1789,12 @@ static const uint8_t glyph_id_ofs_list_0[] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static const uint16_t unicode_list_3[] = {
|
static const uint16_t unicode_list_3[] = {
|
||||||
0x0, 0x30, 0x38, 0x39, 0x3a, 0x4b, 0xef65, 0xefc7,
|
0x0, 0x30, 0x38, 0x39, 0x3a, 0x3b, 0x4b, 0xe100,
|
||||||
0xefc8, 0xf012, 0xf1ca, 0xf4c5
|
0xef5c, 0xef5d, 0xef61, 0xef63, 0xef65, 0xef67, 0xef69, 0xef71,
|
||||||
|
0xef73, 0xef76, 0xef77, 0xef78, 0xef9b, 0xef9c, 0xef9d, 0xefaa,
|
||||||
|
0xefb0, 0xefb1, 0xefb2, 0xefb3, 0xefbe, 0xefc0, 0xefc1, 0xefc3,
|
||||||
|
0xefc7, 0xefc8, 0xf012, 0xf043, 0xf078, 0xf13b, 0xf190, 0xf191,
|
||||||
|
0xf192, 0xf193, 0xf194, 0xf1ca, 0xf21a, 0xf4c5
|
||||||
};
|
};
|
||||||
|
|
||||||
/*Collect the unicode lists and glyph_id offsets*/
|
/*Collect the unicode lists and glyph_id offsets*/
|
||||||
@ -1105,7 +1814,7 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
.range_start = 176, .range_length = 62662, .glyph_id_start = 75,
|
.range_start = 176, .range_length = 62662, .glyph_id_start = 75,
|
||||||
.unicode_list = unicode_list_3, .glyph_id_ofs_list = NULL, .list_length = 12, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
|
.unicode_list = unicode_list_3, .glyph_id_ofs_list = NULL, .list_length = 46, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -1127,7 +1836,12 @@ static const uint8_t kern_left_class_mapping[] =
|
|||||||
39, 45, 45, 46, 42, 39, 39, 40,
|
39, 45, 45, 46, 42, 39, 39, 40,
|
||||||
40, 47, 48, 49, 50, 45, 51, 51,
|
40, 47, 48, 49, 50, 45, 51, 51,
|
||||||
52, 51, 53, 54, 39, 43, 43, 43,
|
52, 51, 53, 54, 39, 43, 43, 43,
|
||||||
45, 0, 0, 0, 0, 0, 0
|
43, 45, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
/*Map glyph_ids to kern right classes*/
|
/*Map glyph_ids to kern right classes*/
|
||||||
@ -1143,7 +1857,12 @@ static const uint8_t kern_right_class_mapping[] =
|
|||||||
32, 34, 35, 32, 32, 36, 36, 33,
|
32, 34, 35, 32, 32, 36, 36, 33,
|
||||||
36, 33, 36, 37, 38, 39, 40, 40,
|
36, 33, 36, 37, 38, 39, 40, 40,
|
||||||
41, 40, 42, 43, 31, 33, 33, 33,
|
41, 40, 42, 43, 31, 33, 33, 33,
|
||||||
39, 0, 0, 0, 0, 0, 0
|
33, 39, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0
|
||||||
};
|
};
|
||||||
|
|
||||||
/*Kern values between classes*/
|
/*Kern values between classes*/
|
||||||
@ -1495,7 +2214,7 @@ lv_font_t montserrat_medium_18 = {
|
|||||||
#endif
|
#endif
|
||||||
.get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/
|
.get_glyph_dsc = lv_font_get_glyph_dsc_fmt_txt, /*Function pointer to get glyph's data*/
|
||||||
.get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/
|
.get_glyph_bitmap = lv_font_get_bitmap_fmt_txt, /*Function pointer to get glyph's bitmap*/
|
||||||
.line_height = 20, /*The maximum line height required by the font*/
|
.line_height = 21, /*The maximum line height required by the font*/
|
||||||
.base_line = 4, /*Baseline measured from the bottom of the line*/
|
.base_line = 4, /*Baseline measured from the bottom of the line*/
|
||||||
#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0)
|
#if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0)
|
||||||
.subpx = LV_FONT_SUBPX_NONE,
|
.subpx = LV_FONT_SUBPX_NONE,
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
26814
components/domotic_display/fonts/super_malibu_80.c
Normal file
26814
components/domotic_display/fonts/super_malibu_80.c
Normal file
File diff suppressed because it is too large
Load Diff
22874
components/domotic_display/fonts/super_malibu_96.c
Normal file
22874
components/domotic_display/fonts/super_malibu_96.c
Normal file
File diff suppressed because it is too large
Load Diff
60223
components/domotic_display/fonts/vlump_96.c
Normal file
60223
components/domotic_display/fonts/vlump_96.c
Normal file
File diff suppressed because it is too large
Load Diff
110
components/domotic_display/fonts_symbols.cmake
Normal file
110
components/domotic_display/fonts_symbols.cmake
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
# Symboles perso
|
||||||
|
# --- Weather ---
|
||||||
|
set(MY_SYMBOL_CLOUD 0xf0c2) # cloud | UTF-8: "\xEF\x83\x82"
|
||||||
|
set(MY_SYMBOL_CLOUD_SUN 0xf575) # cloud-sun | UTF-8: "\xEF\x95\xB5"
|
||||||
|
|
||||||
|
# --- Navigation ---
|
||||||
|
set(MY_SYMBOL_UP 0xf077) # chevron-up | UTF-8: "\xEF\x81\xB7"
|
||||||
|
set(MY_SYMBOL_DOWN 0xf078) # chevron-down | UTF-8: "\xEF\x81\xB8"
|
||||||
|
|
||||||
|
# --- Sensors ---
|
||||||
|
set(MY_SYMBOL_THERMOMETER 0xf2ca) # thermometer | UTF-8: "\xEF\x89\xBA"
|
||||||
|
set(MY_SYMBOL_MESSAGE 0xf27a) # message | UTF-8: "\xEF\x89\xBA"
|
||||||
|
|
||||||
|
# --- Location / House ---
|
||||||
|
set(MY_THERMOMETER_IN_HOUSE 0xe1b0) # house-user | UTF-8: "\xEE\x86\xB0"
|
||||||
|
set(MY_THERMOMETER_OUT_HOUSE 0xe1b0) # house-user | UTF-8: "\xEE\x86\xB0"
|
||||||
|
|
||||||
|
|
||||||
|
# ======================================
|
||||||
|
# LVGL symbols (FontAwesome solid mapped)
|
||||||
|
# ======================================
|
||||||
|
|
||||||
|
# --- Base UI ---
|
||||||
|
set(LV_SYMBOL_OK 0xf00c) # check
|
||||||
|
set(LV_SYMBOL_CLOSE 0xf00d) # times
|
||||||
|
set(LV_SYMBOL_POWER 0xf011) # power-off
|
||||||
|
set(LV_SYMBOL_SETTINGS 0xf013) # gear
|
||||||
|
set(LV_SYMBOL_HOME 0xf015) # home
|
||||||
|
set(LV_SYMBOL_DOWNLOAD 0xf019) # download
|
||||||
|
set(LV_SYMBOL_REFRESH 0xf021) # refresh
|
||||||
|
set(LV_SYMBOL_LOCK 0xf023) # lock
|
||||||
|
set(LV_SYMBOL_WIFI 0xf1eb) # wifi
|
||||||
|
set(LV_SYMBOL_BELL 0xf0f3) # bell
|
||||||
|
set(LV_SYMBOL_BATTERY_FULL 0xf240) # battery-full
|
||||||
|
set(LV_SYMBOL_BATTERY_3 0xf241) # battery-3/4
|
||||||
|
set(LV_SYMBOL_BATTERY_2 0xf242) # battery-1/2
|
||||||
|
set(LV_SYMBOL_BATTERY_1 0xf243) # battery-1/4
|
||||||
|
set(LV_SYMBOL_BATTERY_EMPTY 0xf244) # battery-empty
|
||||||
|
|
||||||
|
# --- Navigation ---
|
||||||
|
set(LV_SYMBOL_LEFT 0xf060) # arrow-left
|
||||||
|
set(LV_SYMBOL_RIGHT 0xf061) # arrow-right
|
||||||
|
set(LV_SYMBOL_UP 0xf062) # arrow-up
|
||||||
|
set(LV_SYMBOL_DOWN 0xf063) # arrow-down
|
||||||
|
set(LV_SYMBOL_NEXT 0xf061) # alias RIGHT
|
||||||
|
set(LV_SYMBOL_PREV 0xf060) # alias LEFT
|
||||||
|
|
||||||
|
# --- Media / Actions ---
|
||||||
|
set(LV_SYMBOL_PLAY 0xf04b) # play
|
||||||
|
set(LV_SYMBOL_PAUSE 0xf04c) # pause
|
||||||
|
set(LV_SYMBOL_STOP 0xf04d) # stop
|
||||||
|
set(LV_SYMBOL_EJECT 0xf052) # eject
|
||||||
|
set(LV_SYMBOL_VOLUME_UP 0xf028)
|
||||||
|
set(LV_SYMBOL_VOLUME_DOWN 0xf027)
|
||||||
|
set(LV_SYMBOL_MUTE 0xf026)
|
||||||
|
|
||||||
|
# --- Information ---
|
||||||
|
set(LV_SYMBOL_EYE_OPEN 0xf06e)
|
||||||
|
set(LV_SYMBOL_EYE_CLOSE 0xf070)
|
||||||
|
set(LV_SYMBOL_WARNING 0xf071)
|
||||||
|
set(LV_SYMBOL_INFO 0xf05a)
|
||||||
|
set(LV_SYMBOL_QUESTION 0xf128)
|
||||||
|
|
||||||
|
# --- Time / Status ---
|
||||||
|
set(LV_SYMBOL_CLOCK 0xf017)
|
||||||
|
set(LV_SYMBOL_CALENDAR 0xf073)
|
||||||
|
|
||||||
|
# --- List of symbols used for font generation ---
|
||||||
|
set(LVGL_SYMBOLS_CLASSIQUES
|
||||||
|
${LV_SYMBOL_OK}
|
||||||
|
${LV_SYMBOL_CLOSE}
|
||||||
|
${LV_SYMBOL_POWER}
|
||||||
|
${LV_SYMBOL_SETTINGS}
|
||||||
|
${LV_SYMBOL_HOME}
|
||||||
|
${LV_SYMBOL_DOWNLOAD}
|
||||||
|
${LV_SYMBOL_REFRESH}
|
||||||
|
${LV_SYMBOL_LOCK}
|
||||||
|
${LV_SYMBOL_WIFI}
|
||||||
|
${LV_SYMBOL_BELL}
|
||||||
|
${LV_SYMBOL_BATTERY_FULL}
|
||||||
|
${LV_SYMBOL_BATTERY_3}
|
||||||
|
${LV_SYMBOL_BATTERY_2}
|
||||||
|
${LV_SYMBOL_BATTERY_1}
|
||||||
|
${LV_SYMBOL_BATTERY_EMPTY}
|
||||||
|
${LV_SYMBOL_LEFT}
|
||||||
|
${LV_SYMBOL_RIGHT}
|
||||||
|
${LV_SYMBOL_UP}
|
||||||
|
${LV_SYMBOL_DOWN}
|
||||||
|
${LV_SYMBOL_PLAY}
|
||||||
|
${LV_SYMBOL_PAUSE}
|
||||||
|
${LV_SYMBOL_STOP}
|
||||||
|
${LV_SYMBOL_VOLUME_UP}
|
||||||
|
${LV_SYMBOL_VOLUME_DOWN}
|
||||||
|
${LV_SYMBOL_MUTE}
|
||||||
|
${LV_SYMBOL_EYE_OPEN}
|
||||||
|
${LV_SYMBOL_EYE_CLOSE}
|
||||||
|
${LV_SYMBOL_WARNING}
|
||||||
|
${LV_SYMBOL_INFO}
|
||||||
|
${LV_SYMBOL_QUESTION}
|
||||||
|
${LV_SYMBOL_CLOCK}
|
||||||
|
${LV_SYMBOL_CALENDAR}
|
||||||
|
|
||||||
|
${MY_SYMBOL_CLOUD}
|
||||||
|
${MY_SYMBOL_CLOUD_SUN}
|
||||||
|
${MY_SYMBOL_UP}
|
||||||
|
${MY_SYMBOL_DOWN}
|
||||||
|
${MY_SYMBOL_THERMOMETER}
|
||||||
|
${MY_SYMBOL_MESSAGE}
|
||||||
|
${MY_THERMOMETER_IN_HOUSE}
|
||||||
|
)
|
||||||
@ -14,6 +14,9 @@ dependencies:
|
|||||||
# # `public` flag doesn't have an effect dependencies of the `main` component.
|
# # `public` flag doesn't have an effect dependencies of the `main` component.
|
||||||
# # All dependencies of `main` are public by default.
|
# # All dependencies of `main` are public by default.
|
||||||
# public: true
|
# public: true
|
||||||
espressif/esp_lvgl_port: ^2.7.0
|
espressif/esp_lvgl_port:
|
||||||
|
rules:
|
||||||
|
- if: target in ["esp32p4","esp32, "esp32s3"]
|
||||||
|
version: ^2.7.0
|
||||||
espressif/esp_lcd_qemu_rgb:
|
espressif/esp_lcd_qemu_rgb:
|
||||||
version: ^1
|
version: ^1
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,13 +1,17 @@
|
|||||||
|
#include "lvgl.h"
|
||||||
extern SemaphoreHandle_t lvgl_mux;
|
extern SemaphoreHandle_t lvgl_mux;
|
||||||
static const char* TAG_BSP="bsp";
|
static const char* TAG_BSP="bsp";
|
||||||
bool bsp_display_lock(int timeout_ms)
|
bool bsp_display_lock(int timeout_ms)
|
||||||
{
|
{
|
||||||
ESP_LOGI(TAG_BSP, "Obtention mutex");
|
//ESP_LOGI(TAG_BSP, "Obtention mutex");
|
||||||
// Convert timeout in milliseconds to FreeRTOS ticks
|
// Convert timeout in milliseconds to FreeRTOS ticks
|
||||||
// If `timeout_ms` is set to -1, the program will block until the condition is met
|
// If `timeout_ms` is set to -1, the program will block until the condition is met
|
||||||
const TickType_t timeout_ticks = (timeout_ms == -1) ? portMAX_DELAY : pdMS_TO_TICKS(timeout_ms);
|
//const TickType_t timeout_ticks = (timeout_ms == -1) ? portMAX_DELAY : pdMS_TO_TICKS(timeout_ms);
|
||||||
return xSemaphoreTakeRecursive(lvgl_mux, timeout_ticks) == pdTRUE;
|
//return xSemaphoreTakeRecursive(lvgl_mux, timeout_ticks) == pdTRUE;
|
||||||
|
lv_lock();
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
void bsp_display_unlock() {
|
void bsp_display_unlock() {
|
||||||
xSemaphoreGiveRecursive(lvgl_mux);
|
//xSemaphoreGiveRecursive(lvgl_mux);
|
||||||
|
lv_unlock();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -17,7 +17,8 @@ void meteo_obs_cb(lv_observer_t *observer, lv_subject_t *subject);
|
|||||||
void showMeteoIcon(const char *icon, lv_obj_t *desc_icon, int childNr);
|
void showMeteoIcon(const char *icon, lv_obj_t *desc_icon, int childNr);
|
||||||
|
|
||||||
void draw_tabVolets();
|
void draw_tabVolets();
|
||||||
void draw_ihm();
|
void meteoCb(lv_obj_t *base_obj);
|
||||||
|
void drawHome();
|
||||||
|
|
||||||
void create_card();
|
void create_card();
|
||||||
|
|
||||||
|
|||||||
@ -23,6 +23,9 @@ extern "C" {
|
|||||||
* TYPEDEFS
|
* TYPEDEFS
|
||||||
**********************/
|
**********************/
|
||||||
|
|
||||||
|
struct _domotic_theme_t;
|
||||||
|
typedef struct _domotic_theme_t domotic_theme_t;
|
||||||
|
|
||||||
/**********************
|
/**********************
|
||||||
* GLOBAL PROTOTYPES
|
* GLOBAL PROTOTYPES
|
||||||
**********************/
|
**********************/
|
||||||
|
|||||||
@ -1,13 +1,12 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include "lvgl.h"
|
#include "lvgl.h"
|
||||||
|
#include "RemindMe.h"
|
||||||
|
|
||||||
/* input subjects */
|
/* input subjects */
|
||||||
/* int: the hour shown on clocks, e.g. 9 */
|
extern lv_subject_t timeSubj;
|
||||||
extern lv_subject_t hourSubj;
|
|
||||||
/* int: the minute shown on clocks, e.g. 36 */
|
|
||||||
extern lv_subject_t minuteSubj;
|
|
||||||
extern lv_subject_t timeGroup;
|
|
||||||
|
|
||||||
extern lv_color_t base;
|
extern lv_color_t base;
|
||||||
extern lv_color_t accent;
|
extern lv_color_t accent;
|
||||||
extern lv_color_t bgColor;
|
extern lv_color_t bgColor;
|
||||||
|
|
||||||
|
extern RemindMeEvent *events;
|
||||||
|
|||||||
@ -9,18 +9,22 @@
|
|||||||
*********************/
|
*********************/
|
||||||
#if LV_USE_THEME_SIMPLE_DOMOTIC
|
#if LV_USE_THEME_SIMPLE_DOMOTIC
|
||||||
#include "lv_theme_domotic.h"
|
#include "lv_theme_domotic.h"
|
||||||
|
#include "lvgl_private.h"
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
/*********************
|
/*********************
|
||||||
* DEFINES
|
* DEFINES
|
||||||
*********************/
|
*********************/
|
||||||
LV_FONT_DECLARE(montserrat_medium_12)
|
LV_FONT_DECLARE(montserrat_medium_12)
|
||||||
LV_FONT_DECLARE(montserrat_medium_18)
|
LV_FONT_DECLARE(montserrat_medium_18)
|
||||||
LV_FONT_DECLARE(montserrat_medium_24)
|
LV_FONT_DECLARE(montserrat_medium_24)
|
||||||
|
LV_FONT_DECLARE(roboto_medium_72)
|
||||||
|
|
||||||
|
|
||||||
struct _my_theme_t;
|
void * theme_domotic;
|
||||||
typedef struct _my_theme_t my_theme_t;
|
|
||||||
|
|
||||||
#define theme_def (*(my_theme_t **)(&LV_GLOBAL_DEFAULT()->theme_simple))
|
#define theme_def (*(domotic_theme_t **)(&theme_domotic))
|
||||||
|
|
||||||
#define COLOR_SCR lv_palette_lighten(LV_PALETTE_GREY, 4)
|
#define COLOR_SCR lv_palette_lighten(LV_PALETTE_GREY, 4)
|
||||||
#define COLOR_WHITE lv_color_white()
|
#define COLOR_WHITE lv_color_white()
|
||||||
@ -40,6 +44,8 @@ typedef struct {
|
|||||||
lv_style_t dark;
|
lv_style_t dark;
|
||||||
lv_style_t dim;
|
lv_style_t dim;
|
||||||
lv_style_t scrollbar;
|
lv_style_t scrollbar;
|
||||||
|
lv_style_t btn;
|
||||||
|
lv_style_t card;
|
||||||
#if LV_USE_ARC
|
#if LV_USE_ARC
|
||||||
lv_style_t arc_line;
|
lv_style_t arc_line;
|
||||||
lv_style_t arc_knob;
|
lv_style_t arc_knob;
|
||||||
@ -49,9 +55,13 @@ typedef struct {
|
|||||||
#endif
|
#endif
|
||||||
} my_theme_styles_t;
|
} my_theme_styles_t;
|
||||||
|
|
||||||
struct _my_theme_t {
|
struct _domotic_theme_t {
|
||||||
lv_theme_t base;
|
lv_theme_t base;
|
||||||
my_theme_styles_t styles;
|
my_theme_styles_t styles;
|
||||||
|
lv_color_t color_scr;
|
||||||
|
lv_color_t color_text;
|
||||||
|
lv_color_t color_card;
|
||||||
|
lv_color_t color_grey;
|
||||||
bool inited;
|
bool inited;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -73,8 +83,52 @@ static void theme_apply(lv_theme_t * th, lv_obj_t * obj);
|
|||||||
* STATIC FUNCTIONS
|
* STATIC FUNCTIONS
|
||||||
**********************/
|
**********************/
|
||||||
|
|
||||||
static void style_init(my_theme_t * theme)
|
static void style_init(domotic_theme_t * theme)
|
||||||
{
|
{
|
||||||
|
theme->color_scr = lv_palette_lighten(LV_PALETTE_BLUE_GREY, 4);
|
||||||
|
theme->color_text = lv_palette_lighten(LV_PALETTE_BLUE_GREY, 4);
|
||||||
|
theme->color_card = lv_color_white();
|
||||||
|
theme->color_grey = lv_palette_lighten(LV_PALETTE_BLUE_GREY, 2);
|
||||||
|
|
||||||
|
style_init_reset(&theme->styles.scr);
|
||||||
|
lv_style_set_bg_opa(&theme->styles.scr, LV_OPA_COVER);
|
||||||
|
lv_style_set_bg_color(&theme->styles.scr, theme->color_scr);
|
||||||
|
lv_style_set_text_color(&theme->styles.scr, theme->color_text);
|
||||||
|
lv_style_set_text_font(&theme->styles.scr, theme->base.font_normal);
|
||||||
|
//lv_style_set_pad_row(&theme->styles.scr, PAD_SMALL);
|
||||||
|
//lv_style_set_pad_column(&theme->styles.scr, PAD_SMALL);
|
||||||
|
//lv_style_set_rotary_sensitivity(&theme->styles.scr, theme->disp_dpi / 4 * 256);
|
||||||
|
style_init_reset(&theme->styles.btn);
|
||||||
|
//lv_style_set_radius(&theme->styles.btn,LV_DPX_CALC(theme->disp_dpi, theme->disp_size == DISP_LARGE ? 16 : theme->disp_size == DISP_MEDIUM ? 12: 8));
|
||||||
|
lv_style_set_bg_opa(&theme->styles.btn, LV_OPA_COVER);
|
||||||
|
lv_style_set_bg_color(&theme->styles.btn, theme->color_grey);
|
||||||
|
/*if (!(theme->base.flags & MODE_DARK))
|
||||||
|
{
|
||||||
|
lv_style_set_shadow_color(&theme->styles.btn, lv_palette_main(LV_PALETTE_GREY));
|
||||||
|
lv_style_set_shadow_width(&theme->styles.btn, LV_DPX(3));
|
||||||
|
lv_style_set_shadow_opa(&theme->styles.btn, LV_OPA_50);
|
||||||
|
lv_style_set_shadow_offset_y(&theme->styles.btn, LV_DPX_CALC(theme->disp_dpi, LV_DPX(4)));
|
||||||
|
}*/
|
||||||
|
lv_style_set_text_color(&theme->styles.btn, theme->color_text);
|
||||||
|
//lv_style_set_pad_hor(&theme->styles.btn, PAD_DEF);
|
||||||
|
//lv_style_set_pad_ver(&theme->styles.btn, PAD_SMALL);
|
||||||
|
//lv_style_set_pad_column(&theme->styles.btn, LV_DPX_CALC(theme->disp_dpi, 5));
|
||||||
|
//lv_style_set_pad_row(&theme->styles.btn, LV_DPX_CALC(theme->disp_dpi, 5));
|
||||||
|
|
||||||
|
style_init_reset(&theme->styles.card);
|
||||||
|
//lv_style_set_radius(&theme->styles.card, RADIUS_DEFAULT);
|
||||||
|
lv_style_set_bg_opa(&theme->styles.card, 10);
|
||||||
|
lv_style_set_bg_color(&theme->styles.card, theme->color_card);
|
||||||
|
lv_style_set_border_color(&theme->styles.card, theme->color_grey);
|
||||||
|
//lv_style_set_border_width(&theme->styles.card, BORDER_WIDTH);
|
||||||
|
lv_style_set_border_post(&theme->styles.card, true);
|
||||||
|
lv_style_set_text_color(&theme->styles.card, theme->color_text);
|
||||||
|
lv_style_set_text_font(&theme->styles.card, theme->base.font_normal);
|
||||||
|
lv_style_set_pad_all(&theme->styles.card, 16);
|
||||||
|
lv_style_set_pad_row(&theme->styles.card, 10);
|
||||||
|
lv_style_set_pad_column(&theme->styles.card, 10);
|
||||||
|
lv_style_set_line_color(&theme->styles.card, lv_palette_main(LV_PALETTE_GREY));
|
||||||
|
//lv_style_set_line_width(&theme->styles.card, LV_DPX_CALC(theme->disp_dpi, 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**********************
|
/**********************
|
||||||
@ -83,7 +137,7 @@ static void style_init(my_theme_t * theme)
|
|||||||
|
|
||||||
bool lv_theme_domotic_is_inited(void)
|
bool lv_theme_domotic_is_inited(void)
|
||||||
{
|
{
|
||||||
my_theme_t * theme = theme_def;
|
domotic_theme_t * theme = theme_def;
|
||||||
if(theme == NULL) return false;
|
if(theme == NULL) return false;
|
||||||
return theme->inited;
|
return theme->inited;
|
||||||
}
|
}
|
||||||
@ -99,7 +153,7 @@ lv_theme_t * lv_theme_domotic_get(void)
|
|||||||
|
|
||||||
void lv_theme_domotic_deinit(void)
|
void lv_theme_domotic_deinit(void)
|
||||||
{
|
{
|
||||||
my_theme_t * theme = theme_def;
|
domotic_theme_t * theme = theme_def;
|
||||||
if(theme) {
|
if(theme) {
|
||||||
if(theme->inited) {
|
if(theme->inited) {
|
||||||
lv_style_t * theme_styles = (lv_style_t *)(&(theme->styles));
|
lv_style_t * theme_styles = (lv_style_t *)(&(theme->styles));
|
||||||
@ -119,10 +173,10 @@ lv_theme_t * lv_theme_domotic_init(lv_display_t * disp)
|
|||||||
*styles' data if LVGL is used in a binding (e.g. MicroPython)
|
*styles' data if LVGL is used in a binding (e.g. MicroPython)
|
||||||
*In a general case styles could be in simple `static lv_style_t my_style...` variables*/
|
*In a general case styles could be in simple `static lv_style_t my_style...` variables*/
|
||||||
if(!lv_theme_domotic_is_inited()) {
|
if(!lv_theme_domotic_is_inited()) {
|
||||||
theme_def = lv_malloc_zeroed(sizeof(my_theme_t));
|
theme_def = lv_malloc_zeroed(sizeof(domotic_theme_t));
|
||||||
}
|
}
|
||||||
|
|
||||||
my_theme_t * theme = theme_def;
|
domotic_theme_t * theme = theme_def;
|
||||||
|
|
||||||
theme->base.disp = disp;
|
theme->base.disp = disp;
|
||||||
theme->base.font_small = &montserrat_medium_12;
|
theme->base.font_small = &montserrat_medium_12;
|
||||||
@ -130,8 +184,8 @@ lv_theme_t * lv_theme_domotic_init(lv_display_t * disp)
|
|||||||
theme->base.font_large = &montserrat_medium_24;
|
theme->base.font_large = &montserrat_medium_24;
|
||||||
theme->base.apply_cb = theme_apply;
|
theme->base.apply_cb = theme_apply;
|
||||||
|
|
||||||
lv_theme_t * th_act = lv_display_get_theme(NULL);
|
lv_theme_t * th_simple = lv_theme_simple_init(disp);
|
||||||
lv_theme_set_parent((lv_theme_t *)theme, th_act);
|
lv_theme_set_parent((lv_theme_t *)theme, th_simple);
|
||||||
|
|
||||||
style_init(theme);
|
style_init(theme);
|
||||||
|
|
||||||
@ -148,7 +202,7 @@ static void theme_apply(lv_theme_t * th, lv_obj_t * obj)
|
|||||||
{
|
{
|
||||||
LV_UNUSED(th);
|
LV_UNUSED(th);
|
||||||
|
|
||||||
my_theme_t * theme = theme_def;
|
domotic_theme_t * theme = theme_def;
|
||||||
lv_obj_t * parent = lv_obj_get_parent(obj);
|
lv_obj_t * parent = lv_obj_get_parent(obj);
|
||||||
|
|
||||||
if(parent == NULL) {
|
if(parent == NULL) {
|
||||||
@ -157,6 +211,29 @@ static void theme_apply(lv_theme_t * th, lv_obj_t * obj)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// On ne passe pas par une variable KCONFIG pour ne pas avoir a recompiler
|
||||||
|
const char *borderEnv = getenv("DOM_SHOW_BORDER");
|
||||||
|
int border = atoi(borderEnv ? borderEnv : "0");
|
||||||
|
if(border)
|
||||||
|
lv_obj_set_style_border_width(obj,1,0);
|
||||||
|
|
||||||
|
if (lv_obj_check_type(obj, &lv_obj_class))
|
||||||
|
{
|
||||||
|
lv_obj_add_style(obj, &theme->styles.card, 0);
|
||||||
|
lv_obj_add_style(obj, &theme->styles.scrollbar, LV_PART_SCROLLBAR);
|
||||||
|
//lv_obj_add_style(obj, &theme->styles.scrollbar_scrolled, LV_PART_SCROLLBAR | LV_STATE_SCROLLED);
|
||||||
|
}
|
||||||
|
//lv_obj_set_style_text_color(obj, lv_color_white(), 0);
|
||||||
|
//lv_obj_set_style_text_font(obj, ((my_theme_t*)theme_domotic)->base.font_normal,0);
|
||||||
|
|
||||||
|
if (lv_obj_check_type(obj, &lv_button_class)){
|
||||||
|
lv_obj_add_style(obj, &theme->styles.btn,0);
|
||||||
|
lv_obj_set_style_text_color(obj, lv_color_black(), 0);
|
||||||
|
lv_obj_set_style_text_font(obj, theme->base.font_large, 0);
|
||||||
|
//lv_obj_set_style_bg_color(obj, lv_color_hex(0x6B6969), 0);
|
||||||
|
lv_obj_set_style_pad_all(obj,10,0);
|
||||||
|
lv_obj_set_style_margin_all(obj, 0, 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**********************
|
/**********************
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
#include "model.h"
|
#include "model.h"
|
||||||
lv_subject_t hourSubj;
|
lv_subject_t timeSubj;
|
||||||
/* int: the minute shown on clocks, e.g. 36 */
|
RemindMeEvent *events;
|
||||||
lv_subject_t minuteSubj;
|
|
||||||
lv_subject_t timeGroup;
|
|
||||||
|
|
||||||
//lv_color_t base = LV_COLOR_MAKE(126, 94, 133);
|
//lv_color_t base = LV_COLOR_MAKE(126, 94, 133);
|
||||||
//lv_color_t accent = LV_COLOR_MAKE(204, 16, 16);
|
//lv_color_t accent = LV_COLOR_MAKE(204, 16, 16);
|
||||||
|
|||||||
@ -10,6 +10,7 @@ list(APPEND EXTRA_COMPONENT_DIRS
|
|||||||
../../meteofrance
|
../../meteofrance
|
||||||
../../stateManagement
|
../../stateManagement
|
||||||
../../eventsManager
|
../../eventsManager
|
||||||
|
../../RemindMe
|
||||||
)
|
)
|
||||||
|
|
||||||
idf_build_set_property(COMPILE_DEFINITIONS "NO_DEBUG_STORAGE" APPEND)
|
idf_build_set_property(COMPILE_DEFINITIONS "NO_DEBUG_STORAGE" APPEND)
|
||||||
|
|||||||
14
components/domotic_display/test_host/data.json
Normal file
14
components/domotic_display/test_host/data.json
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"evenement": "Fête",
|
||||||
|
"affichage": "Noel est dans %d jour(s)",
|
||||||
|
"date": "2025-12-25",
|
||||||
|
"type": "remaining_days"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"evenement": "Ecole",
|
||||||
|
"affichage": "La rentrée est dans %d jour(s)",
|
||||||
|
"date": "2026-01-05",
|
||||||
|
"type": "remaining_days"
|
||||||
|
}
|
||||||
|
]
|
||||||
@ -11,7 +11,8 @@ dependencies:
|
|||||||
type: service
|
type: service
|
||||||
version: 9.4.0
|
version: 9.4.0
|
||||||
direct_dependencies:
|
direct_dependencies:
|
||||||
|
- idf
|
||||||
- lvgl/lvgl
|
- lvgl/lvgl
|
||||||
manifest_hash: b69f67d8253596e504fba179d3e69969cb4958216d37d471849a023add797535
|
manifest_hash: c3178a7d5dcb1c033d1e27022341dbe9157f2399224612db51cd652145d429de
|
||||||
target: linux
|
target: linux
|
||||||
version: 2.0.0
|
version: 2.0.0
|
||||||
|
|||||||
@ -2,6 +2,7 @@ set(LV_BUILD_USE_KCONFIG ON)
|
|||||||
idf_component_register(SRCS
|
idf_component_register(SRCS
|
||||||
"test_ihm.c"
|
"test_ihm.c"
|
||||||
"../../ihm.c"
|
"../../ihm.c"
|
||||||
|
"../../lv_theme_domotic.c"
|
||||||
"../../model.c"
|
"../../model.c"
|
||||||
"driver_backends.c"
|
"driver_backends.c"
|
||||||
"sdl.c"
|
"sdl.c"
|
||||||
@ -10,12 +11,15 @@ idf_component_register(SRCS
|
|||||||
"../../fonts/montserrat_medium_24.c"
|
"../../fonts/montserrat_medium_24.c"
|
||||||
"../../fonts/roboto_medium_36.c"
|
"../../fonts/roboto_medium_36.c"
|
||||||
"../../fonts/roboto_medium_72.c"
|
"../../fonts/roboto_medium_72.c"
|
||||||
|
"../../fonts/vlump_96.c"
|
||||||
|
"../../fonts/super_malibu_80.c"
|
||||||
"../../images/wifi_ko.c"
|
"../../images/wifi_ko.c"
|
||||||
"../../images/wifi_ok.c"
|
"../../images/wifi_ok.c"
|
||||||
INCLUDE_DIRS
|
INCLUDE_DIRS
|
||||||
"../../include"
|
"../../include"
|
||||||
|
"../mock"
|
||||||
WHOLE_ARCHIVE
|
WHOLE_ARCHIVE
|
||||||
REQUIRES lvgl meteofrance)
|
REQUIRES lvgl meteofrance RemindMe)
|
||||||
|
|
||||||
message("Including SDL2 support")
|
message("Including SDL2 support")
|
||||||
find_package(PkgConfig REQUIRED)
|
find_package(PkgConfig REQUIRED)
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
|
|
||||||
#define LV_USE_SDL 1
|
#define LV_USE_SDL 1
|
||||||
|
#define LV_FONT_DEFAULT &roboto_medium_36
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include "esp_wifi.h"
|
#include "esp_wifi.h"
|
||||||
@ -12,6 +13,7 @@
|
|||||||
#include "simulator_settings.h"
|
#include "simulator_settings.h"
|
||||||
#include "esp_log.h"
|
#include "esp_log.h"
|
||||||
#include "eventsManager.h"
|
#include "eventsManager.h"
|
||||||
|
#include "RemindMe.h"
|
||||||
|
|
||||||
esp_mqtt_client_handle_t client;
|
esp_mqtt_client_handle_t client;
|
||||||
SemaphoreHandle_t lvgl_mux;
|
SemaphoreHandle_t lvgl_mux;
|
||||||
@ -116,27 +118,6 @@ static void configure_simulator(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static void
|
|
||||||
clock_timer_cb(lv_timer_t *t)
|
|
||||||
{
|
|
||||||
/* slowly increment the time */
|
|
||||||
int32_t minutes = lv_subject_get_int(&minuteSubj);
|
|
||||||
minutes += 1;
|
|
||||||
if (minutes > 59)
|
|
||||||
{
|
|
||||||
minutes = 0;
|
|
||||||
int32_t hour = lv_subject_get_int(&hourSubj);
|
|
||||||
hour += 1;
|
|
||||||
if (hour > 12)
|
|
||||||
{
|
|
||||||
hour = 1;
|
|
||||||
}
|
|
||||||
lv_subject_set_int(&hourSubj, hour);
|
|
||||||
}
|
|
||||||
lv_subject_set_int(&minuteSubj, minutes);
|
|
||||||
}
|
|
||||||
|
|
||||||
int app_main(int argc, char *argv[])
|
int app_main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
/* code */
|
/* code */
|
||||||
@ -159,19 +140,33 @@ int app_main(int argc, char *argv[])
|
|||||||
lv_sdl_mousewheel_create();
|
lv_sdl_mousewheel_create();
|
||||||
lv_sdl_mousewheel_create();
|
lv_sdl_mousewheel_create();
|
||||||
|
|
||||||
size_t watermark = uxTaskGetStackHighWaterMark(NULL);
|
//size_t watermark = uxTaskGetStackHighWaterMark(NULL);
|
||||||
ESP_LOGI("STACK", "Remaining stack: %d bytes", watermark);
|
//ESP_LOGI("STACK", "Remaining stack: %d bytes", watermark);
|
||||||
|
|
||||||
lv_subject_init_int(&hourSubj, 9);
|
time_t now;
|
||||||
lv_subject_init_int(&minuteSubj, 36);
|
struct tm timeinfo;
|
||||||
lv_subject_t *grp[2] = {&hourSubj, &minuteSubj};
|
time(&now);
|
||||||
lv_subject_init_group(&timeGroup, grp,2);
|
localtime_r(&now, &timeinfo);
|
||||||
|
|
||||||
/*lv_timer_t *clock_timer = */lv_timer_create(clock_timer_cb, 1000, NULL);
|
lv_subject_init_pointer(&timeSubj, &timeinfo);
|
||||||
|
|
||||||
|
/*lv_timer_t *clock_timer = lv_timer_create(clock_timer_cb, 1000, NULL);*/
|
||||||
|
|
||||||
//draw_ihm();
|
//draw_ihm();
|
||||||
startEvtManager();
|
startEvtManager();
|
||||||
|
|
||||||
|
int count=0;
|
||||||
|
events=get_events(&count);
|
||||||
|
if (!events)
|
||||||
|
{
|
||||||
|
ESP_LOGE("test", "Aucun événement chargé");
|
||||||
|
return 0;
|
||||||
|
} // Parcourir tous les événements
|
||||||
|
for (int i = 0; i < count; i++)
|
||||||
|
{
|
||||||
|
ESP_LOGI("test", "%s", events[i].affichage);
|
||||||
|
}
|
||||||
|
|
||||||
xTaskCreate(drawIhm, "LVGL", 128 * 1024, getIHMQueueHandle(), 3, NULL);
|
xTaskCreate(drawIhm, "LVGL", 128 * 1024, getIHMQueueHandle(), 3, NULL);
|
||||||
send_event(EVT_WIFI_CONNECTED,NULL);
|
send_event(EVT_WIFI_CONNECTED,NULL);
|
||||||
meteodailyforecast_data dts = {
|
meteodailyforecast_data dts = {
|
||||||
@ -185,9 +180,13 @@ int app_main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
extern lv_subject_t forecastD1Subj;
|
extern lv_subject_t forecastD1Subj;
|
||||||
|
extern lv_subject_t forecastD2Subj;
|
||||||
|
extern lv_subject_t forecastD3Subj;
|
||||||
ESP_LOGI("test_ihm", "Setting forecastD1Subj");
|
ESP_LOGI("test_ihm", "Setting forecastD1Subj");
|
||||||
|
|
||||||
lv_subject_set_pointer(&forecastD1Subj, &dts);
|
lv_subject_set_pointer(&forecastD1Subj, &dts);
|
||||||
|
lv_subject_set_pointer(&forecastD2Subj, &dts);
|
||||||
|
lv_subject_set_pointer(&forecastD3Subj, &dts);
|
||||||
|
|
||||||
/* Enter the run loop of the selected backend */
|
/* Enter the run loop of the selected backend */
|
||||||
driver_backends_run_loop();
|
driver_backends_run_loop();
|
||||||
|
|||||||
@ -1,3 +1,3 @@
|
|||||||
idf_component_register(SRCS "eventsManager.c"
|
idf_component_register(SRCS "eventsManager.c" obtain_time.c
|
||||||
INCLUDE_DIRS "include"
|
INCLUDE_DIRS "include"
|
||||||
REQUIRES mqtt)
|
REQUIRES mqtt)
|
||||||
|
|||||||
@ -3,6 +3,8 @@
|
|||||||
#include "eventsManager.h"
|
#include "eventsManager.h"
|
||||||
#include "esp_log.h"
|
#include "esp_log.h"
|
||||||
#include "mqtt_client.h"
|
#include "mqtt_client.h"
|
||||||
|
#include "obtain_time.h"
|
||||||
|
#include <time.h>
|
||||||
|
|
||||||
EventGroupHandle_t domotic_event_group;
|
EventGroupHandle_t domotic_event_group;
|
||||||
QueueHandle_t ihm_queue;
|
QueueHandle_t ihm_queue;
|
||||||
@ -13,6 +15,14 @@ static const char *TAG = "evtMgr";
|
|||||||
void startEvtManager(){
|
void startEvtManager(){
|
||||||
domotic_event_group = xEventGroupCreate();
|
domotic_event_group = xEventGroupCreate();
|
||||||
ihm_queue = xQueueCreate(10,sizeof(xIHMEvent_t *));
|
ihm_queue = xQueueCreate(10,sizeof(xIHMEvent_t *));
|
||||||
|
|
||||||
|
/* Tache updateTime */
|
||||||
|
BaseType_t ret2 = xTaskCreate(&updateTime, "updateTimeTask", 3 * 1024, NULL, 5, NULL);
|
||||||
|
if (ret2 != pdPASS)
|
||||||
|
{
|
||||||
|
ESP_LOGE(TAG, "Impossiblke de creer la tache updateTimeTask %i", ret2);
|
||||||
|
}
|
||||||
|
/* Tache updateTime - FIN*/
|
||||||
}
|
}
|
||||||
|
|
||||||
QueueHandle_t getIHMQueueHandle(){
|
QueueHandle_t getIHMQueueHandle(){
|
||||||
@ -48,14 +58,23 @@ void send_event(domo_events evt, void* pDatas) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
case EVT_TIME_SETTED:
|
case EVT_TIME_SETTED:
|
||||||
const char *msg = (const char *)pDatas;
|
struct tm *msg = (struct tm *)pDatas;
|
||||||
char *msg_copy = malloc(strlen(msg) + 1);
|
struct tm *msg_copy = malloc(sizeof(struct tm));
|
||||||
if (!msg_copy) {
|
if (!msg_copy)
|
||||||
|
{
|
||||||
ESP_LOGE(TAG, "malloc failed for message string");
|
ESP_LOGE(TAG, "malloc failed for message string");
|
||||||
free(ihmEvt);
|
free(ihmEvt);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
strcpy(msg_copy, msg);
|
// Vérifier que msg n'est pas NULL avant de copier
|
||||||
|
if (msg == NULL)
|
||||||
|
{
|
||||||
|
fprintf(stderr, "msg est NULL !\n");
|
||||||
|
free(msg_copy);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
*msg_copy = *msg;
|
||||||
ihmEvt->eEventType = IHM_EVT_TIME_SETTED;
|
ihmEvt->eEventType = IHM_EVT_TIME_SETTED;
|
||||||
ihmEvt->pvData = msg_copy;
|
ihmEvt->pvData = msg_copy;
|
||||||
ihmEvt->bNeedToFreeData = true;
|
ihmEvt->bNeedToFreeData = true;
|
||||||
|
|||||||
@ -1,3 +1,4 @@
|
|||||||
|
#pragma once
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
#include "freertos/FreeRTOS.h"
|
#include "freertos/FreeRTOS.h"
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
#include "eventsManager.h"
|
||||||
void obtain_time();
|
void obtain_time();
|
||||||
void updateTime(void *pvParameter);
|
void updateTime(void *pvParameter);
|
||||||
|
|
||||||
@ -1,17 +1,38 @@
|
|||||||
#include "esp_log.h"
|
#include "esp_log.h"
|
||||||
|
#include "obtain_time.h"
|
||||||
|
#include <time.h>
|
||||||
|
#ifdef CONFIG_IDF_TARGET_LINUX
|
||||||
|
#else
|
||||||
#include "esp_netif_sntp.h"
|
#include "esp_netif_sntp.h"
|
||||||
#include "esp_sntp.h"
|
#include "esp_sntp.h"
|
||||||
#include "obtain_time.h"
|
#endif
|
||||||
#include "esp_lvgl_port.h"
|
|
||||||
#include "ihm.h"
|
|
||||||
#include "eventsManager.h"
|
|
||||||
|
|
||||||
static const char *TAG = "sntp";
|
static const char *TAG = "sntp";
|
||||||
extern lv_subject_t dateHeureSubj;
|
|
||||||
|
|
||||||
char *days[7]={"Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"};
|
char *days[7]={"Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"};
|
||||||
char *months[12]={"Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"};
|
char *months[12]={"Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"};
|
||||||
|
|
||||||
|
#ifdef CONFIG_IDF_TARGET_LINUX
|
||||||
|
void updateTime(void *pvParameter)
|
||||||
|
{
|
||||||
|
while (1)
|
||||||
|
{
|
||||||
|
char strftime_buf[64];
|
||||||
|
|
||||||
|
// Set timezone to Eastern Standard Time and print local time
|
||||||
|
time_t now;
|
||||||
|
struct tm timeinfo;
|
||||||
|
time(&now);
|
||||||
|
localtime_r(&now, &timeinfo);
|
||||||
|
// strftime(strftime_buf, sizeof(strftime_buf), "%c", &timeinfo);
|
||||||
|
sprintf(strftime_buf, "%s %d %s %02d:%02d", days[timeinfo.tm_wday], timeinfo.tm_mday, months[timeinfo.tm_mon], timeinfo.tm_hour, timeinfo.tm_min);
|
||||||
|
localtime_r(&now, &timeinfo);
|
||||||
|
ESP_LOGE(TAG, "%s", strftime_buf);
|
||||||
|
send_event(EVT_TIME_SETTED, &timeinfo);
|
||||||
|
vTaskDelay(10000 / portTICK_PERIOD_MS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
void time_sync_notification_cb(struct timeval *tv)
|
void time_sync_notification_cb(struct timeval *tv)
|
||||||
{
|
{
|
||||||
ESP_LOGI(TAG, "Notification of a time synchronization event");
|
ESP_LOGI(TAG, "Notification of a time synchronization event");
|
||||||
@ -22,36 +43,29 @@ void time_sync_notification_cb(struct timeval *tv)
|
|||||||
struct tm timeinfo;
|
struct tm timeinfo;
|
||||||
time(&now);
|
time(&now);
|
||||||
localtime_r(&now, &timeinfo);
|
localtime_r(&now, &timeinfo);
|
||||||
//strftime(strftime_buf, sizeof(strftime_buf), "%c", &timeinfo);
|
// strftime(strftime_buf, sizeof(strftime_buf), "%c", &timeinfo);
|
||||||
sprintf(strftime_buf, "%s %d %s %02d:%02d", days[timeinfo.tm_wday], timeinfo.tm_mday, months[timeinfo.tm_mon], timeinfo.tm_hour, timeinfo.tm_min);
|
sprintf(strftime_buf, "%s %d %s %02d:%02d", days[timeinfo.tm_wday], timeinfo.tm_mday, months[timeinfo.tm_mon], timeinfo.tm_hour, timeinfo.tm_min);
|
||||||
localtime_r(&now, &timeinfo);
|
localtime_r(&now, &timeinfo);
|
||||||
send_event(EVT_TIME_SETTED,&strftime_buf);
|
send_event(EVT_TIME_SETTED, &strftime_buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
void obtain_time()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void updateTime(void *pvParameter)
|
void updateTime(void *pvParameter)
|
||||||
{
|
{
|
||||||
|
|
||||||
// Waiting until either the connection is established (WIFI_CONNECTED_BIT) or connection failed for the maximum
|
// Waiting until either the connection is established (WIFI_CONNECTED_BIT) or connection failed for the maximum
|
||||||
// number of re-tries (WIFI_FAIL_BIT). The bits are set by event_handler() (see above)
|
// number of re-tries (WIFI_FAIL_BIT). The bits are set by event_handler() (see above)
|
||||||
EventBits_t bits = xEventGroupWaitBits(domotic_event_group,
|
EventBits_t bits = xEventGroupWaitBits(domotic_event_group,
|
||||||
WIFI_CONNECTED_BIT,
|
WIFI_CONNECTED_BIT,
|
||||||
pdFALSE,
|
pdFALSE,
|
||||||
pdFALSE,
|
pdFALSE,
|
||||||
portMAX_DELAY);
|
portMAX_DELAY);
|
||||||
if (bits & WIFI_CONNECTED_BIT)
|
if (bits & WIFI_CONNECTED_BIT)
|
||||||
{
|
{
|
||||||
ESP_LOGI(TAG, "Initializing and starting SNTP");
|
ESP_LOGI(TAG, "Initializing and starting SNTP");
|
||||||
esp_sntp_config_t config = ESP_NETIF_SNTP_DEFAULT_CONFIG("pool.ntp.org");
|
esp_sntp_config_t config = ESP_NETIF_SNTP_DEFAULT_CONFIG("pool.ntp.org");
|
||||||
config.sync_cb = time_sync_notification_cb; // Note: This is only needed if we want
|
config.sync_cb = time_sync_notification_cb; // Note: This is only needed if we want
|
||||||
esp_netif_sntp_init(&config);
|
esp_netif_sntp_init(&config);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
char strftime_buf[64];
|
char strftime_buf[64];
|
||||||
time_t now = 0;
|
time_t now = 0;
|
||||||
@ -62,8 +76,9 @@ void updateTime(void *pvParameter)
|
|||||||
tzset();
|
tzset();
|
||||||
struct tm timeinfo = {0};
|
struct tm timeinfo = {0};
|
||||||
localtime_r(&now, &timeinfo);
|
localtime_r(&now, &timeinfo);
|
||||||
sprintf(strftime_buf, "%s %d %s %02d:%02d (%lli mn depuis reboot)", days[timeinfo.tm_wday], timeinfo.tm_mday, months[timeinfo.tm_mon], timeinfo.tm_hour, timeinfo.tm_min, (esp_timer_get_time()/1000/1000/60));
|
sprintf(strftime_buf, "%s %d %s %02d:%02d (%lli mn depuis reboot)", days[timeinfo.tm_wday], timeinfo.tm_mday, months[timeinfo.tm_mon], timeinfo.tm_hour, timeinfo.tm_min, (esp_timer_get_time() / 1000 / 1000 / 60));
|
||||||
send_event(EVT_TIME_SETTED,&strftime_buf);
|
send_event(EVT_TIME_SETTED, &strftime_buf);
|
||||||
vTaskDelay(60000 / portTICK_PERIOD_MS);
|
vTaskDelay(60000 / portTICK_PERIOD_MS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
@ -28,17 +28,16 @@ dependencies:
|
|||||||
type: idf
|
type: idf
|
||||||
version: 5.5.1
|
version: 5.5.1
|
||||||
lvgl/lvgl:
|
lvgl/lvgl:
|
||||||
component_hash: 17e68bfd21f0edf4c3ee838e2273da840bf3930e5dbc3bfa6c1190c3aed41f9f
|
|
||||||
dependencies: []
|
dependencies: []
|
||||||
source:
|
source:
|
||||||
registry_url: https://components.espressif.com/
|
path: /home/marc/domotic/components/lvgl__lvgl
|
||||||
type: service
|
type: local
|
||||||
version: 9.4.0
|
version: 9.4.0
|
||||||
direct_dependencies:
|
direct_dependencies:
|
||||||
- espressif/esp_lcd_qemu_rgb
|
- espressif/esp_lcd_qemu_rgb
|
||||||
- espressif/esp_lvgl_port
|
- espressif/esp_lvgl_port
|
||||||
- idf
|
- idf
|
||||||
- lvgl/lvgl
|
- lvgl/lvgl
|
||||||
manifest_hash: 4a989d30745f733fc51683ed96b30ee3e7197a9e4e574ab641985cab5013c2be
|
manifest_hash: 6dfd2d16dd4d21f701b251046402dbd6cb442f0c69beab0ba9af1b2ef32c7367
|
||||||
target: esp32s3
|
target: esp32s3
|
||||||
version: 2.0.0
|
version: 2.0.0
|
||||||
|
|||||||
@ -1006,13 +1006,6 @@ void app_main(void)
|
|||||||
ESP_LOGE(TAG, "Impossiblke de creer la tache imageDownload_task %i", ret1);
|
ESP_LOGE(TAG, "Impossiblke de creer la tache imageDownload_task %i", ret1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Tache updateTime */
|
|
||||||
BaseType_t ret2 = xTaskCreate(&updateTime, "updateTimeTask", 3 * 1024, NULL, 5, NULL);
|
|
||||||
if (ret2 != pdPASS)
|
|
||||||
{
|
|
||||||
ESP_LOGE(TAG, "Impossiblke de creer la tache updateTimeTask %i", ret2);
|
|
||||||
}
|
|
||||||
/* Tache updateTime - FIN*/
|
|
||||||
|
|
||||||
mqtt_app_start(mqtt_cb, domotic_event_group);
|
mqtt_app_start(mqtt_cb, domotic_event_group);
|
||||||
|
|
||||||
|
|||||||
@ -36,6 +36,10 @@ CONFIG_LV_USE_CLIB_STRING=y
|
|||||||
CONFIG_LV_USE_CLIB_SPRINTF=y
|
CONFIG_LV_USE_CLIB_SPRINTF=y
|
||||||
CONFIG_LV_DEF_REFR_PERIOD=10
|
CONFIG_LV_DEF_REFR_PERIOD=10
|
||||||
CONFIG_LV_USE_DRAW_SW_COMPLEX_GRADIENTS=y
|
CONFIG_LV_USE_DRAW_SW_COMPLEX_GRADIENTS=y
|
||||||
|
CONFIG_LV_USE_OBJ_ID=y
|
||||||
|
CONFIG_LV_USE_OBJ_NAME=y
|
||||||
|
CONFIG_LV_OBJ_ID_AUTO_ASSIGN=y
|
||||||
|
|
||||||
CONFIG_LV_USE_LOG=y
|
CONFIG_LV_USE_LOG=y
|
||||||
CONFIG_LV_LOG_PRINTF=y
|
CONFIG_LV_LOG_PRINTF=y
|
||||||
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
|
CONFIG_LV_ATTRIBUTE_FAST_MEM_USE_IRAM=y
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user