Files
spdis 06bb64ad26 feat: 斑马线停车LCD图片提示 + 冷却期bang-bang转向
- 斑马线Z_STOP期间LCD显示pedestrian_stop.png图片,不受showImg控制
- 进入/离开Z_STOP时清屏,仅状态切换时操作LCD,无每帧开销
- Z_COOLDOWN 3.3~5s内:一次方向锁定打满机会(偏差出现->打满->方向翻转/回正即退出)
- Z_COOLDOWN 3.3~5s降速上限13,foresee缩短至24
- 程序退出前自动清屏
- CMake: OpenCV_DIR改为本地交叉编译4.13.0路径
- 主程序改名为smartcar_test
2026-07-04 20:42:47 +08:00

48 lines
1.6 KiB
CMake

# 包含交叉编译工具链
include(cross.cmake)
# 设置CMake的最低版本要求
cmake_minimum_required(VERSION 3.5.0)
# 设置 C++ 标准
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -pthread -Wall -march=loongarch64 -mtune=loongarch64 -ffast-math -funroll-loops -fomit-frame-pointer")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-rpath,/home/root/opencv/lib -Wl,--disable-new-dtags")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -Wall")
# 定义项目名称和版本
project(smartcar_demo2 VERSION 0.1.0 LANGUAGES C CXX)
# OpenCV 设备端路径
set(OpenCV_DIR /home/spdis/loongson/opencv-4.13.0/loongson/lib/cmake/opencv4)
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
message(STATUS "OpenCV Include Directories: ${OpenCV_INCLUDE_DIRS}")
# 项目头文件路径
include_directories(src)
include_directories(lib)
include_directories(lib/vl53l0x)
# 收集 src 下所有 .cpp (自动发现)
aux_source_directory(src DIR_SRCS)
# 排除暂不使用的模块(源文件保留)
# vl53l0x.cpp — 激光测距, 硬件未接
# zebra_detect.cpp — 经典斑马线检测, 已被 Mild 模型替代
# PIDController.cpp — PID 类未使用 (电机开环直驱)
# serial.cpp — Vofa/串口图传未使用
list(FILTER DIR_SRCS EXCLUDE REGEX "(zebra_detect\\.cpp|PIDController\\.cpp|serial\\.cpp)")
# VL53L0X ST API 源码 (纯 C)
set(VL53L0X_API_SRCS
lib/vl53l0x/vl53l0x_api.c
lib/vl53l0x/vl53l0x_api_core.c
lib/vl53l0x/vl53l0x_api_calibration.c
lib/vl53l0x/vl53l0x_api_ranging.c
)
# 静态库 + 主程序
add_library(common_lib STATIC ${DIR_SRCS} ${VL53L0X_API_SRCS})
add_subdirectory(main)