123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 |
- /************************************************************************
- Project: Welling Motor Control Paltform
- Filename: uart_appl.h
- Partner Filename: uart_appl.c
- Description: The header file of uart_appl.c
- Complier: IAR Embedded Workbench for ARM 7.80.4
- CPU TYPE : GD32F30x
- *************************************************************************
- Copyright (c) 2018 Welling Motor Technology(Shanghai) Co. Ltd.
- All rights reserved.
- *************************************************************************
- *************************************************************************
- Revising History (ECL of this file):
- ************************************************************************/
- /************************************************************************
- Beginning of File, do not put anything above here except notes
- Compiler Directives
- ************************************************************************/
- #ifndef UART_APPL_H
- #define UART_APPL_H
- /************************************************************************
- Compiler Directives (N/A)
- *************************************************************************/
- #ifdef _UART_APPL_C_
- #define _UART_APPL_C_EXT
- #else
- #define _UART_APPL_C_EXT extern
- #endif
- /************************************************************************
- Definitions & Macros
- *************************************************************************/
- #define UART_ACK_BUFFER_SIZE 24
- #define UART_HOST_TIMEOUT_COUNT 6000 // Timeout == 6sec
- #define UART_ACK_BUFFER_DEFAULT \
- { \
- 0xB2, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \
- } // Default value of UART_ACK_BUFFER
- /************************************************************************
- TypeDefs & Structure defines (N/A)
- *************************************************************************/
- /************************************************************************
- Exported Variables
- *************************************************************************/
- #ifdef _UART_APPL_C_
- //******************************* Data Interface ***************************************************
- _UART_APPL_C_EXT BOOL uart_commandEN =
- FALSE; // LittleSwan protocol stipulates that when the correct Ping commmand(motorNum !=0) is received then other command can be reponsed.
- _UART_APPL_C_EXT BOOL uart_FCTcommandEN = FALSE; // ly180403
- _UART_APPL_C_EXT FlagStatus uart_blDrumTestOkFlg = RESET;
- _UART_APPL_C_EXT UWORD uart_uwDrumTestEn = 0;
- _UART_APPL_C_EXT FlagStatus uart_blTimeoutFlg = RESET; // when Ping command receied, enable timeout count.
- _UART_APPL_C_EXT UWORD uart_uwTimeoutCnts = 0; // reset timeout counter everytime any commmand received.
- _UART_APPL_C_EXT SWORD uart_swDrumSpdAbsNowRpm = 0; // present effected drum speed command mirror
- _UART_APPL_C_EXT SWORD uart_swDrumSpdAbsPreRpm = 0; // previous effected drum speed commmand mirror
- //----------- ACK(response) value Interface ------------
- _UART_APPL_C_EXT SWORD uart_swDrumSpdNowRpm = 0; // present effected drum speed command
- _UART_APPL_C_EXT SWORD uart_swDrumSpdPreRpm = 0; // previous effected drum speed commmand
- _UART_APPL_C_EXT UWORD uart_uwSoftwareVer = 0x0000;
- _UART_APPL_C_EXT UBYTE uart_ubMotorID = 0x00;
- _UART_APPL_C_EXT UBYTE uart_ubMotorTemp = 0x00;
- _UART_APPL_C_EXT SBYTE uart_sbIPMtemp = 0x00;
- _UART_APPL_C_EXT UWORD uart_uwFaultCode = 0x0000;
- _UART_APPL_C_EXT SWORD uart_swDrumSpdRpm = -100;
- _UART_APPL_C_EXT SBYTE uart_sbPhaseUCurrentA = 0;
- _UART_APPL_C_EXT UWORD uart_uwBusVoltageV = 310;
- //----------- Command value Interface ------------
- _UART_APPL_C_EXT SWORD uart_swDrumSpdCmdRpm = 0;
- _UART_APPL_C_EXT SWORD uart_swDrumSpdCmdPreRpm = 0;
- _UART_APPL_C_EXT UBYTE uart_ubAckBuffer[UART_ACK_BUFFER_SIZE] = UART_ACK_BUFFER_DEFAULT;
- _UART_APPL_C_EXT UBYTE uart_ubData1 = 0; // Reserved
- _UART_APPL_C_EXT UBYTE uart_ubPlatform = 0x00;
- _UART_APPL_C_EXT UWORD uart_uwLoadTested = 0;
- _UART_APPL_C_EXT UWORD uart_uwLoadDef = 0;
- _UART_APPL_C_EXT UWORD *uart_ptuwLoad = &uart_uwLoadDef;
- _UART_APPL_C_EXT UWORD uart_uwACCtimeTs = 10;
- _UART_APPL_C_EXT UWORD uart_uwACCtimePreTs = 10;
- _UART_APPL_C_EXT SWORD uart_swDrumACCRpmps = 130;
- _UART_APPL_C_EXT SWORD uart_swMotorACCRpmps = 1500;
- _UART_APPL_C_EXT BOOL uart_bCommOvrTmFlg = FALSE;
- _UART_APPL_C_EXT SWORD uart_swMotorStopCnt = 0;
- _UART_APPL_C_EXT UWORD uart_uwFTbsHz = 4000;
- _UART_APPL_C_EXT SLONG uart_slSpdRefRpm = 0;
- _UART_APPL_C_EXT SWORD uart_swTorqRefNm = 0;
- #else
- _UART_APPL_C_EXT BOOL uart_commandEN; // LittleSwan protocol stipulates that when the correct Ping commmand(motorNum !=0) is received then other
- // command can be reponsed.
- _UART_APPL_C_EXT FlagStatus uart_blDrumTestOkFlg;
- _UART_APPL_C_EXT UBYTE uart_ubPlatform;
- _UART_APPL_C_EXT UWORD uart_uwLoadTested;
- _UART_APPL_C_EXT UWORD uart_uwLoadDef;
- _UART_APPL_C_EXT UWORD * uart_ptuwLoad;
- _UART_APPL_C_EXT SWORD uart_swDrumSpdAbsNowRpm;
- _UART_APPL_C_EXT SWORD uart_swDrumSpdAbsPreRpm;
- _UART_APPL_C_EXT UWORD uart_uwDrumTestEn;
- _UART_APPL_C_EXT UWORD uart_uwACCtimeTs;
- _UART_APPL_C_EXT UWORD uart_uwACCtimePreTs;
- _UART_APPL_C_EXT FlagStatus uart_blTimeoutFlg;
- _UART_APPL_C_EXT UWORD uart_uwTimeoutCnts;
- _UART_APPL_C_EXT BOOL uart_bCommOvrTmFlg;
- _UART_APPL_C_EXT SWORD uart_swMotorStopCnt;
- _UART_APPL_C_EXT SWORD uart_swDrumSpdNowRpm; // present effected drum speed command
- _UART_APPL_C_EXT SWORD uart_swDrumSpdPreRpm; // previous effected drum speed commmand
- _UART_APPL_C_EXT UWORD uart_uwSoftwareVer;
- _UART_APPL_C_EXT UBYTE uart_ubMotorID;
- _UART_APPL_C_EXT UBYTE uart_ubMotorTemp;
- _UART_APPL_C_EXT SBYTE uart_sbIPMtemp;
- _UART_APPL_C_EXT UWORD uart_uwFaultCode;
- _UART_APPL_C_EXT SWORD uart_swDrumSpdRpm;
- _UART_APPL_C_EXT SBYTE uart_sbPhaseUCurrentA;
- _UART_APPL_C_EXT UWORD uart_uwBusVoltageV;
- _UART_APPL_C_EXT SWORD uart_swDrumSpdCmdRpm;
- _UART_APPL_C_EXT UBYTE uart_ubAckBuffer[UART_ACK_BUFFER_SIZE];
- _UART_APPL_C_EXT UBYTE uart_ubData1;
- _UART_APPL_C_EXT SWORD uart_swDrumACCRpmps; // 0821
- _UART_APPL_C_EXT SWORD uart_swMotorACCRpmps; // 0821
- _UART_APPL_C_EXT UWORD uart_uwFTbsHz;
- _UART_APPL_C_EXT SLONG uart_slSpdRefRpm;
- _UART_APPL_C_EXT SWORD uart_swTorqRefNm;
- _UART_APPL_C_EXT SWORD uart_swDrumSpdCmdPreRpm;
- #endif
- //------------------------------------------------------------------------
- /************************************************************************
- Exported Function Call Prototypes
- *************************************************************************/
- #ifdef _UART_APPL_C_
- _UART_APPL_C_EXT BOOL uart_bSwanDecoder(UBYTE *ptubBuffer, UWORD Num, UBYTE **ptptubACKbuffer, UWORD *ACKnum);
- _UART_APPL_C_EXT UWORD uart_uwCRCCcitt(const UBYTE ptubBuf[], UWORD length);
- #else
- _UART_APPL_C_EXT BOOL uart_bSwanDecoder(UBYTE *ptubBuffer, UWORD Num, UBYTE **ptptubACKbuffer, UWORD *ACKnum);
- _UART_APPL_C_EXT UWORD uart_uwCRCCcitt(const UBYTE ptubBuf[], UWORD length);
- #endif
- #endif
- /*>>>>>>>>>>>>>>>>>>>>>>>> End of Header File Inclusion Protection <<<<<<<<<<<<<<<<<<<<<<<*/
- /****************************************************************************************
- End of this File (EOF). Do not put anything after this line.
- ****************************************************************************************/
|