Files
LFP_48V_mBMS_FW/mBMS_APP_V3117/APP/asutil.h

160 lines
4.6 KiB
C

/*****************************************************************************
*
* MSO Corporation
*
* File : asutil.h
* Compiler : IAR C 5.30C Kickstart
* Revision : $Revision: 1.0 $
* Date : $Date: 2010 / 7 / 16
* Updated by : $Author: Jongkwang Woo
*
* Support mail : spirit0305@naver.com
*
* Target platform : STM32F4 Cortex-M4 support
*
* AppNote : BPCB Application
*
* Description : Header file for asutil.c
*
****************************************************************************/
#ifndef _ASUTIL_H_
#define _ASUTIL_H_
#include <stm32f4xx.h>
#pragma pack(1)
#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 cFahr 0x00
#define cCent 0x01
#define DISPLAY_NORMAL 0x00
#define DISPLAY_RED 0x01
#define DISPLAY_GREEN 0x02
#define DISPLAY_YELLOW 0x03
extern u8 *dump_addr;
/* find charater funcion ************************************************/
u8 FIND_CHAR(u8 *in, u8 *out, s16 max, u8 fdata);
u8 FIND_DATA(u8 *in, u8 *out, u16 max, u8 fdata, u16 count);
/************************************************************************/
void SetTempMode(u8 aToMode);
char digit2ascii(u8 t);
s16 ascii2digit(u8 t);
/* void FormattedTempValue(u8 *temp, int Length, int aBlanksize); */
void DisableCursor(void);
void EnableCursor(void);
u8 WaitUserCMD(u8 *cmd);
void UserMessage(char *str);
void IntNormalOutXY(u16 x,u16 y, s16 Value, s16 Length);
void GreenOutIntXY(u16 x, u16 y, s16 Value, s16 Length);
void HumiNormalOutIntXY(u16 x,u16 y, s16 Value, s16 Length); /* Humidity without decimal point */
void HumiRedOutIntXY(u16 x,u16 y, s16 Value, s16 Length);
void RedOutIntXY(u16 x,u16 y, s16 Value, s16 Length);
void ColorOutXY(u8 aColor, u16 x, u16 y, u8 *Text);
void NormalOutIntXY(u16 x,u16 y, s16 Value, s16 Length);
void RedOutXY(u16 x,u16 y, u8 *msg);
void GreenOutXY(u16 x,u16 y, u8 *msg);
void YellowOutXY(u16 x,u16 y, u8 *msg);
void NormalOutXY(u16 x,u16 y, u8 *msg);
void OutXY(u8 aRED, u16 x, u16 y, u8 *Text);
void FloatNormalOutIntXY(u16 x,u16 y, float Value, u16 Length, u16 Point);
void FloatRedOutIntXY(u16 x,u16 y, float Value, s16 Length, u16 Point);
void FloatColorOutIntXY(u8 Color, u16 x,u16 y, float Value, u16 Length, u16 Point);
void TempIntToStr(s16 Value, u8 *Text, u16 Length);
void ClearConsol (void);
void DebugMessage(u8 *msg);
void DebugMessage1(char *msg);
s16 StrToInt(u8 *text, u16 size);
u32 StrToInt32(u8 *text, u16 size);
void IntToStr(s16 ins, u8 *text, s16 size);
void Int32ToStr(u32 ins, u8 *text, u16 size);
void IntToHex(u16 ins, u8 *text, u8 size);
void Int2Hex(u8 c, u8 *temp);
void LongToStr(u16 a, u16 b, u8 *temp);
u8 Str2ToHex(u8 *text, u16 size);
void IntOneHex(u8 c, u8 *temp);
void Int32ToStrD(s32 ins, u8 *text, u16 size);
void FloatToStr(float ins, u8 *text, u16 size, u16 point);
s16 TEMP_GRADE_CONVERTOR(s16 aTempValue, u8 aGrade);
void dump_mem(u32 addr);
void DataFlash_Dump(u16 page);
void EEPROM_Dump(u16 page);
u32 TextToAddr(u8 *data);
int CompareStr(u8 *text1,u8 *text2,int size );
u8 str2bcd(u8 *a);
void StrToBCD(u8 *in, u8 *out, u16 size);
void StrToBCD2(u8 *in, u8 *out, u16 isize, u16 osize);
void Int32ToBCD(u32 in32, u8 *out, u16 osize);
void BCDToStr(u8 *in, u8 *out, u16 size);
u32 BCDToInt32(u8 *in, u16 size);
void SET_SYSTEM_NEXTFAIL(char *str,u8 msgno); /* Register Next System Fail */
void ADD_RUN_HISTORY(u8 aStoreOP, u8 Section, char *str1, char *str2,
u8 mg1, u8 mg2);
void CLEAR_RUN_HISTORY(void);
void INIT_RUN_HISTORY_VAR(void);
int RunHistoryCount(void);
u8 GET_RUN_HISTORY(int index, char *str); /* Max 45 Bytes 0~199, 199 = Latest */
s8 SetAnalogParam(char *text, u8 aDevice);
s8 SetAnalogTest(char *text, u8 aDevice);
int SetHexParam(char *text, u8 aDevice);
void ConsoleDownLoad(void);
void SetDefaultParam(void);
void data_print(u8 *data, u16 len);
void SEND_UART(u8 * buf, u16 len, u8 port);
void UART_DATA_PRINT(u16 port, u8 * buf, u16 len, u8 mode);
void CAN_DATA_PRINT(u16 port, CanRxMsg* buf, u8 mode);
void CAN_TX_DATA_PRINT(u16 port, CanTxMsg* buf);
void RTC_MEM_Dump(u16 page);
void SetAllAvgBuf(u16 *Buf, u16 Data, u8 DataCount);
void SetAvgBuf(u16 *Buf, u16 Data, u8 DataCount, u8 *BufPosition);
u16 GetAvgData(u16 *Buf, u8 DataCount);
u8 SSetParam(u8 *text, u8 aDevice);
u8 Make_BCC(u8 *data, u16 len);
u8 MakeCheckSum(u8 *data, u8 size);
u16 reverse16(u16 data);
u32 reverse32(u32 data);
u32 strtohex(char *string, int size);
#endif