2025-03-05 08:27:39 +00:00
|
|
|
|
#include "parameter.h"
|
|
|
|
|
|
|
|
|
|
#pragma pack(push, 1)
|
|
|
|
|
|
|
|
|
|
typedef struct _parameterInfo {
|
|
|
|
|
float WorkCurrent; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
float WorkVoltage; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ
|
|
|
|
|
float Temperature; //<2F>¶<EFBFBD>
|
|
|
|
|
|
|
|
|
|
uint32_t upWard_Uart_Baud; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
uint32_t J1_485_Baud; //<2F><>J1_485ͨ<35>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
uint32_t J2_485_Baud; //<2F><>J2_485ͨ<35>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
uint32_t J3_485_Baud; //<2F><>J3_485ͨ<35>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
uint32_t J4_485_Baud; //<2F><>J4_485ͨ<35>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
uint32_t J5_0_485_Baud; //<2F><>J5_0_485ͨ<35>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
}parameterInfo;
|
|
|
|
|
|
|
|
|
|
#pragma pack(pop)
|
|
|
|
|
|
|
|
|
|
static parameterInfo parameter;
|
|
|
|
|
|
|
|
|
|
#define startConfigAddr 0x00
|
|
|
|
|
#define configSize (sizeof(configInfo))
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
void readConfigParameter(void)
|
|
|
|
|
{
|
|
|
|
|
configInfo tempConfig;
|
|
|
|
|
read_Flash((uint8_t *)&tempConfig, startConfigAddr, configSize);
|
|
|
|
|
|
|
|
|
|
/* <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>У<EFBFBD><D0A3>ͨ<EFBFBD><CDA8> */
|
|
|
|
|
if (tempConfig.crc == checkModebusCrc((uint8_t *)&tempConfig, configSize - 2)) {
|
|
|
|
|
parameter.J1_485_Baud = tempConfig.J1_485_Baud;
|
|
|
|
|
parameter.J2_485_Baud = tempConfig.J2_485_Baud;
|
|
|
|
|
parameter.J3_485_Baud = tempConfig.J3_485_Baud;
|
|
|
|
|
parameter.J4_485_Baud = tempConfig.J4_485_Baud;
|
|
|
|
|
parameter.J5_0_485_Baud = tempConfig.J5_0_485_Baud;
|
|
|
|
|
parameter.upWard_Uart_Baud = tempConfig.upWard_Uart_Baud;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* δͨ<CEB4><CDA8><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>Ĭ<EFBFBD>ϲ<EFBFBD><CFB2><EFBFBD> */
|
|
|
|
|
else {
|
|
|
|
|
parameter.J1_485_Baud = 9600;
|
|
|
|
|
parameter.J2_485_Baud = 9600;
|
|
|
|
|
parameter.J3_485_Baud = 9600;
|
|
|
|
|
parameter.J4_485_Baud = 9600;
|
2025-03-06 02:12:57 +00:00
|
|
|
|
parameter.J5_0_485_Baud = 115200;
|
2025-03-05 08:27:39 +00:00
|
|
|
|
parameter.upWard_Uart_Baud = 115200;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param inConfigInfo <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
void writeConfigParameter(configInfo inConfigInfo)
|
|
|
|
|
{
|
|
|
|
|
write_Flash((uint8_t *)&inConfigInfo, startConfigAddr, configSize);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
float getWorkCurrent(void)
|
|
|
|
|
{
|
|
|
|
|
return parameter.WorkCurrent;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD>ù<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
void setWorkCurrent(float Curr)
|
|
|
|
|
{
|
|
|
|
|
parameter.WorkCurrent = Curr;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
float getWorkVoltage(void)
|
|
|
|
|
{
|
|
|
|
|
return parameter.WorkVoltage;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD>ù<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
void setWorkVoltage(float Voltage)
|
|
|
|
|
{
|
|
|
|
|
parameter.WorkVoltage = Voltage;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD>õ<EFBFBD><EFBFBD>¶<EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
float getTemperature(void)
|
|
|
|
|
{
|
|
|
|
|
return parameter.Temperature;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
void setTemperature(float Temperature)
|
|
|
|
|
{
|
|
|
|
|
parameter.Temperature = Temperature;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>ͨ<EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
uint32_t getUpWard_Uart_Baud(void)
|
|
|
|
|
{
|
|
|
|
|
return parameter.upWard_Uart_Baud;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD>J1ͨ<EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
uint32_t getJ1_485_Baud(void)
|
|
|
|
|
{
|
|
|
|
|
return parameter.J1_485_Baud;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD>J2ͨ<EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
uint32_t getJ2_485_Baud(void)
|
|
|
|
|
{
|
|
|
|
|
return parameter.J2_485_Baud;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD>J3ͨ<EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
uint32_t getJ3_485_Baud(void)
|
|
|
|
|
{
|
|
|
|
|
return parameter.J3_485_Baud;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD>J4ͨ<EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
uint32_t getJ4_485_Baud(void)
|
|
|
|
|
{
|
|
|
|
|
return parameter.J4_485_Baud;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief <EFBFBD>õ<EFBFBD><EFBFBD><EFBFBD>J5_0ͨ<EFBFBD>Ų<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param
|
|
|
|
|
* @retval
|
|
|
|
|
*/
|
|
|
|
|
uint32_t getJ5_0_485_Baud(void)
|
|
|
|
|
{
|
|
|
|
|
return parameter.J5_0_485_Baud;
|
|
|
|
|
}
|