系统数据流图,是要在应用层面的,所以要想构建系统数据流图,应用层的几个问题要先解决掉,我想只有清楚了各个模块的功能,整个系统的数据流图才能构建起来。至于驱动层的问题,等到整个数据流图成功后在慢慢研究。
我想方法应该是这样,对于有疑问的模块和功能,先大致了解下它的作用,可以通过文档或者函数的注释来看,函数名字也可以。通过注释和函数名字很容易就会把我模块的功能,形成基本概念。每个模块的基本概念都形成后,那么整个系统的框架雏形就清晰了,在这个基础上画数据流就不难了。如果看注释和函数名字还是弄不清楚,再看一眼函数的具体代码。如果短时间内还是搞不清楚就先放弃,做别的。等到其它模块理清楚时候,这个不懂得模块自然而言就明白了!
通过这个方法,先把应用层的几个问题解决掉,数据流图和模快协调功能先不管:
1、flash存储器就是eeprom片上的存储器,记录的是pid的参数信息;
2、姿态解算分为硬件解算与软件解算,这里用宏定义来区别,根据程序,这里用的软件解算;
3、PowerOn();函数是对led灯的操作,作用是告诉使用者,无人机上电的状态;
4、暂时为看出电池检测有啥说法,而且电池不是循环检测的吗?
5、IMU_Init();校准陀螺仪的作用,可能软解算之前要先校准下陀螺仪吧!
6、Initial_FMTI_Sensor();是高度气压计初始化;
7、用到了气压计数据;
8、高度融合似乎是获得气压计信息并且滤波用;
9、利用串口通信机制与地面站联系起来的;