168 lines
6.3 KiB
C
168 lines
6.3 KiB
C
/**
|
|
******************************************************************************
|
|
* @file asutil.h
|
|
* @author AMG Energy Solution Team
|
|
* @version V1.0.0
|
|
* @date 07-Feb-2022
|
|
* @brief This file provides all the headers of the utility functions.
|
|
******************************************************************************
|
|
* @attention
|
|
*
|
|
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
|
|
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
|
|
* TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
|
|
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
|
|
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
|
|
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
|
|
*
|
|
* <h2><center>© COPYRIGHT 2022 AMG</center></h2>
|
|
******************************************************************************
|
|
*/
|
|
|
|
/** @addtogroup mBMS2
|
|
* @{
|
|
*/
|
|
|
|
/* Define to prevent recursive inclusion -------------------------------------*/
|
|
#ifndef _ASUTIL_H_
|
|
#define _ASUTIL_H_
|
|
|
|
/* Includes ------------------------------------------------------------------*/
|
|
#include "hc32_ddl.h"
|
|
|
|
/* Exported types ------------------------------------------------------------*/
|
|
#define RX_PRINT 0
|
|
#define TX_PRINT 1
|
|
#define TCP_RX_PRINT 2
|
|
#define TCP_TX_PRINT 3
|
|
|
|
#define ACT 1
|
|
#define WAIT 0
|
|
|
|
#define High 1
|
|
#define Low 0
|
|
|
|
#define ON 1
|
|
#define OFF 0
|
|
|
|
#define SET 1
|
|
#define CLEAR 0
|
|
|
|
#define DISPLAY_NORMAL 0x00
|
|
#define DISPLAY_RED 0x01
|
|
#define DISPLAY_GREEN 0x02
|
|
#define DISPLAY_YELLOW 0x03
|
|
|
|
/* Exported constants --------------------------------------------------------*/
|
|
/* Exported macro ------------------------------------------------------------*/
|
|
/* Exported functions ------------------------------------------------------- */
|
|
|
|
extern uint8_t *dump_addr;
|
|
|
|
/* find charater funcion ************************************************/
|
|
uint8_t FIND_CHAR(uint8_t *in, uint8_t *out, int16_t max, uint8_t fdata);
|
|
uint8_t FIND_DATA(uint8_t *in, uint8_t *out, uint16_t max, uint8_t fdata, uint16_t count);
|
|
/************************************************************************/
|
|
|
|
void SetTempMode(uint8_t aToMode);
|
|
char digit2ascii(uint8_t t);
|
|
int16_t ascii2digit(uint8_t t);
|
|
|
|
/* void FormattedTempValue(uint8_t *temp, int Length, int aBlanksize); */
|
|
void DisableCursor(void);
|
|
void EnableCursor(void);
|
|
|
|
uint8_t WaitUserCMD(uint8_t *cmd);
|
|
void UserMessage(char *str);
|
|
|
|
void IntNormalOutXY(uint16_t x,uint16_t y, int16_t Value, int16_t Length);
|
|
|
|
void GreenOutIntXY(uint16_t x, uint16_t y, int16_t Value, int16_t Length);
|
|
|
|
void HumiNormalOutIntXY(uint16_t x,uint16_t y, int16_t Value, int16_t Length); /* Humidity without decimal point */
|
|
void HumiRedOutIntXY(uint16_t x,uint16_t y, int16_t Value, int16_t Length);
|
|
void RedOutIntXY(uint16_t x,uint16_t y, int16_t Value, int16_t Length);
|
|
void ColorOutXY(uint8_t aColor, uint16_t x, uint16_t y, uint8_t *Text);
|
|
void NormalOutIntXY(uint16_t x,uint16_t y, int16_t Value, int16_t Length);
|
|
void RedOutXY(uint16_t x,uint16_t y, uint8_t *msg);
|
|
void GreenOutXY(uint16_t x,uint16_t y, uint8_t *msg);
|
|
void YellowOutXY(uint16_t x,uint16_t y, uint8_t *msg);
|
|
void NormalOutXY(uint16_t x,uint16_t y, uint8_t *msg);
|
|
void OutXY(uint8_t aRED, uint16_t x, uint16_t y, uint8_t *Text);
|
|
|
|
void FloatNormalOutIntXY(uint16_t x,uint16_t y, float Value, uint16_t Length, uint16_t Point);
|
|
void FloatRedOutIntXY(uint16_t x,uint16_t y, float Value, int16_t Length, uint16_t Point);
|
|
void FloatColorOutIntXY(uint8_t Color, uint16_t x,uint16_t y, float Value, uint16_t Length, uint16_t Point);
|
|
|
|
void TempIntToStr(int16_t Value, uint8_t *Text, uint16_t Length);
|
|
|
|
void ClearConsol (void);
|
|
void DebugMessage(uint8_t *msg);
|
|
void DebugMessage1(char *msg);
|
|
int16_t StrToInt(uint8_t *text, uint16_t size);
|
|
uint32_t StrToInt32(uint8_t *text, uint16_t size);
|
|
void IntToStr(int16_t ins, uint8_t *text, int16_t size);
|
|
void Int32ToStr(uint32_t ins, uint8_t *text, uint16_t size);
|
|
void IntToHex(uint16_t ins, uint8_t *text, uint8_t size);
|
|
void Int2Hex(uint8_t c, uint8_t *temp);
|
|
void LongToStr(uint16_t a, uint16_t b, uint8_t *temp);
|
|
uint8_t Str2ToHex(uint8_t *text, uint16_t size);
|
|
void IntOneHex(uint8_t c, uint8_t *temp);
|
|
void Int32ToStrD(int32_t ins, uint8_t *text, uint16_t size);
|
|
void FloatToStr(float ins, uint8_t *text, uint16_t size, uint16_t point);
|
|
|
|
int16_t TEMP_GRADE_CONVERTOR(int16_t aTempValue, uint8_t aGrade);
|
|
|
|
void dump_mem(uint32_t addr);
|
|
void DataFlash_Dump(uint16_t page);
|
|
void EEPROM_Dump(uint16_t page);
|
|
uint32_t TextToAddr(uint8_t *data);
|
|
|
|
int CompareStr(uint8_t *text1,uint8_t *text2,int size );
|
|
uint8_t str2bcd(uint8_t *a);
|
|
void StrToBCD(uint8_t *in, uint8_t *out, uint16_t size);
|
|
void StrToBCD2(uint8_t *in, uint8_t *out, uint16_t isize, uint16_t osize);
|
|
void Int32ToBCD(uint32_t in32, uint8_t *out, uint16_t osize);
|
|
void BCDToStr(uint8_t *in, uint8_t *out, uint16_t size);
|
|
uint32_t BCDToInt32(uint8_t *in, uint16_t size);
|
|
|
|
void SET_SYSTEM_NEXTFAIL(char *str,uint8_t msgno); /* Register Next System Fail */
|
|
|
|
void ADD_RUN_HISTORY(uint8_t aStoreOP, uint8_t Section, char *str1, char *str2,
|
|
uint8_t mg1, uint8_t mg2);
|
|
void CLEAR_RUN_HISTORY(void);
|
|
void INIT_RUN_HISTORY_VAR(void);
|
|
int RunHistoryCount(void);
|
|
uint8_t GET_RUN_HISTORY(int index, char *str); /* Max 45 Bytes 0~199, 199 = Latest */
|
|
int8_t SetAnalogParam(char *text, uint8_t aDevice);
|
|
int8_t SetAnalogTest(char *text, uint8_t aDevice);
|
|
int SetHexParam(char *text, uint8_t aDevice);
|
|
|
|
void ConsoleDownLoad(void);
|
|
void SetDefaultParam(void);
|
|
void data_print(uint8_t *data, uint16_t len);
|
|
|
|
void SEND_UART(uint8_t * buf, uint16_t len, uint8_t port);
|
|
void UART_DATA_PRINT(uint16_t port, uint8_t * buf, uint16_t len, uint8_t mode);
|
|
|
|
void RTC_MEM_Dump(uint16_t page);
|
|
|
|
void SetAllAvgBuf(uint16_t *Buf, uint16_t Data, uint8_t DataCount);
|
|
void SetAvgBuf(uint16_t *Buf, uint16_t Data, uint8_t DataCount, uint8_t *BufPosition);
|
|
uint16_t GetAvgData(uint16_t *Buf, uint8_t DataCount);
|
|
|
|
uint8_t SSetParam(uint8_t *text, uint8_t aDevice);
|
|
|
|
uint8_t Make_BCC(uint8_t *data, uint16_t len);
|
|
uint8_t MakeCheckSum(uint8_t *data, uint8_t size);
|
|
|
|
uint16_t reverse16(uint16_t data);
|
|
uint32_t reverse32(uint32_t data);
|
|
|
|
uint32_t strtohex(char *string, int size);
|
|
uint32_t atoin(char *asc, int size);
|
|
|
|
#endif
|
|
|
|
/*******************(C)COPYRIGHT 2022 AMG ********************END OF FILE******/
|