今天初步让代码在板子上跑,先看看打印出来的调试信息。
激活飞机
在Receive.cpp里面,需要你们自己去注册一个APP key跟APP ID。
进入大疆开发者的网站,点击CREATE APP
如图
创建之后就可以看到自己创建的一个APP,点进去就有你的APP key 跟 APP ID。我们需要 key 跟 ID来激活飞机,这一步是必不可缺的。
得到key跟ID之后就将他们填入代码对应的地方就好啦。
开启API控制
要使用SDK,比如我手上用的是N3飞控,那么你就应该打开对应的调参助手,使能API的控制,这样才能进行SDK的开发。(记得之前一开始接触的是m100,以为N3飞控的调参助手跟m100是同样的,最后发现是两个不同的版本,所以一定要找到对应的调参助手)。
打开调参助手之后选择SDK那一栏,然后记得勾选启动启动API控制
,然后波特率的选择因为我代码里面是设置的115200,所以对应这边也应该是115200。
接线
打开N3飞控的用户手册,查看其API的接线顺序
注意不要搞错线序,实物连接图如下
板子上的logo是我们队伍的队徽,嘻嘻,虽然被我拍反了
烧录代码
打开串口调试助手,串口模块插入电脑,得到打印出来的调试信息
这是开头打印出来的调试信息
这是打印自己的飞控的SN,固件的一些信息
接下来是各种初始化之后,跑telemetry sample
遥测样本(跑哪个样本可以自己选择,main.cpp开头的sample_flag
可以自己选择。)
然后就是一些输出的信息,因为是N3飞控,所以只支持订阅功能,这个可以去大疆开发者的网站上去仔细阅读一下。
开始输出
订阅信息发完之后remove Package
注意
- 最好就是飞控先上电,等待飞控初始化完成之后再给板子上电。如果板子先上电的话可能飞控那边初始化没完成,这边板子程序上串口检测不到飞控发过来的信息,可能会把包含SDK信息的结构体从内存里面释放掉,这样子就没法用SDK了。可以再自己的代码里面初始化外设之后加一段延时再跑死循环来解决上电先后顺序的问题。
- 多阅读大疆板载SDK(OSDK)stm32开发平台给的文档
FEATURED TAGS
Ubuntu
markdown
stm32
OSDK
飞控
串口
Jscope
C
C++
bin
J-Flash
字符串
指针数组
malloc
vscode
svg
png
github
python
CMake
CMakeLists
Linux
拷贝构造函数
GIF
录屏
docker
操作系统
make
Makefile
文件操作
DSP
CCS
SQL
MySQL
shell
bochs
计算机网络
win10
SMTP
Socket
iOS
uxplay
投屏
证书错误
apt
nodesource
ELF
Typora
图床
fossil
sql
git
SecureCRT
windows
cygwin
blog
alsa
alsa-utils
alsa-lib
音频
USB
链接文件
内存
mmap
tcpdump
交叉编译
网络
防火墙
crontab
bond
Linux性能
udev
linux
pcie
wsl2
MMIO
wsl
qemu
raspi4
gdb
ssh
tun
tap
ifconfig
打印
gmac
phy
vim
组播
rock3a
win11
usb
sd
ubuntu
iptables
netfilter
wifi
veth
ipv6
wireshark
radvd
dhcpv6
dhcpv4
网络命名空间
br虚拟网卡
NDP
emmc
存储
raspi4b
baremental
jtag
buildroot
rootfs
ext4
调试
uboot
dropbear
raspi
ebpf
uart
baremetal
kernel
bringup
libbpf