• 大小: 11.63MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-21
  • 语言: 其他
  • 标签: 源码  

资源简介

本文件是匿名飞控 的源码,因为匿名本身就是开源的,所以在此将匿名的代码上传上来,以便理解自己的代码解读

资源截图

代码片段和文件信息

/******************** (C) COPYRIGHT 2017 ANO Tech ********************************
 * 作者    :匿名科创
 * 官网    :www.anotc.com
 * 淘宝    :anotc.taobao.com
 * 技术Q群 :190169595
 * 描述    :数据传输
**********************************************************************************/
#include “Ano_DT.h“
#include “Drv_Uart.h“
#include “ano_usb.h“
#include “Ano_RC.h“
#include “Ano_Sensor_Basic.h“
#include “Drv_gps.h“
#include “Ano_Parameter.h“
#include “ANO_IMU.h“
#include “Drv_icm20602.h“
#include “Ano_MagProcess.h“
#include “Ano_MotorCtrl.h“
#include “Ano_Power.h“
#include “Ano_FlightCtrl.h“

#include “Ano_MotionCal.h“
#include “Ano_FlightDataCal.h“

#include “Ano_LocCtrl.h“
#include “Ano_FlyCtrl.h“

/////////////////////////////////////////////////////////////////////////////////////
//数据拆分宏定义,在发送大于1字节的数据类型时,比如int16、float等,需要把数据拆分成单独字节进行发送
#define BYTE0(dwTemp)       ( *( (char *)(&dwTemp) ) )
#define BYTE1(dwTemp)       ( *( (char *)(&dwTemp) + 1) )
#define BYTE2(dwTemp)       ( *( (char *)(&dwTemp) + 2) )
#define BYTE3(dwTemp)       ( *( (char *)(&dwTemp) + 3) )

#define MYHWADDR 0x05
#define SWJADDR 0xAF

#define PARNUM 100
s32 ParValList[100]; //参数列表

dt_flag_t f; //需要发送数据的标志
u8 data_to_send[50]; //发送数据缓存
u8 checkdata_to_sendchecksum_to_send;

/////////////////////////////////////////////////////////////////////////////////////
//Send_Data函数是协议中所有发送数据功能使用到的发送函数
//移植时,用户应根据自身应用的情况,根据使用的通信方式,实现此函数
void ANO_DT_Send_Data(u8 *dataToSend  u8 length)
{
#ifdef ANO_DT_USE_USB
AnoUsbCdcSend( dataToSend  length );;//USB数据发送
#endif
#ifdef ANO_DT_USE_USART2
Drv_Uart2SendBuf(data_to_send length);
#endif
}

/////////////////////////////////////////////////////////////////////////////////////
//Data_Exchange函数处理各种数据发送请求,比如想实现每5ms发送一次传感器数据至上位机,即在此函数内实现
//此函数应由用户每1ms调用一次
extern float ultra_dis_lpf;
void ANO_DT_Data_Exchange(void)
{
static u16 cnt = 0;
static u16 senser_cnt  = 10;
static u16 senser2_cnt  = 50;
static u16 user_cnt  = 10;
static u16 status_cnt  = 15;
static u16 rcdata_cnt  = 20;
static u16 motopwm_cnt = 20;
static u16 power_cnt = 50;
static u16 speed_cnt    = 50;
static u16 location_cnt = 500;


if((cnt % senser_cnt) == (senser_cnt-1))
f.send_senser = 1;

if((cnt % senser2_cnt) == (senser2_cnt-1))
f.send_senser2 = 1;

if((cnt % user_cnt) == (user_cnt-2))
f.send_user = 1;

if((cnt % status_cnt) == (status_cnt-1))
f.send_status = 1;

if((cnt % rcdata_cnt) == (rcdata_cnt-1))
f.send_rcdata = 1;

if((cnt % motopwm_cnt) == (motopwm_cnt-2))
f.send_motopwm = 1;

if((cnt % power_cnt) == (power_cnt-2))
f.send_power = 1;

if((cnt % speed_cnt) == (speed_cnt-3))
f.send_speed = 1;

if((cnt % location_cnt) == (location_cnt-3))
{
f.send_location = 1;
}

if(++cnt>1000) cnt = 0;
/////////////////////////////////////////////////////////////////////////////////////
if(f.send_version)
{
f.send_version

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    .......     98377  2019-07-19 11:59  飞控源码\ANO_PioneerPro_Ti\ANO_PioneerPro_Ti.uvguix.Toughguy

    .......     47621  2019-07-17 14:23  飞控源码\ANO_PioneerPro_Ti\ANO_PioneerPro_Ti.uvoptx

    .......     31751  2019-07-12 10:34  飞控源码\ANO_PioneerPro_Ti\ANO_PioneerPro_Ti.uvprojx

    .......     34270  2019-07-09 18:50  飞控源码\ANO_PioneerPro_Ti\Application\Ano_DT.c

    .......      3757  2019-05-22 20:32  飞控源码\ANO_PioneerPro_Ti\Application\Ano_DT.h

    .......      9286  2019-01-19 16:21  飞控源码\ANO_PioneerPro_Ti\Application\Ano_FlyCtrl.c

    .......       487  2019-05-22 20:31  飞控源码\ANO_PioneerPro_Ti\Application\Ano_FlyCtrl.h

    .......      5430  2019-07-09 11:00  飞控源码\ANO_PioneerPro_Ti\Application\Ano_LED.c

    .......       956  2019-05-22 23:28  飞控源码\ANO_PioneerPro_Ti\Application\Ano_LED.h

    .......      7873  2019-07-10 19:19  飞控源码\ANO_PioneerPro_Ti\Application\Ano_OPMV_CBTracking_Ctrl.c

    .......       821  2019-07-08 15:01  飞控源码\ANO_PioneerPro_Ti\Application\Ano_OPMV_CBTracking_Ctrl.h

    .......      7430  2019-06-05 22:31  飞控源码\ANO_PioneerPro_Ti\Application\Ano_Parameter.c

    .......      1782  2019-05-23 18:34  飞控源码\ANO_PioneerPro_Ti\Application\Ano_Parameter.h

    .......      2264  2019-06-17 20:54  飞控源码\ANO_PioneerPro_Ti\Application\Ano_ProgramCtrl_User.c

    .......       598  2019-07-04 13:45  飞控源码\ANO_PioneerPro_Ti\Application\Ano_ProgramCtrl_User.h

     文件      10703  2019-07-17 14:23  飞控源码\ANO_PioneerPro_Ti\Application\Ano_RC.c

     文件        753  2019-07-17 14:23  飞控源码\ANO_PioneerPro_Ti\Application\Ano_RC.h

     文件       5831  2019-07-17 14:23  飞控源码\ANO_PioneerPro_Ti\Application\Ano_Scheduler.c

    .......       770  2019-05-21 13:45  飞控源码\ANO_PioneerPro_Ti\Application\Ano_Scheduler.h

    .......      8864  2019-06-04 12:31  飞控源码\ANO_PioneerPro_Ti\Application\Ano_Usb.c

    .......       237  2019-05-24 20:24  飞控源码\ANO_PioneerPro_Ti\Application\Ano_Usb.h

    .......       224  2019-05-23 11:54  飞控源码\ANO_PioneerPro_Ti\Application\main.c

    .......      5292  2019-06-10 21:53  飞控源码\ANO_PioneerPro_Ti\Application\sysconfig.h

    .......      5222  2019-05-23 22:25  飞控源码\ANO_PioneerPro_Ti\Application\sysconfig_DESKTOP-0ARSAJT_5月-25-183255-2019_Conflict.h

     文件     234091  2019-07-11 09:53  飞控源码\ANO_PioneerPro_Ti\build\ano_altctrl.crf

     文件       1852  2019-07-11 09:53  飞控源码\ANO_PioneerPro_Ti\build\ano_altctrl.d

     文件     238812  2019-07-11 09:53  飞控源码\ANO_PioneerPro_Ti\build\ano_altctrl.o

     文件     237860  2019-07-11 09:53  飞控源码\ANO_PioneerPro_Ti\build\ano_attctrl.crf

     文件       1971  2019-07-11 09:53  飞控源码\ANO_PioneerPro_Ti\build\ano_attctrl.d

     文件     246032  2019-07-11 09:53  飞控源码\ANO_PioneerPro_Ti\build\ano_attctrl.o

............此处省略626个文件信息

评论

共有 条评论