zubax_gnss简介
参考:https://docs.zubax.com/zubax_gnss
目录结构
bootloader:主要功能是升级application、加载application和初始化application需要的一些参数
firmware:采集气压计和gnss等传感器的信息,通过uavcan接口提供can信息采集
bootloader状态机
bootloader
libcanard:CAN总线安全工具,用于CAN升级application使用
src:bootloader关键处理代码
zubax_chibios:与chibios操作系统相关
ld.ld:flash分区信息
调试阶段,如果DEBUG编译,可能会报代码段溢出。如果修改代码段长度,Makefile中也要对应修改,不然程序找不到正确flash信息
bootloader\src
board:与芯片类型相关。初始化时钟、GPIO和GPIO重映射等
os_config:与芯片类型相关。管脚、时钟、外设的使能和参数配置
cli:命令行
uavcan:can封装
src目录下的东西就是移植的时候需要修改的,修改board初始化函数和os_config中各种配置文件与自己的板子适配
zubax_gnss移植:
http://blog.csdn.net/zhangxuechao_/article/details/78446800
适配文件
适配的文件在目录下也可以找到,大神的代码中已经支持很多芯片,但是不是一点问题没有,可能还需要自己做一些修改才能编译过
尤其要注意外部高速时钟是不是配置正确,不然各种外设都会出问题。比如串口打印乱码
与芯片适配的os_config中的board.h配置文件
os_config中的其他三个配置文件。这也是测试chibios系统是否可用的第一个demo
hal库测试
在测试chibios系统之前,也可以先测试各种外设是否工作正常
zubax_chibios
源码中,默认只支持这三类芯片。如果还不能满足,需要自行添加rules_x.mk
#
# Copyright (c) 2014 Zubax, zubax.com
# Distributed under the MIT License, available in the file LICENSE.
# Author: Pavel Kirienko <pavel.kirienko@zubax.com>
#
ZUBAX_CHIBIOS_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
CPPSRC += $(ZUBAX_CHIBIOS_DIR)/zubax_chibios/platform/stm32/sys_stm32.cpp \
$(ZUBAX_CHIBIOS_DIR)/zubax_chibios/platform/stm32/watchdog_stm32.cpp \
CHIBIOS := $(ZUBAX_CHIBIOS_DIR)/chibios
include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/startup_stm32f1xx.mk //修改重点
include $(CHIBIOS)/os/hal/ports/STM32/STM32F1xx/platform_f105_f107.mk //修改重点
include $(CHIBIOS)/os/rt/ports/ARMCMx/compilers/GCC/mk/port_v7m.mk
LDSCRIPT ?= $(PORTLD)/STM32F107xC.ld //修改重点
MCU = cortex-m3 //修改重点
include $(ZUBAX_CHIBIOS_DIR)/_rules_armcm.mk
最新文章
- DayPilot 7.8 DLL去DEMO字样下载
- cosbench read异常解决办法。 Unable to verify integrity of data download. Client calculated content hash didn&#39;t match hash calculated by Amazon S3. The data may be corrupt.
- 用python语言讲解数据结构与算法
- 使用JNDI或JDBC连接数据库
- log4net资料收集
- Replace JSON.NET with ServiceStack.Text in ASP.NET Web API
- js dom 操作
- Apache+lvs高可用+keepalive(主从+双主模型)
- Linux 循环设备 /dev/loop 解惑
- 智能路由——ESB
- canvas基础—图形变换
- C#核心基础--类的声明
- Azure系列2.1.9 —— CloudBlob
- 如何在debug vue-cli建立的项目
- rabbitmq安装与高可用集群配置
- ASP.NET MVC + EF 更新的几种方式
- centos6.5(64bit),python2.6.6安装MySQLdb模块
- Redis Server installation FAQs
- 记一次cocos项目的加载速度优化
- 【技术开放日】msup携手HPE揭秘全球测试中心背后的12条技术实践
热门文章
- 文献阅读 | A single-cell molecular map of mouse gastrulation and early organogenesis
- curl保留cookie
- [转]Maven 国内源配置(2019/2/14)
- EFProf用法
- python提取mysql中指定列参数,并循环打印
- windows下根据tcp端口查询对应的进程id(端口被占用)
- 基于thrift的node.js rpc服务
- C#不区分大小写的字符串替换(Replace)函数
- 在webstorm里使用git
- bootstrap.min.css.map作用