NEW: sync the code of DJI Payload-SDK version 2.2.1 released on January 20 2021.
Signed-off-by: DJI-Martin <DJI-Martin@dji.com>
This commit is contained in:
@ -0,0 +1,91 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* @file IAP/IAP_Main/Inc/common.h
|
||||
* @author MCD Application Team
|
||||
* @brief This file provides all the headers of the common functions.
|
||||
******************************************************************************
|
||||
* @attention
|
||||
*
|
||||
* <h2><center>© Copyright (c) 2017 STMicroelectronics International N.V.
|
||||
* All rights reserved.</center></h2>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted, provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistribution of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of STMicroelectronics nor the names of other
|
||||
* contributors to this software may be used to endorse or promote products
|
||||
* derived from this software without specific written permission.
|
||||
* 4. This software, including modifications and/or derivative works of this
|
||||
* software, must execute solely and exclusively on microcontroller or
|
||||
* microprocessor devices manufactured by or for STMicroelectronics.
|
||||
* 5. Redistribution and use of this software other than as permitted under
|
||||
* this license is void and will automatically terminate your rights under
|
||||
* this license.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY STMICROELECTRONICS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS, IMPLIED OR STATUTORY WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
||||
* PARTICULAR PURPOSE AND NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY
|
||||
* RIGHTS ARE DISCLAIMED TO THE FULLEST EXTENT PERMITTED BY LAW. IN NO EVENT
|
||||
* SHALL STMICROELECTRONICS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
|
||||
* OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
|
||||
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* @statement DJI has modified some symbols' name.
|
||||
*
|
||||
******************************************************************************
|
||||
*/
|
||||
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||
#ifndef __COMMON_H
|
||||
#define __COMMON_H
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include "stm32f4xx.h"
|
||||
|
||||
/* Exported types ------------------------------------------------------------*/
|
||||
/* Exported constants --------------------------------------------------------*/
|
||||
#define FILE_NAME_LENGTH ((uint32_t)64)
|
||||
/* Constants used by Serial Command Line Mode */
|
||||
#define TX_TIMEOUT ((uint32_t)100)
|
||||
#define RX_TIMEOUT ((uint32_t)0xFFFFFFFF)
|
||||
|
||||
/* Exported macro ------------------------------------------------------------*/
|
||||
#define IS_CAP_LETTER(c) (((c) >= 'A') && ((c) <= 'F'))
|
||||
#define IS_LC_LETTER(c) (((c) >= 'a') && ((c) <= 'f'))
|
||||
#define IS_09(c) (((c) >= '0') && ((c) <= '9'))
|
||||
#define ISVALIDHEX(c) (IS_CAP_LETTER(c) || IS_LC_LETTER(c) || IS_09(c))
|
||||
#define ISVALIDDEC(c) IS_09(c)
|
||||
#define CONVERTDEC(c) (c - '0')
|
||||
|
||||
#define CONVERTHEX_ALPHA(c) (IS_CAP_LETTER(c) ? ((c) - 'A'+10) : ((c) - 'a'+10))
|
||||
#define CONVERTHEX(c) (IS_09(c) ? ((c) - '0') : CONVERTHEX_ALPHA(c))
|
||||
#define CRC16 ((uint8_t)0x43) /* 'C' == 0x43, request 16-bit CRC */
|
||||
|
||||
typedef enum
|
||||
{
|
||||
COM_OK = 0x00,
|
||||
COM_ERROR = 0x01,
|
||||
COM_ABORT = 0x02,
|
||||
COM_TIMEOUT = 0x03,
|
||||
COM_DATA = 0x04,
|
||||
COM_LIMIT = 0x05
|
||||
} COM_StatusTypeDef;
|
||||
|
||||
/* Exported functions ------------------------------------------------------- */
|
||||
void Int2Str(uint8_t *p_str, uint32_t intnum);
|
||||
uint32_t Str2Int(uint8_t *inputstr, uint32_t *intnum);
|
||||
void Serial_PutString(uint8_t *p_string);
|
||||
HAL_StatusTypeDef Serial_PutByte(uint8_t param);
|
||||
|
||||
#endif /* __COMMON_H */
|
||||
|
||||
/*******************(C)COPYRIGHT 2016 STMicroelectronics *****END OF FILE******/
|
Reference in New Issue
Block a user