思路;先分析demo代码--〉然后作开发
版本和工程:V3.6.0 -STM32F407
下载:github
1.DJI Onboard SDK中的主要Vehicle类
2.这里是osdk的执行流程图;大概就是运行与N3或者A3的网络**(要提前申请好开发**并填充进入)然后运行6个状态机
这个是个很简单的代码,状态机(switch-case)通过的运行依赖于预定义一个全局变量来实现(默认是0 ,每次运行只运行一次),所以代码没有while(1)或者其他死循环;
所以二次开发思路很简单啦:
最简单就是:
1.开一个定时器中断(类后台系统运行,一般是2.5ms或2ms):该中断运行重要性最大的代码,同时分出时间片标志位;
2.然后再while(1)作时间片处理(也可以在定时器中断作处理);
3.其他的,再根据需要,添加自己想要的定时器中断,串口,外部中断等。。。。
所以整体难度不大;运行仿真;然后试飞!!