Commit f3863877 authored by 何锐's avatar 何锐

feat:上电左转闪烁,显示当前ACC电压

parent 6b0cc17f
...@@ -590,162 +590,14 @@ void Function_Check_Ctrl(uint32_t cmd) ...@@ -590,162 +590,14 @@ void Function_Check_Ctrl(uint32_t cmd)
Display_Send_Vspead(MENU_CHECK_STEP); Display_Send_Vspead(MENU_CHECK_STEP);
switch (MENU_CHECK_STEP) switch (MENU_CHECK_STEP)
{ {
case 0: case 0:
{ break;
if(CHECK_Ctrl_delay <= 10)
{
RELAY_VBAT_MCU = 0;
RELAY_DC12V_MCU = 0;
RELAY_KEY_MCU = 0;
}
else
{
RELAY_VBAT_MCU = 1;
RELAY_DC12V_MCU = 1;
RELAY_KEY_MCU = 1;
// Aima_SLF(1u, 0x04, 0x1, 1u);
// left_turn = 1;
}
break;
}
case 1: case 1:
{ break;
left_turn = 0;
if(CHECK_Ctrl_delay <= 10)
{
RELAY_VBAT_MCU = 0;
RELAY_DC12V_MCU = 0;
RELAY_KEY_MCU = 0;
}
else if ( CHECK_Ctrl_delay > 10 && CHECK_Ctrl_delay <= 60)
{
RELAY_VBAT_MCU = 1;
RELAY_DC12V_MCU = 1;
RELAY_KEY_MCU = 1;
}
else if(CHECK_Ctrl_delay > 60 && CHECK_Ctrl_delay <= 65)
{
Aima_SLF(1u, 0x03, 0x1, 1u);
}
else
{
} case 2:
// ONE_START = 1; break;
break;
}
case 2:
{
if(CHECK_Ctrl_delay <=10)
{
RELAY_VBAT_MCU = 0;
RELAY_DC12V_MCU = 0;
RELAY_KEY_MCU = 0;
}
else
{
RELAY_VBAT_MCU = 1;
RELAY_DC12V_MCU = 1;
RELAY_KEY_MCU = 0;
}
left_turn = 0;
break;
}
case 3:
{
RELAY_DC12V_MCU = 1;
RELAY_VBAT_MCU = 1;
if(ONE_KEY_ONOFF <= 20)
{
RELAY_KEY_MCU = 1;
ONE_START = 1;
}
else if(ONE_KEY_ONOFF <= 40)
{
RELAY_KEY_MCU = 0;
ONE_START = 0;
}
else if(ONE_KEY_ONOFF <= 60)
{
RELAY_KEY_MCU = 0;
ONE_START = 1;
}
else if(ONE_KEY_ONOFF <=70)
{
RELAY_KEY_MCU = 0;
ONE_START = 0;
}
else if(ONE_KEY_ONOFF>110 && ONE_KEY_ONOFF <=120)
{
ONE_START = 1;
ABC_OUT = 1;
}
else
{
ABC_OUT = 0;
}
break;
}
case 4:
{
RELAY_VBAT_MCU = 1;
RELAY_DC12V_MCU = 1;
RELAY_KEY_MCU = 1;
ONE_START = 1;
FULL_BEAM = 0;
break;
}
case 5:
{
RELAY_VBAT_MCU = 1;
RELAY_DC12V_MCU = 1;
RELAY_KEY_MCU = 1;
FULL_BEAM = 1;
ZXSW_12V = 0;
left_turn = 0;
break;
}
case 6:
{
RELAY_VBAT_MCU = 1;
RELAY_DC12V_MCU = 1;
RELAY_KEY_MCU = 1;
ZXSW_12V = 1;
FULL_BEAM = 0;
left_turn = 1;
right_turn = 0;
break;
}
case 7:
{
RELAY_VBAT_MCU = 1;
RELAY_DC12V_MCU = 1;
RELAY_KEY_MCU = 1;
ZXSW_12V = 1;
left_turn = 0;
right_turn = 1;
RELAY_LIGHTCONTROL_MCU = 0;
break;
}
case 8:
{
RELAY_VBAT_MCU = 1;
RELAY_DC12V_MCU = 1;
RELAY_KEY_MCU = 1;
ZXSW_12V = 0;
right_turn = 0;
RELAY_LIGHTCONTROL_MCU = 1;
ABC_OUT = 0;
break;
}
default:
break;
} }
} }
} }
......
...@@ -4421,6 +4421,7 @@ void Display_Send_Vspead(uint8_t menu) ...@@ -4421,6 +4421,7 @@ void Display_Send_Vspead(uint8_t menu)
uint16_t ZXSW_Voltage = 0; uint16_t ZXSW_Voltage = 0;
uint16_t Voltage_left = 0; uint16_t Voltage_left = 0;
uint16_t Voltage_right = 0; uint16_t Voltage_right = 0;
uint16_t Voltage_ACC = 0;
// static uint8_t Type_Clear_FLAG = 0; // static uint8_t Type_Clear_FLAG = 0;
if ( (Type_Clear != menu )) if ( (Type_Clear != menu ))
{ {
...@@ -4433,111 +4434,47 @@ void Display_Send_Vspead(uint8_t menu) ...@@ -4433,111 +4434,47 @@ void Display_Send_Vspead(uint8_t menu)
switch (menu) switch (menu)
{ {
case 0: case 0:
{ Voltage_ACC = ADC_Read_Signal(ADC_CH_ACC1_VOLTAGE);
if(CHECK_Ctrl_delay > 20) Voltage_left = Voltage_ACC/1000;
{ Voltage_right = (Voltage_ACC/10)%10;
CHECK_Value = 1; uint8_t mLRbuff [3] = {0x2E,Voltage_right,0xff};
} General_Number_Disp(mLRbuff, 175, 160);
} GUI_General_Digit_Display(Voltage_left, Num_15, 2, 1, ODODigitNum09PosX, 160);
TFT_LCD_Draw_Bmp(210, 160, ( uint8_t * )gImage_Dyy_words_19X224_Y166); //单位:V
break; break;
case 1: case 1:
{
if(CHECK_Ctrl_delay >= 75)
{
CHECK_Value = 1;
}
break;
}
case 2:
if(CHECK_Ctrl_delay >=20)
{
if(DIS_AD == 0)
{
TFT_LCD_Draw_Bmp(51,261,( uint8_t * )gImage_Alarm_09_Word0X51_Y261);
DIS_VALUE = 1;
}
else
{
if(DIS_VALUE == 1)
{
if(DIS_AD == 1)
{
DIS_VALUE = 0;
CHECK_Value = 1;
}
else
{
CHECK_Value = 0;
}
}
// TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR);
}
}
break; break;
case 3:
// if(CHECK_Ctrl_delay >= 100) case 2:
// {
// CHECK_Value = 1;
// }
// else
// {
// CHECK_Value = 0;
// }
if(DIS_AD == 0)
{
DIS_VALUE = 1;
TFT_LCD_Draw_Bmp(51,261,( uint8_t * )gImage_Alarm_10_Word0X51_Y261);
}
else
{
if(DIS_VALUE == 1)
{
if(DIS_AD == 1)
{
DIS_VALUE = 0;
CHECK_Value = 1;
}
else
{
CHECK_Value = 0;
}
}
// TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR);
}
break; break;
case 4:
if(CHECK_Ctrl_delay >= 30) case 3:
{
CHECK_Value = 1;
}
break; break;
case 5:
if(CHECK_Ctrl_delay >= 30) case 4:
{
CHECK_Value = 1;
}
break; break;
case 6:
ZXSW_Voltage = ADC_Read_Signal(ADC_CH_ZXSW_VOLTAGE); case 6:
Voltage_left = ZXSW_Voltage/1000; ZXSW_Voltage = ADC_Read_Signal(ADC_CH_ZXSW_VOLTAGE);
Voltage_right = (ZXSW_Voltage/10)%10; Voltage_left = ZXSW_Voltage/1000;
uint8_t mLRbuff [3] = {0x2E,Voltage_right,0xff}; Voltage_right = (ZXSW_Voltage/10)%10;
General_Number_Disp(mLRbuff, 175, 160); // uint8_t mLRbuff [3] = {0x2E,Voltage_right,0xff};
GUI_General_Digit_Display(Voltage_left, Num_15, 2, 1, ODODigitNum09PosX, 160); General_Number_Disp(mLRbuff, 175, 160);
TFT_LCD_Draw_Bmp(210, 160, ( uint8_t * )gImage_Dyy_words_19X224_Y166); //单位:V GUI_General_Digit_Display(Voltage_left, Num_15, 2, 1, ODODigitNum09PosX, 160);
if(ZXSW_Voltage >= 10000) TFT_LCD_Draw_Bmp(210, 160, ( uint8_t * )gImage_Dyy_words_19X224_Y166); //单位:V
{ if(ZXSW_Voltage >= 10000)
CHECK_Value = 1; {
TFT_LCD_Draw_Bmp(51,261,( uint8_t * )gImage_Alarm_11_Word0X51_Y261); CHECK_Value = 1;
} TFT_LCD_Draw_Bmp(51,261,( uint8_t * )gImage_Alarm_11_Word0X51_Y261);
else }
{ else
TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR); {
} TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR);
}
break; break;
case 7:
case 7:
ZXSW_Voltage = ADC_Read_Signal(ADC_CH_ZXSW_VOLTAGE); ZXSW_Voltage = ADC_Read_Signal(ADC_CH_ZXSW_VOLTAGE);
Voltage_left = ZXSW_Voltage/1000; Voltage_left = ZXSW_Voltage/1000;
Voltage_right = (ZXSW_Voltage/10)%10; Voltage_right = (ZXSW_Voltage/10)%10;
...@@ -4555,28 +4492,29 @@ void Display_Send_Vspead(uint8_t menu) ...@@ -4555,28 +4492,29 @@ void Display_Send_Vspead(uint8_t menu)
TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR); TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR);
} }
break; break;
case 8:
GKDD_Voltage = ADC_Read_Signal(ADC_CH_GKDD_VOLTAGE);
Voltage_left = GKDD_Voltage/1000;
Voltage_right = (GKDD_Voltage/10)%10;
uint8_t mLRbuff2 [] = {0x2E,Voltage_right,0xff};
General_Number_Disp(mLRbuff2, 175, 160);
GUI_General_Digit_Display(Voltage_left, Num_15, 2, 1, ODODigitNum09PosX, 160);
TFT_LCD_Draw_Bmp(210, 160, ( uint8_t * )gImage_Dyy_words_19X224_Y166); //单位:V
if(GKDD_Voltage >= 10000)
{
CHECK_Value = 1;
TFT_LCD_Draw_Bmp(51,261,( uint8_t * )gImage_Alarm_06_Word0X51_Y261);
}
else
{
TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR);
}
case 8:
GKDD_Voltage = ADC_Read_Signal(ADC_CH_GKDD_VOLTAGE);
Voltage_left = GKDD_Voltage/1000;
Voltage_right = (GKDD_Voltage/10)%10;
uint8_t mLRbuff2 [] = {0x2E,Voltage_right,0xff};
General_Number_Disp(mLRbuff2, 175, 160);
GUI_General_Digit_Display(Voltage_left, Num_15, 2, 1, ODODigitNum09PosX, 160);
TFT_LCD_Draw_Bmp(210, 160, ( uint8_t * )gImage_Dyy_words_19X224_Y166); //单位:V
if(GKDD_Voltage >= 10000)
{
CHECK_Value = 1;
TFT_LCD_Draw_Bmp(51,261,( uint8_t * )gImage_Alarm_06_Word0X51_Y261);
}
else
{
TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR);
}
break;
default:
MENU_CHECK_STEP = 0;
break; break;
default:
MENU_CHECK_STEP = 0;
break;
} }
} }
......
...@@ -1094,7 +1094,6 @@ uint32_t R485_SendMACaddress_0x42(void) ...@@ -1094,7 +1094,6 @@ uint32_t R485_SendMACaddress_0x42(void)
R485_ID42h.Sig.BLE_MAC02 = 0; R485_ID42h.Sig.BLE_MAC02 = 0;
u32sendendflag = R485_Send(0x42, R485_ID42h.Msg, sizeof(R485_ID42h.Msg)); u32sendendflag = R485_Send(0x42, R485_ID42h.Msg, sizeof(R485_ID42h.Msg));
RS485_send_time = 0; RS485_send_time = 0;
} }
RS485_TX_finish = 1; RS485_TX_finish = 1;
return u32sendendflag; return u32sendendflag;
...@@ -1103,28 +1102,40 @@ uint32_t R485_SendMACaddress_0x42(void) ...@@ -1103,28 +1102,40 @@ uint32_t R485_SendMACaddress_0x42(void)
uint32_t R485_Send_test(void) uint32_t R485_Send_test(void)
{ {
uint32_t u32sendendflag = 0; uint32_t u32sendendflag = 0;
memset(R485_ID42h.Msg, 0x00, 20);
switch (MENU_CHECK_STEP) switch (MENU_CHECK_STEP)
{ {
case 0: case 0:
BCMLED.Sig.Lamp = 0x01; //左转
BCMLED.Sig.FlickerFrequency = 0x05; //频率
u32sendendflag = R485_Send(0x09, BCMLED.Msg, sizeof(BCMLED.Msg));
// Dashboard.Sig.textbit2 = 0x0A; //车速
// Dashboard.Sig.textbit7 = 0x7F; //P档
// u32sendendflag = R485_Send(0x04, Dashboard.Msg, sizeof(Dashboard.Msg));
break; break;
case 1: case 1:
break; break;
case 2: case 2:
break; break;
case 3: case 3:
AIMAtest.Sig.PGear = 0; // AIMAtest.Sig.PGear = 0;
u32sendendflag = R485_Send(0x05, AIMAtest.Msg, sizeof(AIMAtest.Msg)); // u32sendendflag = R485_Send(0x05, AIMAtest.Msg, sizeof(AIMAtest.Msg));
break; break;
case 4: case 4:
AIMAtest.Sig.PGear = 1; // AIMAtest.Sig.PGear = 1;
u32sendendflag = R485_Send(0x05, AIMAtest.Msg, sizeof(AIMAtest.Msg)); // u32sendendflag = R485_Send(0x05, AIMAtest.Msg, sizeof(AIMAtest.Msg));
break; break;
case 5: case 5:
AIMAtest.Sig.PGear = 0; // AIMAtest.Sig.PGear = 0;
u32sendendflag = R485_Send(0x05, AIMAtest.Msg, sizeof(AIMAtest.Msg)); // u32sendendflag = R485_Send(0x05, AIMAtest.Msg, sizeof(AIMAtest.Msg));
break; break;
case 6: case 6:
break; break;
......
...@@ -1104,44 +1104,51 @@ typedef union ...@@ -1104,44 +1104,51 @@ typedef union
typedef union typedef union
{ {
uint8_t Msg[20]; uint8_t Msg[7];
struct struct
{ {
uint8_t : 8; /* 0预留 */ uint8_t text1 : 8;
uint8_t : 8; /* 1预留 */ uint8_t text2 : 8;
uint8_t : 8; uint8_t text3 : 8;
uint8_t text4 : 8;
uint8_t : 5; uint8_t text5 : 8;
uint8_t PGear : 1;
uint8_t : 2;
uint8_t : 8; /* 4预留 */
uint8_t : 8; /* 5预留 */
uint8_t : 8; /* 6预留 */
uint8_t : 8; /* 7预留 */
uint8_t : 8; /* 8预留 */
uint8_t : 8; /* 9预留 */
uint8_t : 8; /* 10预留 */
uint8_t : 8; /* 11预留 */
uint8_t : 8; /* 12预留 */
uint8_t : 8; /* 13预留 */
uint8_t : 8; /* 14预留 */
uint8_t : 8; /* 15预留 */
uint8_t : 8; /* 16预留 */
uint8_t : 8; /* 17预留 */
uint8_t : 8; /* 18预留 */
uint8_t : 8; /* 19预留 */
uint8_t : 8; /* 20预留 */
uint8_t Lamp : 4;
uint8_t FlickerFrequency : 4;
uint8_t text7 : 8;
}Sig; }Sig;
}_BCMLED;
typedef union
}_AIMAtest; {
uint8_t Msg[22];
struct
{
uint8_t textbit1 : 8;
uint8_t textbit2 : 8; //车速
uint8_t textbit3 : 8;
uint8_t textbit4 : 8;
uint8_t textbit5 : 8;
uint8_t textbit6 : 8;
uint8_t textbit7 : 8; //车身状态
uint8_t textbit8 : 8;
uint8_t textbit9 : 8;
uint8_t textbit10 : 8;
uint8_t textbit11 : 8;
uint8_t textbit12 : 8;
uint8_t textbit13 : 8;
uint8_t textbit14 : 8;
uint8_t textbit15 : 8;
uint8_t textbit16 : 8;
uint8_t textbit17 : 8;
uint8_t textbit18 : 8;
uint8_t textbit19 : 8;
uint8_t textbit20 : 8;
uint8_t textbit21 : 8;
uint8_t textbit22 : 8;
}Sig;
}_Dashboard;
typedef struct typedef struct
{ {
...@@ -1154,7 +1161,8 @@ typedef struct ...@@ -1154,7 +1161,8 @@ typedef struct
uint8_t weizhilight1; uint8_t weizhilight1;
uint32_t power1; uint32_t power1;
}LineSta; }LineSta;
extern _AIMAtest AIMAtest; extern _BCMLED BCMLED;
extern _Dashboard Dashboard;
extern LineSta LineGetSta; extern LineSta LineGetSta;
extern _ID0X40h_Data R485_ID40h; extern _ID0X40h_Data R485_ID40h;
extern _ID0X48h_Data R485_ID48h; extern _ID0X48h_Data R485_ID48h;
......
...@@ -11,9 +11,9 @@ ...@@ -11,9 +11,9 @@
#define ABC_OUT GPIO_OUT_PORT00_PIN04 //ABC轮动报警输出 #define ABC_OUT GPIO_OUT_PORT00_PIN04 //ABC轮动报警输出
#define BCDD_MCU GPIO_OUT_PORT10_PIN00 //脚撑 #define BCDD_MCU GPIO_OUT_PORT10_PIN00 //脚撑
#define RELAY_VBAT_MCU GPIO_OUT_PORT10_PIN10 #define RELAY_VBAT_MCU GPIO_OUT_PORT10_PIN10 //VBAT
#define RELAY_DC12V_MCU GPIO_OUT_PORT10_PIN09 #define RELAY_DC12V_MCU GPIO_OUT_PORT10_PIN09 //12V一线通
#define RELAY_KEY_MCU GPIO_OUT_PORT10_PIN07 #define RELAY_KEY_MCU GPIO_OUT_PORT10_PIN07 //ACC
#define RELAY_LIGHTCONTROL_MCU GPIO_OUT_PORT10_PIN06 //光控大灯MCU #define RELAY_LIGHTCONTROL_MCU GPIO_OUT_PORT10_PIN06 //光控大灯MCU
#define ZXSW_12V GPIO_OUT_PORT11_PIN05 //转向12V #define ZXSW_12V GPIO_OUT_PORT11_PIN05 //转向12V
......
...@@ -32,7 +32,8 @@ _ID0X42h_Data R485_ID42h; ...@@ -32,7 +32,8 @@ _ID0X42h_Data R485_ID42h;
_ID0X4Ah_Data R485_ID4Ah; _ID0X4Ah_Data R485_ID4Ah;
_ID0X4Dh_Data R485_ID4Dh; _ID0X4Dh_Data R485_ID4Dh;
LineSta LineGetSta; LineSta LineGetSta;
_AIMAtest AIMAtest; _BCMLED BCMLED;
_Dashboard Dashboard;
void R485_TX_Init(void) void R485_TX_Init(void)
{ {
...@@ -177,24 +178,16 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len) ...@@ -177,24 +178,16 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len)
int i = 0; int i = 0;
uint16_t checksum = 0; uint16_t checksum = 0;
uint32_t frameLen; uint32_t frameLen;
// if (len + R485_DATA_PACKAGE_MIN_LEN > 71)
// {
// return 0;
// }
// if (len != 64)
// {
// return 0;
// }
dataBuf[0] = 0xEF; /* 帧头 */ dataBuf[0] = 0xEF; /* 帧头 */
dataBuf[1] = 0xDD;/* ID */ dataBuf[1] = 0xDD;/* 连续帧 */
dataBuf[2] = 0x8D;/* ID */ dataBuf[2] = 0x8D;/* 连续帧 */
dataBuf[3] = cmdID; /* 设备地址 */ dataBuf[3] = cmdID; /* 设备地址 */
// dataBuf[3] = R485_DATA_LEN; /* 长度 固定64Byte */
dataBuf[4] = 0x80;/* 命令 */ dataBuf[4] = 0x80;/* 命令 */
dataBuf[5] = len; dataBuf[5] = len + 1;
frameLen = 6; dataBuf[6] = 0x01;
frameLen = 7;
// 数据 Data // 数据 Data
for (i = 0; i < len; ++i) for (i = 0; i < len; ++i)
{ {
...@@ -202,9 +195,7 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len) ...@@ -202,9 +195,7 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len)
frameLen++; frameLen++;
} }
// checksum = Yadi_CAL_Data_Sum(&dataBuf[2], R485_DATA_LEN + 2); checksum = RS485_CRC16_Calc(&dataBuf[0], len + 7);
checksum = RS485_CRC16_Calc(&dataBuf[0], len + 6);
// checksum = 0;
dataBuf[frameLen] = checksum & 0xff; dataBuf[frameLen] = checksum & 0xff;
frameLen++; frameLen++;
...@@ -212,29 +203,19 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len) ...@@ -212,29 +203,19 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len)
frameLen++; frameLen++;
dataBuf[frameLen] = 0xEE; dataBuf[frameLen] = 0xEE;
frameLen++; frameLen++;
// if (frameLen != 71)
// {
// return 0;
// }
uint8_t sendresult = 0; uint8_t sendresult = 0;
sendresult = UART_Ch0_Send_Multiple_Byte(dataBuf,frameLen); sendresult = UART_Ch0_Send_Multiple_Byte(dataBuf,frameLen);
RS485_TX_finish = 1; RS485_TX_finish = 1;
// while(1) if(sendresult == 0)
// { {
if(sendresult == 0)
{
return sendresult;
}
else
{
sendresult = UART_Ch0_Send_Multiple_Byte(dataBuf,frameLen);
}
return sendresult; return sendresult;
// } }
else
{
sendresult = UART_Ch0_Send_Multiple_Byte(dataBuf,frameLen);
}
return sendresult;
} }
uint32_t R485_AIMA_Send(void) uint32_t R485_AIMA_Send(void)
{ {
uint8_t dataBuf[] = { uint8_t dataBuf[] = {
...@@ -267,150 +248,29 @@ uint8_t sendmsgAll[8]; ...@@ -267,150 +248,29 @@ uint8_t sendmsgAll[8];
uint32_t sendnum = 1; uint32_t sendnum = 1;
void RS485_User_Tx_Data(void) void RS485_User_Tx_Data(void)
{ {
uint8_t flag = 0;
uint32_t sendfinishflag = 0;
#if (0) switch (RS485_send_num)
uint8_t flag = 0; {
uint32_t sendfinishflag = 0; case RS485_Tx_ID48_Idx:
// if(firstflag = 0) sendfinishflag = R485_Send_test();
// { RS485_TX_finish = 1;
memcpy(lastdata,nowdata,4); if(sendfinishflag == 0)
// } {
// m if(RS485_TX_finish == 1)
sendmsgAll[0] = (uint8_t)sendnum & 0xFF;
sendmsgAll[1] = ((uint8_t)(sendnum >>8)) & 0xFF;
sendmsgAll[2] = ((uint8_t)(sendnum >>16)) & 0xFF;
sendmsgAll[3] = ((uint8_t)(sendnum >>24)) & 0xFF;
sendmsgAll[4] = ((uint8_t)(sendnum)) & 0xFF;
sendmsgAll[5] = ((uint8_t)(sendnum >>8)) & 0xFF;
sendmsgAll[6] = ((uint8_t)(sendnum >>16)) & 0xFF;
sendmsgAll[7] = ((uint8_t)(sendnum >>24)) & 0xFF;
if(RS485_TX_finish == 0)
{ {
// LINE_OUT_NEG_09 = 1; RS485_send_time = 0;
switch (RS485_send_num)
{
case RS485_Tx_ID48_Idx:
sendfinishflag = R485_Send(0x70, sendmsgAll, 8);
RS485_TX_finish = 1;
if(sendfinishflag == 0)
{
if(RS485_TX_finish == 1)
{
// RS485_send_num++;
// lastdata[0] = (uint8_t)sendnum & 0xFF;
// lastdata[1] = ((uint8_t)(sendnum >>8)) & 0xFF;
// lastdata[2] = ((uint8_t)(sendnum >>16)) & 0xFF;
// lastdata[3] = ((uint8_t)(sendnum >>24)) & 0xFF;
nowdata[0] = (uint8_t)sendnum & 0xFF;
nowdata[1] = ((uint8_t)(sendnum >>8)) & 0xFF;
nowdata[2] = ((uint8_t)(sendnum >>16)) & 0xFF;
nowdata[3] = ((uint8_t)(sendnum >>24)) & 0xFF;
sendnum++;
}
}
break;
case RS485_Tx_ID49_Idx:
sendfinishflag = R485_Send(0x71, sendmsgAll, 8);
RS485_TX_finish = 1;
if(sendfinishflag == 0)
{
if(RS485_TX_finish == 1)
{
// sendnum++;
RS485_send_num ++;
}
}
// uart_wait_tx_done(R485_UART_PORT, 100);
break;
case RS485_Tx_ID4A_Idx:
sendfinishflag = R485_Send(0x72, sendmsgAll, sizeof(sendmsgAll));
RS485_TX_finish = 1;
if(sendfinishflag == 0)
{
RS485_TX_finish = 1;
if(RS485_TX_finish == 1)
{
RS485_send_num++;
}
}
break;
case 3:
sendfinishflag = R485_Send(0x73, sendmsgAll, sizeof(sendmsgAll));
RS485_TX_finish = 1;
if(sendfinishflag == 0)
{
RS485_TX_finish = 1;
if(RS485_TX_finish == 1)
{
RS485_send_num++;
}
}
break;
case 4:
sendfinishflag = R485_Send(0x74, sendmsgAll, sizeof(sendmsgAll));
RS485_TX_finish = 1;
if(sendfinishflag == 0)
{
RS485_TX_finish = 1;
if(RS485_TX_finish == 1)
{
RS485_send_num++;
}
}
break;
default:
// sendnum++;
RS485_send_num = 0;
break;
RS485_TX_finish = 1;
}
} }
#endif }
#if(1) break;
uint8_t flag = 0;
uint32_t sendfinishflag = 0; default:
flag = 1;
// if(RS485_send_time > 3000) RS485_send_time = 0;
// { RS485_send_num = 0;
switch (RS485_send_num) break;
{ }
case RS485_Tx_ID48_Idx:
sendfinishflag = R485_Send_test();
RS485_TX_finish = 1;
if(sendfinishflag == 0)
{
if(RS485_TX_finish == 1)
{
// sendnum++;
RS485_send_time = 0;
// RS485_send_num ++;
}
}
break;
default:
flag = 1;
RS485_send_time = 0;
RS485_send_num = 0;
break;
}
#endif
} }
void backsend(void) void backsend(void)
{ {
......
...@@ -74,7 +74,7 @@ ADC_Data_st_t stADCData[ADC_SIGNAL_CH_NUMBER]; ...@@ -74,7 +74,7 @@ ADC_Data_st_t stADCData[ADC_SIGNAL_CH_NUMBER];
const uint8_t u8ADCChList[ADC_CONV_CH_NUMBER] = const uint8_t u8ADCChList[ADC_CONV_CH_NUMBER] =
{ {
9U, 15U, 11U, 8U, 9U, 15U, 11U, 8U, 7U,
}; };
const ADC_Ch_Cfg_st_t stADCChCfg[ADC_SIGNAL_CH_NUMBER] = const ADC_Ch_Cfg_st_t stADCChCfg[ADC_SIGNAL_CH_NUMBER] =
...@@ -83,6 +83,7 @@ const ADC_Ch_Cfg_st_t stADCChCfg[ADC_SIGNAL_CH_NUMBER] = ...@@ -83,6 +83,7 @@ const ADC_Ch_Cfg_st_t stADCChCfg[ADC_SIGNAL_CH_NUMBER] =
{ 1U, 0U, 0U, 0U, 0U, 1U, ADC_Voltage_Calc_Circuit101,}, { 1U, 0U, 0U, 0U, 0U, 1U, ADC_Voltage_Calc_Circuit101,},
{ 2U, 0U, 0U, 0U, 0U, 1U, ADC_Voltage_Calc_Circuit102,}, { 2U, 0U, 0U, 0U, 0U, 1U, ADC_Voltage_Calc_Circuit102,},
{ 3U, 0U, 0U, 0U, 0U, 1U, ADC_Voltage_Calc_Circuit102,}, { 3U, 0U, 0U, 0U, 0U, 1U, ADC_Voltage_Calc_Circuit102,},
{ 4U, 0U, 0U, 0U, 0U, 1U, ADC_Voltage_Calc_Circuit102,},
}; };
const ADC_Res_List_st_t stADCResList[ADC_SIGNAL_CH_NUMBER] = const ADC_Res_List_st_t stADCResList[ADC_SIGNAL_CH_NUMBER] =
...@@ -91,6 +92,7 @@ const ADC_Res_List_st_t stADCResList[ADC_SIGNAL_CH_NUMBER] = ...@@ -91,6 +92,7 @@ const ADC_Res_List_st_t stADCResList[ADC_SIGNAL_CH_NUMBER] =
{ 0U, 100000U, 0U, 0U,}, { 0U, 100000U, 0U, 0U,},
{ 3300000U, 1000000U, 0U, 0U,}, { 3300000U, 1000000U, 0U, 0U,},
{ 3300000U, 1000000U, 0U, 0U,}, { 3300000U, 1000000U, 0U, 0U,},
{ 3300000U, 100000U, 0U, 0U,},
}; };
/* Private function prototypes ----------------------------------------------*/ /* Private function prototypes ----------------------------------------------*/
......
...@@ -31,11 +31,12 @@ enum ADCChName ...@@ -31,11 +31,12 @@ enum ADCChName
ADC_CH_KL30_VOLTAGE, ADC_CH_KL30_VOLTAGE,
ADC_CH_GKDD_VOLTAGE, ADC_CH_GKDD_VOLTAGE,
ADC_CH_ZXSW_VOLTAGE, ADC_CH_ZXSW_VOLTAGE,
ADC_CH_ACC1_VOLTAGE,
}; };
/* Exported macro ------------------------------------------------------------*/ /* Exported macro ------------------------------------------------------------*/
#define ADC_TOTAL_CH_NUMBER (4U) #define ADC_TOTAL_CH_NUMBER (5U)
#define ADC_SIGNAL_CH_NUMBER (4U) #define ADC_SIGNAL_CH_NUMBER (5U)
#define ADC_REF_VOLTAGE u16ADCRefVoltage #define ADC_REF_VOLTAGE u16ADCRefVoltage
/* Exported variables --------------------------------------------------------*/ /* Exported variables --------------------------------------------------------*/
......
...@@ -114,6 +114,8 @@ void Sys_Startup_Init(void) ...@@ -114,6 +114,8 @@ void Sys_Startup_Init(void)
// UART_Init(UART_RLIN31, &loc_config); // UART_Init(UART_RLIN31, &loc_config);
// Auto_ONOFF = 1; // Auto_ONOFF = 1;
// AutoFlag = 1; // AutoFlag = 1;
RELAY_VBAT_MCU = 1;
RELAY_KEY_MCU = 1;
} }
/*********************************************************************** /***********************************************************************
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment