fix: boost改为固定26 + 删除死代码
- motor_update: boost从乘法改为固定值26 - 删除废弃的font_bitmap.h中文渲染代码(已改用PNG) - 移除无源码的lcd_test编译目标 - 设备speed=20
This commit is contained in:
@@ -7,6 +7,3 @@ target_link_libraries(lidar_test common_lib)
|
|||||||
|
|
||||||
add_executable(remote_control remote_control.cpp)
|
add_executable(remote_control remote_control.cpp)
|
||||||
target_link_libraries(remote_control common_lib)
|
target_link_libraries(remote_control common_lib)
|
||||||
|
|
||||||
add_executable(lcd_test lcd_test.cpp)
|
|
||||||
target_link_libraries(lcd_test common_lib ${OpenCV_LIBS})
|
|
||||||
+1
-72
@@ -25,7 +25,6 @@
|
|||||||
#include "camera.h"
|
#include "camera.h"
|
||||||
#include "model_v10.hpp"
|
#include "model_v10.hpp"
|
||||||
#include "vl53l0x.h"
|
#include "vl53l0x.h"
|
||||||
#include "font_bitmap.h"
|
|
||||||
|
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
@@ -218,76 +217,6 @@ static void play_zebra_audio()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// ═══════════════════════════════════════════════════════════
|
|
||||||
// LCD 中文文字渲染
|
|
||||||
//
|
|
||||||
// 使用 src/font_bitmap.h 中嵌入的 16x16 字模
|
|
||||||
// ═══════════════════════════════════════════════════════════
|
|
||||||
static const uint8_t* find_glyph(uint32_t codepoint)
|
|
||||||
{
|
|
||||||
for (int i = 0; i < FONT_GLYPH_COUNT; ++i)
|
|
||||||
if (FONT_GLYPHS[i].unicode == codepoint) return FONT_GLYPHS[i].bitmap;
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
static uint32_t utf8_decode(const char*& p)
|
|
||||||
{
|
|
||||||
unsigned char c = static_cast<unsigned char>(*p);
|
|
||||||
if (c == 0) return 0;
|
|
||||||
if ((c & 0x80) == 0) { ++p; return c; }
|
|
||||||
if ((c & 0xE0) == 0xC0) {
|
|
||||||
uint32_t v = c & 0x1F; ++p;
|
|
||||||
v = (v << 6) | (static_cast<unsigned char>(*p++) & 0x3F);
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
if ((c & 0xF0) == 0xE0) {
|
|
||||||
uint32_t v = c & 0x0F; ++p;
|
|
||||||
v = (v << 6) | (static_cast<unsigned char>(*p++) & 0x3F);
|
|
||||||
v = (v << 6) | (static_cast<unsigned char>(*p++) & 0x3F);
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
if ((c & 0xF8) == 0xF0) {
|
|
||||||
uint32_t v = c & 0x07; ++p;
|
|
||||||
v = (v << 6) | (static_cast<unsigned char>(*p++) & 0x3F);
|
|
||||||
v = (v << 6) | (static_cast<unsigned char>(*p++) & 0x3F);
|
|
||||||
v = (v << 6) | (static_cast<unsigned char>(*p++) & 0x3F);
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
++p;
|
|
||||||
return '?';
|
|
||||||
}
|
|
||||||
|
|
||||||
static void lcd_draw_glyph(cv::Mat& img, int x0, int y0, const uint8_t* glyph, const cv::Scalar& color)
|
|
||||||
{
|
|
||||||
for (int row = 0; row < FONT_SIZE; ++row) {
|
|
||||||
for (int col = 0; col < FONT_SIZE; ++col) {
|
|
||||||
if (glyph[row * FONT_SIZE + col] > 128) {
|
|
||||||
int px = x0 + col;
|
|
||||||
int py = y0 + row;
|
|
||||||
if (px >= 0 && px < img.cols && py >= 0 && py < img.rows)
|
|
||||||
img.at<cv::Vec3b>(py, px) = cv::Vec3b(static_cast<uchar>(color[0]),
|
|
||||||
static_cast<uchar>(color[1]),
|
|
||||||
static_cast<uchar>(color[2]));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void lcd_draw_chinese_text(cv::Mat& img, const char* text, int x, int y, const cv::Scalar& color)
|
|
||||||
{
|
|
||||||
const char* p = text;
|
|
||||||
int cx = x;
|
|
||||||
while (*p) {
|
|
||||||
uint32_t cp = utf8_decode(p);
|
|
||||||
const uint8_t* glyph = find_glyph(cp);
|
|
||||||
if (glyph) {
|
|
||||||
lcd_draw_glyph(img, cx, y, glyph, color);
|
|
||||||
cx += FONT_SIZE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ═══════════════════════════════════════════════════════════
|
// ═══════════════════════════════════════════════════════════
|
||||||
// CameraInit — 系统初始化
|
// CameraInit — 系统初始化
|
||||||
//
|
//
|
||||||
@@ -1102,7 +1031,7 @@ static void motor_update(bool zebra_block, bool tl_block)
|
|||||||
prev_zstate = g_zstate;
|
prev_zstate = g_zstate;
|
||||||
prev_tlstate = g_tl_state;
|
prev_tlstate = g_tl_state;
|
||||||
|
|
||||||
double spd = target_speed * boost_factor();
|
double spd = (boost_factor() > 1.0) ? 26.0 : target_speed;
|
||||||
|
|
||||||
// 斑马线起步后 3.3~5s 降速走稳
|
// 斑马线起步后 3.3~5s 降速走稳
|
||||||
if (g_zstate == Z_COOLDOWN) {
|
if (g_zstate == Z_COOLDOWN) {
|
||||||
|
|||||||
Reference in New Issue
Block a user