uavcan c语言协议栈,编译
1、网址代码
https://github.com/UAVCAN/libcanard.git
2、克隆软禁
git clone https://github.com/UAVCAN/libcanard.git
3、安装python3的 uavcan库
pip install uavcan
4、要从git获取libcanard,请确保也获取所有子模块。
git submodule update --init --recursive
5、编译dsdl。生成c代码
1、进入 libcanard/dsdl_compiler 目录 2、利用libcanard_dsdlc 编译器编译 配置文件,自动生成c代码 3、python3 ./libcanard_dsdlc <dsdl定义目录> 4、注意:libcanard_dsdlc 这个编译器在 libcanard/dsdl_compiler 目录 5、例如编译 ./pyuavcan/uavcan/dsdl_files/uavcan 这个配置文件 python3 ./libcanard_dsdlc ./pyuavcan/uavcan/dsdl_files/uavcan
5.1编译自定义配置文件,生成c代码
1、在libcanard/dsdl_compiler路径下面创建picohood_corporation目录 2、在picohood_corporation在该目录下添加自定义配置文件 3、编译自己定义配置文件 python3 ./libcanard_dsdlc ./picohood_corporation
6、将生成的c代码和uavcan。拷贝到工程即可用
1、cd libcanard/dsdl_compiler/dsdlc_generated 2、这下面的picohood_corporation目录就是存放的我们自动生成的c代码 3、拷贝生成的节点消息文件。到单片机相应的目录
7、拷贝uavcan协议层
cd libcanard canard.c canard.h canard_internals.h
8、编译libuavcan,这个C++的代码,只是试了一下没有成功
先安装 uavcan pip install uavcan
2308 cd libuavcan/ 2309 ls 2310 cde build/ 2311 ls 2312 cd build/ 2313 ls 2314 cd .. 2315 ls 2316 cd buid 2317 cd build/ 2318 ls 2319 rm * -rf 2320 cmake .. 2321 make -j4 2322 sudo make install 2323 cp ../../libcanard/dsdl_compiler/picohood_corporation/ . -rf 2324 ls 2325 libuavcan_dsdlc ./picohood_corporation/ -I/usr/local/share/uavcan/dsdl/ 2326 ls 2327 cd dsdlc_generated/ 2328 ls 2329 cd picohood_corporation/
浙公网安备 33010602011771号