Files
agv-control-slam/QUICK_REFERENCE.md
CaiXiang af65c2425d initial
2025-11-14 16:09:58 +08:00

4.3 KiB

快速参考 - 整理后的项目结构

📂 目录说明

源代码 (src/)

src/
├── can/                          # CAN 通信模块
│   ├── CANController.h          # CAN 控制器头文件
│   ├── CANController.cpp        # CAN 控制器实现
│   ├── can_example.cpp          # 基础示例
│   └── can_complete_example.cpp # 完整示例(推荐)
│
├── tests/                        # 测试代码
│   └── test_csv_load.cpp        # CSV 加载测试
│
└── (其他源文件)                  # AGV 主程序源文件

头文件 (include/)

include/
└── can/
    └── CANController.h          # CAN 控制器头文件

文档 (docs/)

docs/
├── can/                         # CAN 相关文档
│   ├── CAN_README.md           # CAN 使用说明(重要)
│   └── CAN_API_Reference.cpp   # API 快速参考
│
├── guides/                      # 使用指南
│   ├── START_HERE.txt          # 从这里开始
│   ├── QUICK_START.md          # 快速入门
│   ├── BUILD_INSTRUCTIONS.md   # 编译说明
│   └── ...
│
├── fixes/                       # 修复记录
│   ├── ALL_FIXES_SUMMARY.md    # 所有修复总结
│   ├── FINAL_REPORT.md         # 最终报告
│   └── ...
│
├── custom_path/                 # 自定义路径文档
└── protocol/                    # 协议文档
    └── CAN_Protocol.pdf        # CAN 协议规范

库文件 (lib/)

lib/
├── ControlCAN.h                 # CAN API 头文件
├── ControlCAN.dll               # CAN 驱动动态库
├── ControlCAN.lib               # 导入库
└── README.md                    # 库说明

🚀 常用操作

编译 CAN 示例

# Windows
build_can.bat

# Linux/MSYS2
./build_can.sh

运行 CAN 示例

cd build
./can_demo.exe

编译主程序

./build.sh

📖 重要文档路径

文档 路径 说明
项目结构 PROJECT_STRUCTURE.md 完整项目结构文档
CAN 使用说明 docs/can/CAN_README.md CAN 通信详细说明
CAN API 参考 docs/can/CAN_API_Reference.cpp API 快速参考卡片
快速开始 docs/guides/START_HERE.txt 新手入门指南
编译说明 docs/guides/BUILD_INSTRUCTIONS.md 编译步骤
修复总结 docs/fixes/ALL_FIXES_SUMMARY.md 所有修复记录
主 README README.md 项目主文档

🔧 开发流程

1. 添加新的 CAN 功能

# 1. 创建源文件
vi src/can/my_feature.cpp

# 2. 创建头文件
vi include/can/my_feature.h

# 3. 更新编译脚本
vi build_can.sh

# 4. 添加文档
vi docs/can/my_feature.md

2. 头文件引用

在源文件中引用头文件:

// 在 src/can/ 下的源文件
#include "can/CANController.h"      // 引用 include/can/CANController.h
#include "../../lib/ControlCAN.h"   // 引用 lib/ControlCAN.h

3. 编译选项

# 编译时指定 include 路径
g++ -c src/can/CANController.cpp -o build/CANController.o -Iinclude -Llib -lControlCAN

📝 文件移动记录

已整理的文件

移动到 docs/can/

  • CAN_README.md
  • CAN_API_Reference.cpp

移动到 docs/guides/

  • QUICK_START.md
  • QUICKSTART.md
  • BUILD_INSTRUCTIONS.md
  • CUSTOM_PATH_README.md
  • SMOOTH_PATH_GENERATOR_README.md
  • TRACKING_TEST_GUIDE.md
  • START_HERE.txt

移动到 docs/fixes/

  • ALL_FIXES_SUMMARY.md
  • BUG_FIXES_SUMMARY.md
  • CSV_LOAD_FIX.md
  • FIX_SUMMARY.md
  • README_FIXES.md
  • TRACKING_ERROR_ANALYSIS.md
  • TRACKING_FIX_COMPLETE.md
  • TRAJECTORY_COMPLETE.md
  • TRAJECTORY_FIX.md
  • FINAL_REPORT.md

移动到 src/can/

  • CANController.cpp
  • CANController.h
  • can_example.cpp
  • can_complete_example.cpp

移动到 src/tests/

  • test_csv_load.cpp

复制到 include/can/

  • CANController.h

🎯 下一步建议

  1. 查看 PROJECT_STRUCTURE.md 了解完整结构
  2. 阅读 docs/can/CAN_README.md 学习 CAN 通信
  3. 运行 build_can.bat 编译示例
  4. 执行 build/can_demo.exe 测试功能
  5. 根据需要查看 docs/guides/ 中的其他文档

整理完成时间: 2025-11-14 整理内容: 所有文档归类到 docs/,所有代码归类到 src/,头文件复制到 include/