Visual C++开发MMA7455加速计单片机应用

版权申诉
0 下载量 120 浏览量 更新于2024-12-08 收藏 1KB RAR 举报
资源摘要信息:"Acelerometro.rar_单片机开发_Visual C++" 知识点: 1. 单片机开发:单片机是一种集成电路芯片,它具有中央处理单元、存储器、输入/输出设备和各种外围设备,是一种功能完善的微型计算机系统。单片机开发是指使用特定的编程语言和开发工具,对单片机进行编程,以实现特定的功能。 2. Visual C++:Visual C++是微软公司推出的一款C++开发环境,支持Windows应用程序开发。Visual C++拥有强大的开发工具,如调试器、编译器、链接器等,是进行单片机开发的重要工具。 3. Acelerometro:在西班牙语中,“Acelerometro”意为“加速度计”。加速度计是一种测量物体运动加速度的传感器,广泛应用于汽车、航空航天、机器人等领域。 4. mma7455:mma7455是Freescale公司生产的一款数字输出型加速度传感器。该传感器具有±1.5g/±2g/±4g/±8g的可选量程,具有数字I2C和SPI输出接口,支持睡眠模式和运动检测功能,是单片机开发中常用的加速度传感器。 5. Acelerometro.asm:这是一个汇编语言编写的文件,用于描述加速度计的硬件操作。在单片机开发中,汇编语言是与硬件接口最为紧密的编程语言,可以实现对硬件的精确控制。 6. guolsd.txt:这可能是一个文本文件,其中包含了“guolsd”这个项目的开发说明或开发过程。文件的内容可能涉及到单片机开发的各个方面,如硬件设计、软件编程、调试过程等。 以上知识点涵盖了文件标题、描述、标签及文件名称列表中的主要内容,希望对你有所帮助。

#include "prepare_ogm.hpp" namespace senior { namespace guardian { namespace prepare { std::string PrepareOgm::Name() { return "Prepare Ogm Element"; } void PrepareOgm::Initiate() {} void PrepareOgm::Process(data::DataFrame& his, data::DataFrame& cur) { if (cur.source_ogm_points_.is_invalid()) return; if (cur.source_visual_ogm_points_.is_valid()) { cur.source_ogm_points_.insert(cur.source_ogm_points_.end(), cur.source_visual_ogm_points_.begin(), cur.source_visual_ogm_points_.end()); } if (cur.source_higher_ogm_points_.is_valid()) { cur.source_ogm_points_.insert(cur.source_ogm_points_.end(), cur.source_higher_ogm_points_.begin(), cur.source_higher_ogm_points_.end()); } auto& predict_path = cur.monitor_data_.mutable_predict_path(); predict_path.GenerateBoundary(cur); cur.AABox2d_ = predict_path.vehicle_AABox2d_; // if (!his.monitor_data_.is_need_to_take_over()) { // LOG(INFO)<<"1"; cur.AABox2d_.SetWidth(cur.AABox2d_.width() + 1.0); cur.AABox2d_.SetLength(cur.AABox2d_.length() + 1.0); // } std::vector<math::Vec2d> corner_points_; cur.AABox2d_.GetAllCorners(&corner_points_); auto& polygon2d = predict_path.tractor_polygon2d_; math::Vec2d temp; VoxelGrid filter_; common::Time now = common::Time::Now(); for (auto& point : cur.source_ogm_points_) { temp.set_x(point.x()); temp.set_y(-point.y()); if (cur.AABox2d_.IsPointIn(temp)) { cur.AABB_ogm_points_.emplace_back(point); } } cur.guardian_diagnose_["Prepare_PrepareOgm_AABox_filter"] = std::to_string((common::Time::Now() - now).ToSecond() * 1000); now = common::Time::Now(); filter_.VoxelGrid_ApplyFilter( cur.AABB_ogm_points_, cur.ogm_points_, corner_points_, 0.1, 0.1, 0); cur.guardian_diagnose_["Prepare_PrepareOgm_VoxelGrid_ApplyFilter"] = std::to_string((common::Time::Now() - now).ToSecond() * 1000); cur.ogm_points_.set_stamp(cur.source_ogm_points_.stamp()); cur.ogm_points_.set_time(cur.source_ogm_points_.time()); cur.ogm_points_.set_delay_time(cur.source_ogm_points_.delay_time()); cur.ogm_points_.set_valid(); } } // namespace prepare } // namespace guardian } // namespace senior 改变为C语言程序

2023-06-13 上传
pudn01
  • 粉丝: 50
  • 资源: 4万+
上传资源 快速赚钱