Commit cb75a710 authored by 崔立宝's avatar 崔立宝

恢复被新诊断屏掉的配置项0x3300

parent 62b1fc72
This diff is collapsed.
This diff is collapsed.
S019000007473959573730313030303032354141202020202000CE
S123C0A00000000000000100000000000000010000000000000000000000000000800000FA
S9030000FC
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
OPEN source 0 0 60 100
OPEN source 0 0 49 100
Source < attributes TOOLTIP on,TOOLTIP_FORMAT signed,TOOLTIP_MODE details,FREEZE off,MARKS off
OPEN assembly 60 0 40 31
Assembly < attributes ADR on,CODE off,ABSADR on,SYMB off,FORMAT Auto,FREEZE off,TOPPC 0x69EC
Assembly < attributes ADR on,CODE off,ABSADR on,SYMB off,FORMAT Auto,FREEZE off,TOPPC 0xF780DB
OPEN procedure 0 39 60 17
Procedure < attributes VALUES on,TYPES off
OPEN register 60 31 40 25
......@@ -10,7 +10,7 @@ OPEN memory 60 56 40 22
Memory < attributes FORMAT hex,COMPLEMENT None,WORD 1,ASC on,ADR on,MODE automatic,UPDATERATE 10,SHOW_ADDRESSSPACE 0,ADDRESS 0x80
OPEN data 0 56 60 22
Data:1 < attributes SCOPE global,COMPLEMENT None,FORMAT Symb,MODE automatic,SORT NotSort,UPDATERATE 10,NAMEWIDTH 16
OPEN data 60 1 60 98
OPEN data 50 1 70 98
Data:2 < attributes SCOPE local,COMPLEMENT None,FORMAT Symb,MODE periodical,SORT NotSort,UPDATERATE 1,NAMEWIDTH 16
OPEN command 60 78 40 22
Command < attributes CACHESIZE 1000
......
......@@ -324,26 +324,6 @@
<SETTING><NAME>FrameworkPath</NAME><VALUE>false</VALUE></SETTING>
<SETTING><NAME>HostFlags</NAME><VALUE>All</VALUE></SETTING>
</SETTING>
<SETTING>
<SETTING><NAME>SearchPath</NAME>
<SETTING><NAME>Path</NAME><VALUE>..\..\&#200;&#188;&#211;&#205;&#178;&#223;&#194;&#212;\release20180404V2.4</VALUE></SETTING>
<SETTING><NAME>PathFormat</NAME><VALUE>Windows</VALUE></SETTING>
<SETTING><NAME>PathRoot</NAME><VALUE>Project</VALUE></SETTING>
</SETTING>
<SETTING><NAME>Recursive</NAME><VALUE>false</VALUE></SETTING>
<SETTING><NAME>FrameworkPath</NAME><VALUE>false</VALUE></SETTING>
<SETTING><NAME>HostFlags</NAME><VALUE>All</VALUE></SETTING>
</SETTING>
<SETTING>
<SETTING><NAME>SearchPath</NAME>
<SETTING><NAME>Path</NAME><VALUE>..\..\&#200;&#188;&#211;&#205;&#178;&#223;&#194;&#212;\release20180423V2.5</VALUE></SETTING>
<SETTING><NAME>PathFormat</NAME><VALUE>Windows</VALUE></SETTING>
<SETTING><NAME>PathRoot</NAME><VALUE>Project</VALUE></SETTING>
</SETTING>
<SETTING><NAME>Recursive</NAME><VALUE>false</VALUE></SETTING>
<SETTING><NAME>FrameworkPath</NAME><VALUE>false</VALUE></SETTING>
<SETTING><NAME>HostFlags</NAME><VALUE>All</VALUE></SETTING>
</SETTING>
<SETTING>
<SETTING><NAME>SearchPath</NAME>
<SETTING><NAME>Path</NAME><VALUE>Sources\Device\src\YGV642_SPI_Flashs</VALUE></SETTING>
......@@ -832,7 +812,7 @@
<!-- Settings for "Panel for Assembler for HC12" panel -->
<SETTING><NAME>Panel for Assembler for HC12</NAME>
<SETTING><NAME>Options</NAME><VALUE> -CpuHCS12X -Mb -MapFLASH </VALUE></SETTING>
<SETTING><NAME>Options</NAME><VALUE>-CPUHCS12X -Mb -MapFlash</VALUE></SETTING>
<SETTING><NAME>UseDecoder</NAME><VALUE>0</VALUE></SETTING>
<SETTING><NAME>EchoCommandLine</NAME><VALUE>0</VALUE></SETTING>
</SETTING>
......@@ -1050,13 +1030,6 @@
<FILEKIND>Unknown</FILEKIND>
<FILEFLAGS>Debug</FILEFLAGS>
</FILE>
<FILE>
<PATHTYPE>Name</PATHTYPE>
<PATH>Project.map</PATH>
<PATHFORMAT>Windows</PATHFORMAT>
<FILEKIND>Text</FILEKIND>
<FILEFLAGS>Debug</FILEFLAGS>
</FILE>
<FILE>
<PATHTYPE>Name</PATHTYPE>
<PATH>main.c</PATH>
......@@ -1953,13 +1926,6 @@
<FILEKIND>Text</FILEKIND>
<FILEFLAGS>Debug</FILEFLAGS>
</FILE>
<FILE>
<PATHTYPE>Name</PATHTYPE>
<PATH>readme.txt</PATH>
<PATHFORMAT>Windows</PATHFORMAT>
<FILEKIND>Text</FILEKIND>
<FILEFLAGS></FILEFLAGS>
</FILE>
<FILE>
<PATHTYPE>Name</PATHTYPE>
<PATH>Sound_Tracks.h</PATH>
......@@ -2113,11 +2079,6 @@
<PATH>main.c</PATH>
<PATHFORMAT>Windows</PATHFORMAT>
</FILEREF>
<FILEREF>
<PATHTYPE>Name</PATHTYPE>
<PATH>Project.map</PATH>
<PATHFORMAT>Windows</PATHFORMAT>
</FILEREF>
<FILEREF>
<PATHTYPE>Name</PATHTYPE>
<PATH>main.h</PATH>
......@@ -2753,11 +2714,6 @@
<PATH>API_BD8379.c</PATH>
<PATHFORMAT>Windows</PATHFORMAT>
</FILEREF>
<FILEREF>
<PATHTYPE>Name</PATHTYPE>
<PATH>readme.txt</PATH>
<PATHFORMAT>Windows</PATHFORMAT>
</FILEREF>
<FILEREF>
<PATHTYPE>Name</PATHTYPE>
<PATH>Sound_Tracks.h</PATH>
......@@ -2858,12 +2814,6 @@
<GROUPLIST>
<GROUP><NAME>FuelProcessor</NAME>
<FILEREF>
<TARGETNAME>Standard</TARGETNAME>
<PATHTYPE>Name</PATHTYPE>
<PATH>readme.txt</PATH>
<PATHFORMAT>Windows</PATHFORMAT>
</FILEREF>
<FILEREF>
<TARGETNAME>Standard</TARGETNAME>
<PATHTYPE>Name</PATHTYPE>
......@@ -3405,12 +3355,6 @@
<PATH>WuZhengProject7.0.map</PATH>
<PATHFORMAT>Windows</PATHFORMAT>
</FILEREF>
<FILEREF>
<TARGETNAME>Standard</TARGETNAME>
<PATHTYPE>Name</PATHTYPE>
<PATH>Project.map</PATH>
<PATHFORMAT>Windows</PATHFORMAT>
</FILEREF>
<FILEREF>
<TARGETNAME>Standard</TARGETNAME>
<PATHTYPE>Name</PATHTYPE>
......
//背光调节
#ifndef _BackLight_H_
#define _BackLight_H_
#include "GPIO.h"
#include "PWM.h"
//#include "TIMER0.h"
......@@ -31,7 +32,6 @@
#define BL_OFF_TIME_DOOR_OPEN_ONLY 150
/******************************************************************************
结构声明
******************************************************************************/
......
#ifndef _Common_H_
#define _Common_H_
#include "CRG.h"
#include "stdint.h"
#include "mc9s12xhy256.h"
......@@ -134,6 +135,7 @@
#define cnRSBufLen 33 //串口接收缓存区长度
#define cnRSDatLen cnRSBufLen-3 //串口接收数据区最大长度
#define cnCZSB_BJDJ_WBD 12 //车,转速表 1度等于12微步
extern const uint8_t CommandNCK[5];
extern uint8_t RSB_P;
extern uint8_t RX_BUF[cnRSBufLen]; //串口接收缓存区
......
......@@ -99,8 +99,7 @@ typedef struct //35 byte
uint8_t bVirtualVal;
uint8_t bCheckSun;
uint8_t N;
}_EE_MeterInfo;
} _EE_MeterInfo;
extern _MeterPos g_voltageMeter;
......
......@@ -7,11 +7,11 @@
#include "TSzhen.h"
#include "LCD_SEG.h"
#include "main.h"
extern uint32_t ESpeedMicrostep;
extern uint32_t VSpeedMicrostep;
extern uint8_t CoolantTempSeg;
//----hyq--20190430
extern uint8_t ContrlorResumeofTEMP; //水温表控制标志位
......@@ -83,6 +83,7 @@ static const uint16_t GaugesSpeedoMeterSegDecTable[] =
/* 14 */ 1490,
/* 15 */ 1590,
};
#define GAUGES_TOTAL_SPEEDOMETER_SEG (sizeof(GaugesSpeedoMeterSegIncTable) / 2)
/******************************************************************************
......@@ -235,6 +236,7 @@ static const uint16_t GaugesGAS2DecTable[] =
};
#define GAUGES_GAS2_SEG (sizeof(GaugesGAS2IncTable) / 2)
typedef struct
{
uint16_t VSpeedBackup;
......
......@@ -24,8 +24,8 @@ extern uint8_t MenuDisplay;
extern uint16_t keytime;
extern uint8_t SetMenu ; //设置页 0 时间设置 1 雷达设置 2 退出
extern uint8_t SetMenupage ; //显示页 0 设置页 1 时间设置 2 雷达设置
extern uint8_t SetMenu; //设置页 0 时间设置 1 雷达设置 2 退出
extern uint8_t SetMenupage; //显示页 0 设置页 1 时间设置 2 雷达设置
extern uint8_t SetRadar; //雷达显示 0 开启 1 关闭 白条
extern uint8_t SetDot; //雷达设置 0 开启 1 关闭 圆点
extern uint8_t SetHoofswear; //蹄片磨损报警设置
......@@ -43,8 +43,6 @@ extern uint8_t SetHour_Ten; //小时
extern uint8_t SetHour_One; //小时设置
extern uint8_t Maintain_clear;
void Menu_Processing_Service(void);
void Time_Seting(void);
void App_CalBatBoard(void);
......
......@@ -14,6 +14,7 @@
#include "Communication_Over_CAN.h"
#include "Non_volatile_Memorys.h"
#include "Data_Processor.h"
#define POPUP_UNIT_FL 0x01
#define POPUP_UNIT_FR 0x02
#define POPUP_UNIT_RL 0x04
......@@ -21,7 +22,7 @@
#define POPUP_UNIT_TR 0x10
#define POPUP_UNIT_HO 0x20
extern uint8_t CAN_ERROR ;
extern uint8_t CAN_ERROR;
void Popups_Polling(void);
void Popups_Management_Service(void);
......
#ifndef _TSzhen_H_
#define _TSzhen_H_
#include "UDS_ISO14229_Services.h"
#include "Data_Processor.h"
#include "Common.h"
......@@ -15,9 +16,11 @@
#define cnSWB_KJDTBLen 5
//#define cnWCjd 9 //8度
//#define cnCZBWBjd 12 //车,转速表1度=12微步
//#define cnSYBWBjd 12 //水油表1度=12微步
extern INT16U b_CSB_JD[cnCSB_KJDTBLen]; //车速表刻度--角度数据组
extern INT16U b_ZSB_JD[cnZSB_KJDTBLen]; //转速表刻度--角度数据组
typedef struct
......@@ -29,6 +32,7 @@ typedef struct
INT8U no_used1; //保留
INT8U no_used2; //保留
INT16U YB_DTXS; //油表输入的动态系数
INT16U SB_DTXS; //水表输入的动态系数
INT16U ZS_G100; //转速表的缸数(100倍)
......@@ -42,13 +46,13 @@ typedef struct
} KDVJDSTRUCT;
//----hyq--20190505 ĸ޸
#define cnZSBFrJDTBLen 4+1
#define cnZSBFrJDTBLen 4 + 1
extern KDVJDSTRUCT ZSBFrJDTB[cnZSBFrJDTBLen];
#define cnCSBFrJDTBLen 4+1
#define cnCSBFrJDTBLen 4 + 1
extern KDVJDSTRUCT CSBFrJDTB[cnCSBFrJDTBLen];
#define cnSUIBVJDTBLen 8+1
#define cnSUIBVJDTBLen 8 + 1
extern KDVJDSTRUCT SUIBVJDTB[cnSUIBVJDTBLen];
#define cnYOUBVJDTBLen 8+1
#define cnYOUBVJDTBLen 8 + 1
extern KDVJDSTRUCT YOUBVJDTB[cnYOUBVJDTBLen];
/*
......
#ifndef _TELLTALES_H_
#define _TELLTALES_H_
#include "GUI.h"
#include "CAN_Communication_Matrix.h"
#include "Line_In.h"
......@@ -14,6 +15,7 @@
#include "Sound_Scheduler.h"
#include "Sound_Player.h"
#include "main.h"
typedef struct
{
uint8_t LastLeft;
......@@ -73,6 +75,7 @@ extern uint8_t DriveDoorSts;
extern uint8_t PsngrDoorSts;
extern uint8_t LED_T_BOX_RVM;
extern uint8_t TelltaleLCD_Flag33;
//Ļָʾ״̬ʶ
typedef union
{
......@@ -111,7 +114,7 @@ typedef union
uint8_t LCD30 : 1; // 30
uint8_t LCD31 : 1; // 31
uint8_t LCD32 : 1; // 32
}Sig;
} Sig;
} TelltaleLCD;
extern TelltaleLCD TelltaleLCDFlag;
......@@ -119,19 +122,15 @@ extern TelltaleLCD TelltaleLCDFlag;
ָʾ˸ͬ
******************************************************************************/
#define LED_FLASH_1Hz FLASH_SYNC_1Hz ? LED_ON : LED_OFF
#define LED_FLASH_2Hz FLASH_SYNC_2Hz ? LED_ON : LED_OFF
#define LED_FLASH_7Hz FLASH_SYNC_7Hz ? LED_ON : LED_OFF
/******************************************************************************
******************************************************************************/
void Telltales_Management(void); //50ms
void Telltales_Left_Right_Management_Service(void) ;
void Telltales_Left_Right_Management_Service(void);
#endif
\ No newline at end of file
......@@ -75,28 +75,28 @@ void BackLight_TFT_Close(void)
********************************************************************************/
void BL_Management_Service(void)
{
// uint8_t Msg;
// uint8_t DutyCycle;
//uint8_t Msg;
//uint8_t DutyCycle;
//DutyCycle = BL_KEY_Step;
//if(SYS_OPR_STAT_IGN_ON)
//{}
if(SYS_IGN_OFF_DISP_MODE)
// {}
if (SYS_IGN_OFF_DISP_MODE)
{
BlOFFCtrl.Timer = 0;
if(BlTurnOffDelay)
if (BlTurnOffDelay)
BlTurnOffDelay--;
else
{
if((DriveDoorSts==1)||(PsngrDoorSts==1)||(PositionLightSts==1)||(HazardLightSts==1)||((PepslcuAlarm>0)&&(PepslcuAlarm<13))||(PepslcuAlarm == 14)||((RHTurnSignalSts == 1) &&(LHTurnSignalSts == 1))) //20200501 fhl
if ((DriveDoorSts == 1) || (PsngrDoorSts == 1) || (PositionLightSts == 1) || (HazardLightSts == 1) || ((PepslcuAlarm > 0) && (PepslcuAlarm < 13)) || (PepslcuAlarm == 14) || ((RHTurnSignalSts == 1) && (LHTurnSignalSts == 1))) //20200501 fhl
{
if(PositionLightSts==1)
if (PositionLightSts == 1)
{
BackLight_TFT_Set((BcakLightPOS+1)*15);
if((DriveDoorSts==1)||(PsngrDoorSts==1)||(HazardLightSts==1)||((RHTurnSignalSts == 1) &&(LHTurnSignalSts == 1)))
BackLight_TFT_Set((BcakLightPOS + 1) * 15);
if ((DriveDoorSts == 1) || (PsngrDoorSts == 1) || (HazardLightSts == 1) || ((RHTurnSignalSts == 1) && (LHTurnSignalSts == 1)))
{
// BackLight_Plate_Needle_Set((BcakLightPOS+1)*15);
PWM_Channel_Set_Duty_Cycle(5, ((BcakLightPOS+1)*15));
PWM_Channel_Set_Duty_Cycle(5, ((BcakLightPOS + 1) * 15));
}
else
{
......@@ -106,25 +106,22 @@ void BL_Management_Service(void)
}
else
{
if((DriveDoorSts==1)||(PsngrDoorSts==1)||(HazardLightSts==1)||((RHTurnSignalSts == 1) &&(LHTurnSignalSts == 1)))
if ((DriveDoorSts == 1) || (PsngrDoorSts == 1) || (HazardLightSts == 1) || ((RHTurnSignalSts == 1) && (LHTurnSignalSts == 1)))
{
// BackLight_Plate_Needle_Set((BcakLightPOS+1)*25);
PWM_Channel_Set_Duty_Cycle(5, ((BcakLightPOS+1)*25));
//BackLight_Plate_Needle_Set((BcakLightPOS + 1) * 25);
PWM_Channel_Set_Duty_Cycle(5, ((BcakLightPOS + 1) * 25));
}
if((DriveDoorSts==1)||(PsngrDoorSts==1))/*||((PepslcuAlarm>0)&&(PepslcuAlarm<13))||(PepslcuAlarm==14)) */
if ((DriveDoorSts == 1) || (PsngrDoorSts == 1))/* || ((PepslcuAlarm > 0) && (PepslcuAlarm < 13)) || (PepslcuAlarm == 14)) */
{
BackLight_TFT_Set((BcakLightPOS+1)*25);
BackLight_TFT_Set((BcakLightPOS + 1) * 25);
}
else if(((PepslcuAlarm>0)&&(PepslcuAlarm<13))||(PepslcuAlarm==14))
else if (((PepslcuAlarm > 0) && (PepslcuAlarm < 13)) || (PepslcuAlarm == 14))
{
BackLight_TFT_Set((BcakLightPOS+1)*25);
BackLight_TFT_Set((BcakLightPOS + 1) * 25);
PWM_Channel_Set_Duty_Cycle(5, 0); //2020 01 06 WH 修改off下报警大C问题
}
else
BackLight_TFT_Close(); //屏
}
}
else
......@@ -132,11 +129,12 @@ void BL_Management_Service(void)
BackLight_TFT_Close(); //屏
PWM_Channel_Set_Duty_Cycle(5, 0);
}
BackLight_Plate_Needle_Close(); //20200306
}
} else {
}
else
{
BlOFFCtrl.Timer = 0;
if(BlTurnOnDelay)
BlTurnOnDelay--;
......@@ -144,45 +142,34 @@ void BL_Management_Service(void)
{
if (PositionLightSts == 1)
{
BackLight_TFT_Set((BcakLightPOS+1)*15);
BackLight_Plate_Needle_Set((BcakLightPOS+1)*15);
PWM_Channel_Set_Duty_Cycle(5, ((BcakLightPOS+1)*15));
BackLight_TFT_Set((BcakLightPOS + 1) * 15);
BackLight_Plate_Needle_Set((BcakLightPOS + 1) * 15);
PWM_Channel_Set_Duty_Cycle(5, ((BcakLightPOS + 1) * 15));
}
else
{
BackLight_TFT_Set((BcakLightPOS+1)*25);
BackLight_Plate_Needle_Set((BcakLightPOS+1)*25);
PWM_Channel_Set_Duty_Cycle(5, ((BcakLightPOS+1)*25));
BackLight_TFT_Set((BcakLightPOS + 1) * 25);
BackLight_Plate_Needle_Set((BcakLightPOS + 1) * 25);
PWM_Channel_Set_Duty_Cycle(5, ((BcakLightPOS + 1) * 25));
}
}
}
}
void PWM_INIT(void)
{
PWM_Channel_Init(7, PWM_CLOCK_SB, PWM_POL_POS, PWM_LEFT_ALIGN, PWM7_PM3);//屏背光初始化
PWM_Channel_Init(7, PWM_CLOCK_SB, PWM_POL_POS, PWM_LEFT_ALIGN, PWM7_PM3); //屏背光初始化
PWM_Channel_Set_Freq(7, 20000);
PWM_Channel_Set_Duty_Cycle(7, 0); //初始化为背光关闭,由后续应用程序开启
PWM_Channel_Start(7);
PWM_Channel_Init(2, PWM_CLOCK_SB, PWM_POL_POS, PWM_LEFT_ALIGN, PWM2_PP2);//指示灯背光
PWM_Channel_Init(2, PWM_CLOCK_SB, PWM_POL_POS, PWM_LEFT_ALIGN, PWM2_PP2); //指示灯背光
PWM_Channel_Set_Freq(2, 20000);
PWM_Channel_Set_Duty_Cycle(2, 0); //初始化为背光关闭,由后续应用程序开启
PWM_Channel_Start(2);
PWM_Channel_Init(5, PWM_CLOCK_SA, PWM_POL_POS, PWM_LEFT_ALIGN, PWM5_PP5);//大C背光
PWM_Channel_Init(5, PWM_CLOCK_SA, PWM_POL_POS, PWM_LEFT_ALIGN, PWM5_PP5); //大C背光
PWM_Channel_Set_Freq(5, 100);
PWM_Channel_Set_Duty_Cycle(5, 0); //初始化为背光关闭,由后续应用程序开启
PWM_Channel_Start(5);
}
......@@ -53,7 +53,7 @@ const uint8_t *CommandRAMIF[16] =
void SendByteToUART(uint8_t myByte)
{
wdt_reset(); //复位看门狗定时器
while(SCI0SR1_TDRE == 0); //等待发送缓存区空
while (SCI0SR1_TDRE == 0); //等待发送缓存区空
SCI0DRL = myByte;
}
/**************************************************
......@@ -72,7 +72,7 @@ void SendWordToUART(uint16_t myWord)
void SendRomStrToUART(uint8_t *myROMADR, uint8_t mDataLen)
{
uint8_t i;
for(i = 0; i < mDataLen; i++)
for (i = 0; i < mDataLen; i++)
{
SendByteToUART(myROMADR[i]); //向串口发送1个字节数据
}
......@@ -99,20 +99,21 @@ void InitUARTRecvP(void)
***************************************************/
INT8U UARTRecvieP(void)
{
if((RSB_P >= 1) && (RX_BUF[0] != cnUASTHandH))
if ((RSB_P >= 1) && (RX_BUF[0] != cnUASTHandH))
goto UARTRciP1;
if((RSB_P >= 2) && (RX_BUF[1] != cnUASTHandL))
if ((RSB_P >= 2) && (RX_BUF[1] != cnUASTHandL))
goto UARTRciP1;
if((RSB_P >= 3) && (RX_BUF[2] > cnRSDatLen))
if ((RSB_P >= 3) && (RX_BUF[2] > cnRSDatLen))
goto UARTRciP1;
if(RSB_P >= (RX_BUF[2] + 3))
if (RSB_P >= (RX_BUF[2] + 3))
return 1;
else
return 0;
UARTRciP1:
UARTRciP1:
InitUARTRecvP(); //初始化串口接收程序
return 0;
}
......@@ -127,15 +128,15 @@ INT8U RSSRecivJudge(void)
INT8U i;
INT8U mCC = 0;
if(!UARTRecvieP()) //串口有收到一帧数据
if (!UARTRecvieP()) //串口有收到一帧数据
return 2; //no
for(i = 0; i < RX_BUF[2]; i++)
for (i = 0; i < RX_BUF[2]; i++)
mCC = mCC + RX_BUF[2 + i];
if(mCC == RX_BUF[RX_BUF[2] + 2])
if (mCC == RX_BUF[RX_BUF[2] + 2])
{
for(i = 0; i < cnRSBufLen; i++) //COPY串口接收缓存区数据到串口发送缓存区
for (i = 0; i < cnRSBufLen; i++) //COPY串口接收缓存区数据到串口发送缓存区
TX_BUF[i] = RX_BUF[i];
InitUARTRecvP(); //初始化并打开串口接收程序
......@@ -163,9 +164,11 @@ void ReadDataCOMPRG(void)
{
INT8U i;
INT8U *pRAMAdr;
TX_BUF[2] = TX_BUF[2] + TX_BUF[5];
pRAMAdr = JSRAMADRGJLXN(); //根据发送缓存区的数据类型,序号,数据字节数计算RAM首地址
for(i = 0; i < TX_BUF[5]; i++)
for (i = 0; i < TX_BUF[5]; i++)
TX_BUF[6 + i] = *(pRAMAdr + i);
JSCCSendDataToYQ(); //计算发送缓存区数据CC并发送数据到仪器
}
......@@ -177,12 +180,12 @@ void JSCCSendDataToYQ(void)
INT8U i;
INT8U mCC = 0;
for(i = 0; i < TX_BUF[2]; i++)
for (i = 0; i < TX_BUF[2]; i++)
mCC = mCC + TX_BUF[2 + i];
TX_BUF[TX_BUF[2] + 2] = mCC;
for(i = 0; i < (TX_BUF[2] + 3); i++)
for (i = 0; i < (TX_BUF[2] + 3); i++)
SendByteToUART(TX_BUF[i]);
}
/***************************************************
......@@ -198,18 +201,18 @@ void WriteDataCOMPRG(void)
pRAMAdr = JSRAMADRGJLXN(); //根据发送缓存区的数据类型,序号,数据字节数计算RAM首地址
for(i = 0; i < TX_BUF[5]; i++)
for (i = 0; i < TX_BUF[5]; i++)
*(pRAMAdr + i) = TX_BUF[6 + i];
mTPE = TX_BUF[3] & 0x0F;
if(mTPE == 2) //
if (mTPE == 2) //
STEPPER_MOTOR_0_DST_STEP = *((INT16U *)(pRAMAdr + 2));
if(mTPE == 3) //
if (mTPE == 3) //
STEPPER_MOTOR_3_DST_STEP = *((INT16U *)(pRAMAdr + 2));
if(mTPE == 6) //
if (mTPE == 6) //
STEPPER_MOTOR_1_DST_STEP = *((INT16U *)(pRAMAdr + 2));
if(mTPE == 7) //
if (mTPE == 7) //
STEPPER_MOTOR_2_DST_STEP = *((INT16U *)(pRAMAdr + 2));
}
......@@ -14,7 +14,8 @@ DriveInfoODOClearStruct DriveInfoTPMSSet;
DriveInfoSpeedPlusConverterStruct DriveInfoSpeedPlusConverter;
/****************燃油阻值频率输出****************************/
DriveInfoSpeedPlusConverterStruct DriveInfoFuelPlusConverter;
uint8_t Time_Synchronize_Flag=0;
uint8_t Time_Synchronize_Flag = 0;
void Drive_Info_Power_On_Init ( void )
{
DriveInfoCurrent = DRIVE_INFO_TPMS; //初始化默认开机是胎压状态
......@@ -50,14 +51,13 @@ void Drive_Info_Power_On_Init ( void )
void Drive_Info_Display_Update_Service(void)
{
/******************背景信息显示*********************************/
if (IODispMode == IO_DISP_MODE_IGN_ON)
{
if (IO_BG_INFO_DISPLAY_ENABLE)
{
//----hyq--20190304 15电记录上一次状态 显示背景信息,每次上15电运行一次
/* if(BG_display_flag == 0)
/* if (BG_display_flag == 0)
{
//初始化屏幕菜单记忆值位置
BG_display_flag = 1;
......@@ -66,120 +66,120 @@ void Drive_Info_Display_Update_Service(void)
*/
//左气压
GUI_BG_GAS1_Display ( GaugesCtrl.GAS1Seg );
//右气压
GUI_BG_GAS2_Display ( GaugesCtrl.GAS2Seg );
//车速
GUI_BG_Vehicle_Display (GaugesCtrl.VSpeedSeg);
SEG_LCD_Vehicle_Speed_Num_Display(DATA_VEHICLE_SPEED_DISPLAYING);
//转速
GUI_BG_Engine_Display ( GaugesCtrl.ESpeedSeg );
SEG_LCD_Engine_Speed_Num_Display ( DATA_ENGINE_SPEED_DISPLAYING );
//底图
//TFT_LCD_Display_Sprite(LAYER_BEIJING, SN_heisequyu_png, 0, 0, 64);
//TRIP
GUI_BG_TRIP_A_Display(DATA_TRIP_VALID, DATA_TRIPA, GUI_DISP_MODE_NORMAL) ;
GUI_BG_TRIP_A_Display(DATA_TRIP_VALID, DATA_TRIPA, GUI_DISP_MODE_NORMAL);
//ODO
GUI_BG_ODO_Display ( GUI_DISP_MODE_NORMAL, NVM_ODO_VALUE ) ;
GUI_BG_ODO_Display ( GUI_DISP_MODE_NORMAL, NVM_ODO_VALUE );
//时间显示
if(Time_Synchronize_Flag==0)
if (Time_Synchronize_Flag == 0)
{
if(IO_DISP_TEST_OFF_TIME<=150) //20200908
if (IO_DISP_TEST_OFF_TIME <= 150) //20200908
{
if(!(GPS_SYSTime_STATUS&CAN_MSG_LOST))
if (!(GPS_SYSTime_STATUS&CAN_MSG_LOST))
{
if((GPS_SYSTime_Min<60)&&(GPS_SYSTime_Hour<24))
if ((GPS_SYSTime_Min < 60) && (GPS_SYSTime_Hour < 24))
{
RTC_MINUTE = GPS_SYSTime_Min;
RTC_HOUR = GPS_SYSTime_Hour;
Time_Synchronize_Flag=1;
Time_Synchronize_Flag = 1;
}
}
}
else
Time_Synchronize_Flag=1;
Time_Synchronize_Flag = 1;
}
if(Time_Synchronize_Flag==1)
#if 0
if (Time_Synchronize_Flag == 1)
GUI_BG_Clock_Display(GUI_DISP_MODE_NORMAL);
else
TFT_LCD_Clear_Multi_Layer(LAYER_Time_Hour1, LAYER_Time_Minute2);
GUI_BG_TEMP_Display(GUI_DISP_MODE_NORMAL);
#endif
//档位
if(NVM_CONFIG_TBOX==0) //手动
if (NVM_CONFIG_TBOX == 0) //手动
{
if(!(EGSM_1_STATUS&CAN_MSG_LOST)) //带档位传感器 20200530fhl
if (!(EGSM_1_STATUS & CAN_MSG_LOST)) //带档位传感器 20200530fhl
{
if((ActualGearPosition==0x09)||(ActualGearPosition==0x0A))
ReverseGear_temp=1;
if ((ActualGearPosition == 0x09) || (ActualGearPosition == 0x0A))
ReverseGear_temp = 1;
else
ReverseGear_temp=0;
ReverseGear_temp = 0;
GUI_BG_Gear_Alarm_Display(GUI_DISP_MODE_NORMAL);
}
else//不带档位传感器
else //不带档位传感器
{
TFT_LCD_Clear_Multi_Layer(LAYER_Gear, LAYER_Gear2); //20190618
if(LINE_IN_GEAR_SIGNAL)
if (LINE_IN_GEAR_SIGNAL)
{
ReverseGear_temp=1;
ReverseGear_temp = 1;
TFT_LCD_Display_Sprite(LAYER_Gear, SN_GEAR_R_png, 367, 428, 64);
}
else
{
ReverseGear_temp=0;
ReverseGear_temp = 0;
TFT_LCD_Clear_Layer(LAYER_Gear);
}
}
}
else //自动
{
if(Gear_Display==0x30)
ReverseGear_temp=1;
if (Gear_Display == 0x30)
ReverseGear_temp = 1;
else
ReverseGear_temp=0;
ReverseGear_temp = 0;
GUI_BG_Gear_Display(GUI_DISP_MODE_NORMAL);
}
//TFT_LCD_Clear_Multi_Layer(LAYER_MENU01, LAYER_MENU14);
//公共显示区域
if ((IO_DRIVE_INFO_DISPLAY_ENABLE)&&(~IO_POPUP_DISPLAY_ENABLE))
if ((IO_DRIVE_INFO_DISPLAY_ENABLE) && (~IO_POPUP_DISPLAY_ENABLE))
{
//MenuManage();
GUI_ADAS_Display();
}
Menu_Processing_Service(); //菜单按键处理
Telltale_LCD_Display();
}
}
else if(SYS_IGN_OFF_DISP_MODE)
else if (SYS_IGN_OFF_DISP_MODE)
{
TFT_LCD_Clear_Multi_Layer(0, YVC_LYR_NUM_CPU-3);
if(PepslcuAlarm==11)
if (PepslcuAlarm == 11)
{
}
else if(((PepslcuAlarm>0)&&(PepslcuAlarm<11))||(PepslcuAlarm==12)||(PepslcuAlarm == 14))
else if (((PepslcuAlarm > 0) && (PepslcuAlarm < 11)) || (PepslcuAlarm == 12) || (PepslcuAlarm == 14))
{
TFT_LCD_Clear_Layer(LAYER_MENU14);
}
else
TFT_LCD_Clear_Multi_Layer(YVC_LYR_NUM_CPU-2, YVC_LYR_NUM_CPU-1);
TFT_LCD_Clear_Multi_Layer(YVC_LYR_NUM_CPU - 2, YVC_LYR_NUM_CPU - 1);
//门开报警灯 KL30 技术需求15
if(TelltaleLCDFlag.Sig.LCD06 == 1)
if (TelltaleLCDFlag.Sig.LCD06 == 1)
TFT_LCD_Display_Sprite(LAYER_LED06, SN_zhishideng_06_png, 265, 9, 64);
else
TFT_LCD_Clear_Layer(LAYER_LED06);
//小灯 KL15,KL30 48
if(TelltaleLCDFlag.Sig.LCD11 == 1)
if (TelltaleLCDFlag.Sig.LCD11 == 1)
TFT_LCD_Display_Sprite(LAYER_LED11, SN_zhishideng_11_png, 490, 9, 64);
else
TFT_LCD_Clear_Layer(LAYER_LED11);
......@@ -190,19 +190,20 @@ void Drive_Info_Display_Update_Service(void)
/***************************************报文外发**************************************/
void Drive_Info_Export_Init(void)
{
// Drive_Info_IC1_STATUS_Tx();
ICM_Sleep_Indicator=1; //20200306初始化只发网络报文
//Drive_Info_IC1_STATUS_Tx();
ICM_Sleep_Indicator = 1; //20200306初始化只发网络报文
//ASP_STATUS |= CAN_TX_EN; //发送
NWM_ICM_STATUS |= CAN_TX_EN; //发送
TCO1_STATUS |= CAN_TX_EN; //发送
VDHR_STATUS |= CAN_TX_EN; //发送
AIR1_STATUS |= CAN_TX_EN; //发送
// PGNRQ_STATUS |= CAN_TX_EN; //发送
//PGNRQ_STATUS |= CAN_TX_EN; //发送
ETCS_STATUS |= CAN_TX_EN; //发送
ICM_1_STATUS |= CAN_TX_EN; //发送
ICM_2_STATUS |= CAN_TX_EN; //发送
ICM_3_STATUS |= CAN_TX_EN; //发送
ICM_4_STATUS |= CAN_TX_EN; //发送
}
/***************************************外发处理**************************************/
......@@ -210,25 +211,28 @@ static void Drive_Info_IC1_STATUS_Tx(void)
{
if(SYS_OPR_STAT_IGN_ON) //20200306只有ON档才发1
{
ICM_Sleep_Indicator=1; //20200119
ICM_Sleep_Indicator = 1; //20200119
}
Tachograph_Vehicle_SpeedL = FA_SpeedL;
Tachograph_Vehicle_SpeedH = FA_SpeedH;
High_Resolution_Total_Vehicle_Distance_LL = (NVM_ODO_VALUE*20)&0xFF; //系数0.05
High_Resolution_Total_Vehicle_Distance_LH = ((NVM_ODO_VALUE*20)>>8)&0xFF ;
High_Resolution_Total_Vehicle_Distance_HL = ((NVM_ODO_VALUE*20)>>16)&0xFF ;
High_Resolution_Total_Vehicle_Distance_HH = ((NVM_ODO_VALUE*20)>>24)&0xFF ;
High_Resolution_Total_Vehicle_Distance_LL = (NVM_ODO_VALUE * 20) & 0xFF; //系数0.05
High_Resolution_Total_Vehicle_Distance_LH = ((NVM_ODO_VALUE * 20) >> 8) &0xFF;
High_Resolution_Total_Vehicle_Distance_HL = ((NVM_ODO_VALUE * 20) >> 16) &0xFF;
High_Resolution_Total_Vehicle_Distance_HH = ((NVM_ODO_VALUE * 20) >> 24) &0xFF;
FrontBarometricPress = FrontPress;
RearBarometricPress = RearPress;
ReverseGear = ReverseGear_temp;
AverageFuelConsumption_LL = AverageFuel_LL ;
AverageFuelConsumption_LH = AverageFuel_LH ;
AverageFuelConsumption_HL = AverageFuel_HL ;
AverageFuelConsumption_HH = AverageFuel_HH ;
AverageFuelConsumption_LL = AverageFuel_LL;
AverageFuelConsumption_LH = AverageFuel_LH;
AverageFuelConsumption_HL = AverageFuel_HL;
AverageFuelConsumption_HH = AverageFuel_HH;
LowBrakeLuidLevel = LowBrakeLuidLevel_temp;
SafetyBeltSt = SafetyBeltSt_temp;
TankLevel =TankLevel_temp;
TankLevel = TankLevel_temp;
MaintainSignal = MaintainSignal_temp;
ParkingBrakeSwitch = ParkingBrakeSwitch_temp;
CabLockSt = CabLockSt_temp;
......
......@@ -28,6 +28,7 @@ uint8_t GaugesTimer;
void Gauges_Management_Service(void)
{
uint8_t UpdateFlag;
if (SYS_IGN_OFF_DISP_MODE)
{
Gauges_ESpeed_Display_OFF();
......@@ -35,7 +36,8 @@ void Gauges_Management_Service(void)
Gauges_AirOne_Display_OFF();
Gauges_AirTwo_Display_OFF();
}
if( SYS_IGN_ON_DISP_MODE )
if ( SYS_IGN_ON_DISP_MODE )
{
if (GaugesTimer)
{
......@@ -47,10 +49,10 @@ void Gauges_Management_Service(void)
UpdateFlag = 1;
GaugesTimer = 5;
}
if(UpdateFlag)
if (UpdateFlag)
{
//天蓝液 右下
if(ContrlorResumeofVspeed == 0)
if (ContrlorResumeofVspeed == 0)
{
CSB_JDMHLBUF_LS = GJ_KDV_JSSYBMBJD(&CSBFrJDTB[0], DataCoolantADblueSegDisp, cnCSBFrJDTBLen);
STEPPER_MOTOR_0_DST_STEP = CSB_JDMHLBUF_LS;
......@@ -62,7 +64,7 @@ void Gauges_Management_Service(void)
}
//机油 左下
if(ContrlorResumeofEspeed == 0)
if (ContrlorResumeofEspeed == 0)
{
zs_JDMHLBUF_LS = GJ_KDV_JSSYBMBJD(&ZSBFrJDTB[0], DataCoolantOilSegDisp, cnZSBFrJDTBLen);
STEPPER_MOTOR_3_DST_STEP = zs_JDMHLBUF_LS;
......@@ -74,30 +76,29 @@ void Gauges_Management_Service(void)
}
//燃油 左上
if(ContrlorResumeofFUEL == 0)
if (ContrlorResumeofFUEL == 0)
{
YOUB_FBJD_MHL = GJ_KDV_JSSYBMBJD( &YOUBVJDTB[0], Fuel_Seg , cnYOUBVJDTBLen );
YOUB_FBJD_MHL = GJ_KDV_JSSYBMBJD(&YOUBVJDTB[0], Fuel_Seg, cnYOUBVJDTBLen);
STEPPER_MOTOR_2_DST_STEP = YOUB_FBJD_MHL;
}
else
{
YOUB_FBJD_MHL = GJ_KDV_JSSYBMBJD( &YOUBVJDTB[0], Fuel_Seg , cnYOUBVJDTBLen );
YOUB_FBJD_MHL = GJ_KDV_JSSYBMBJD(&YOUBVJDTB[0], Fuel_Seg, cnYOUBVJDTBLen);
STEPPER_MOTOR_2_DST_STEP = YOUB_FBJD_MHL;
}
//水温 右上
if( ContrlorResumeofTEMP == 0 )
if (ContrlorResumeofTEMP == 0)
{
SUIB_FBJD_MHL = GJ_KDV_JSSYBMBJD( &SUIBVJDTB[0], DataCoolantTempSegDisp , cnSUIBVJDTBLen );
SUIB_FBJD_MHL = GJ_KDV_JSSYBMBJD(&SUIBVJDTB[0], DataCoolantTempSegDisp, cnSUIBVJDTBLen);
STEPPER_MOTOR_1_DST_STEP = SUIB_FBJD_MHL;
}
else
{
SUIB_FBJD_MHL = GJ_KDV_JSSYBMBJD( &SUIBVJDTB[0], TempSeg , cnSUIBVJDTBLen );
SUIB_FBJD_MHL = GJ_KDV_JSSYBMBJD(&SUIBVJDTB[0], TempSeg, cnSUIBVJDTBLen);
STEPPER_MOTOR_1_DST_STEP = SUIB_FBJD_MHL;
}
}
}
}
/***************************************************************
转速显示归零 左下
......
This diff is collapsed.
This diff is collapsed.
......@@ -31,7 +31,8 @@ void Startup_Animation_Play_Service(void)
StartupAnimationPlay.Timer = 0;
}
}
/* else
/*
else
{
TFT_LCD_Clear_Layer(LAYER_BEIJING); //清开机LOGO
TFT_LCD_Clear_Layer(LAYER_BEIJING1);
......
......@@ -75,7 +75,7 @@ void Write_CZSYBKPILSTO_FLASH(void)
{
uint16_t m16;
MYeturnCode = DFLASH_Erase_Sector(DFLASH_FirstAddress); //擦除第1个扇区(256字节)
if(MYeturnCode != OK)
if (MYeturnCode != OK)
return;
DFLASHeep_adr = DFLASH_FirstAddress + 2;
WriteNbyteToDFalsh((INT16U *)CSBFrJDTB, sizeof(CSBFrJDTB));
......@@ -93,24 +93,24 @@ void JSCZSBMAXFRPRG(void)
{
uint8_t i;
for(i = 2; i < cnCSBFrJDTBLen; i++)
for (i = 2; i < cnCSBFrJDTBLen; i++)
{
if(CSBFrJDTB[i].Kdu == 0)
if (CSBFrJDTB[i].Kdu == 0)
break;
}
for(i = 2; i < cnZSBFrJDTBLen; i++)
for (i = 2; i < cnZSBFrJDTBLen; i++)
{
if(ZSBFrJDTB[i].Kdu == 0)
if (ZSBFrJDTB[i].Kdu == 0)
break;
}
for(i = 2; i < cnSUIBVJDTBLen; i++)
for (i = 2; i < cnSUIBVJDTBLen; i++)
{
if(SUIBVJDTB[i].Kdu == 0)
if (SUIBVJDTB[i].Kdu == 0)
break;
}
for(i = 2; i < cnYOUBVJDTBLen; i++)
for (i = 2; i < cnYOUBVJDTBLen; i++)
{
if(YOUBVJDTB[i].Kdu == 0)
if (YOUBVJDTB[i].Kdu == 0)
break;
}
}
......@@ -122,31 +122,31 @@ void SetModeProc(void)
CSB_SPDJ = 33 * cnCZSB_BJDJ_WBD;
ZSB_SPDJ = 33 * cnCZSB_BJDJ_WBD;
for(;;)
for (;;)
{
wdt_reset(); //复位看门狗定时器
Stepper_Motor_Speed_Control_Service();
mStatus = RSSRecivJudge(); //判断串口接受缓存区是否收到正确的数据
if(mStatus == 2)
if (mStatus == 2)
continue;
if(mStatus == 1)
if (mStatus == 1)
{
SendRomStrToUART((INT8U *)CommandNCK, sizeof(CommandNCK)); //给仪器发NCK
continue;
}
/****************正确数据处理************************/
mTYPE = TX_BUF[3] & 0xF0;
if( mTYPE == 0x10 )
if ( mTYPE == 0x10 )
{
//命令处理
if(TX_BUF[3] == 0x1E)
if (TX_BUF[3] == 0x1E)
{
//从FLASH中读车,转,水,油表,KPuls_cs参数到RAM
Read_CZSYBKPILSFR_FLASH();
SendACKToSBEI(); //向仪器发ACK
}
if(TX_BUF[3] == 0x1F)
if (TX_BUF[3] == 0x1F)
{
//写车,转,水,油表,KPuls_cs参数到FALSH
Write_CZSYBKPILSTO_FLASH();
......@@ -154,15 +154,15 @@ void SetModeProc(void)
KP_CS_N = KPuls_cs.CS_N;
SendACKToSBEI(); //向仪器发ACK
}
if(TX_BUF[3] == 0x14)
if (TX_BUF[3] == 0x14)
SendACKToSBEI(); //向仪器发ACK
if(TX_BUF[3] == 0x15)
if (TX_BUF[3] == 0x15)
SendACKToSBEI(); //向仪器发ACK
}
if( mTYPE == 0x60 )
if ( mTYPE == 0x60 )
//读数据处理
ReadDataCOMPRG(); //处理从仪器发来的读数据命令函数
if( mTYPE == 0x80 )
if ( mTYPE == 0x80 )
{
//写数据到RAM处理
WriteDataCOMPRG(); //处理从仪器发来的写数据命令函数
......@@ -186,23 +186,23 @@ uint16_t GJ_KDV_JSSYBMBJD(KDVJDSTRUCT *mSTUCT, INT16U mV, uint8_t mLEN)
//----------------------------------------------------------
//第0点电压值和第1点电压值相等则返回角度0
if( (mSTUCT->Kdu) == ((mSTUCT + 1)->Kdu) )
if ( (mSTUCT->Kdu) == ((mSTUCT + 1)->Kdu) )
return 0;
if( (mSTUCT->Kdu) > ((mSTUCT + 1)->Kdu) )
if ( (mSTUCT->Kdu) > ((mSTUCT + 1)->Kdu) )
mBB = 1; //表示电压和角度乘反比
else
mBB = 0; //表示电压和角度乘正比
//------------------------------------------------------------
for(;;)
for (;;)
{
if((*(mSTUCT + i)).Kdu == 0) //是结束点
if ((*(mSTUCT + i)).Kdu == 0) //是结束点
{
if(i)
if (i)
return (*(mSTUCT + i - 1)).WBJD;
}
mOK = 0;
if(mBB)
if (mBB)
{
if(mV >= (*(mSTUCT + i)).Kdu)
mOK = 1;
......@@ -213,9 +213,9 @@ uint16_t GJ_KDV_JSSYBMBJD(KDVJDSTRUCT *mSTUCT, INT16U mV, uint8_t mLEN)
mOK = 1;
}
//------------------------------------------------------------
if(mOK)
if (mOK)
{
if(i)
if (i)
{
mV2 = (*(mSTUCT + i)).Kdu;
mD2 = (*(mSTUCT + i)).WBJD;
......@@ -231,11 +231,12 @@ uint16_t GJ_KDV_JSSYBMBJD(KDVJDSTRUCT *mSTUCT, INT16U mV, uint8_t mLEN)
else
{
i++;
if(i == mLEN)
if (i == mLEN)
return (*(mSTUCT + i - 1)).WBJD;
}
}
if(mBB)
if (mBB)
{
return mD1 + ((INT32U)(mD2 - mD1) * (mV1 - mV)) / (mV1 - mV2);
}
......@@ -245,7 +246,6 @@ uint16_t GJ_KDV_JSSYBMBJD(KDVJDSTRUCT *mSTUCT, INT16U mV, uint8_t mLEN)
}
}
//========================================================
//从FLASH中读车,转,水,油表,KPuls_cs参数到RAM
//========================================================
......@@ -255,7 +255,7 @@ void Read_CZSYBKPILSFR_FLASH(void)
//uint16_t m16;
//---------------------------------------------------------------------
if(DFLASH_Read_Word(DFLASH_FirstAddress) != 0xA77A)
if (DFLASH_Read_Word(DFLASH_FirstAddress) != 0xA77A)
{
//----hyq--20180404
KPuls_cs.CSBIX = 595;
......@@ -283,7 +283,7 @@ void Read_CZSYBKPILSFR_FLASH(void)
SUIBVJDTB[4 + 1].WBJD = 1922; //102 8格
//燃油 左上 8
YOUBVJDTB[0 ].WBJD=146;//
YOUBVJDTB[0 ].WBJD = 146; //
YOUBVJDTB[0 + 1].WBJD = 347; //16 1格 20
YOUBVJDTB[1 + 1].WBJD = 813; //39 3格 40
YOUBVJDTB[2 + 1].WBJD = 1270; //62 5格 60
......@@ -337,7 +337,7 @@ void Read_CZSYBKPILSFR_FLASH(void)
//--------------------------
/*********************燃油表*********************/
YOUBVJDTB[0].Kdu = 0;
YOUBVJDTB[0].WBJD= 0;
YOUBVJDTB[0].WBJD = 0;
YOUBVJDTB[1].Kdu = 20;
YOUBVJDTB[2].Kdu = 40;
......@@ -355,8 +355,8 @@ void Read_CZSYBKPILSFR_FLASH(void)
b_RYB_JD[4] = 1785;
/*********************水表*********************/
SUIBVJDTB[0].Kdu = 50 ;
SUIBVJDTB[0].WBJD=0;
SUIBVJDTB[0].Kdu = 50;
SUIBVJDTB[0].WBJD = 0;
SUIBVJDTB[1].Kdu = 59; //16 1格
SUIBVJDTB[2].Kdu = 75; //39 3格
......@@ -376,11 +376,12 @@ void Read_CZSYBKPILSFR_FLASH(void)
JSCZSBMAXFRPRG(); //获得车,转速表最大点的刻度值(初始化后调用)
KP_CS_N = KPuls_cs.CS_N;
}
void TSzhen_mode(void)
{
if(!RSSRecivJudge()) //串口收到正确的数据
if (!RSSRecivJudge()) //串口收到正确的数据
{
if(TX_BUF[2] == 6) //长度为6 ,YES
if (TX_BUF[2] == 6) //长度为6 ,YES
{
if((TX_BUF[3] == 0x11) && (TX_BUF[4] == 0x22) && (TX_BUF[5] == 0x33) && (TX_BUF[6] == 0x44) && (TX_BUF[7] == 0x55) )
{
......
This diff is collapsed.
......@@ -13,8 +13,6 @@
#include "PWM.h"
#include "Sound_Tracks.h"
/******************************************************************************
硬件配置
******************************************************************************/
......@@ -23,15 +21,10 @@
#define BUZZER_CTRL LINE_BUZZER
#endif
#define BUZZER_MODE_IDLE 0
#define BUZZER_MODE_SINGLE 1
#define BUZZER_MODE_LOOP 2
typedef struct
{
uint8_t Mode;
......@@ -39,15 +32,7 @@ typedef struct
uint8_t Note;
uint16_t Timer;
uint16_t Fade;
}BuzzerPlayCtrlStruct;
} BuzzerPlayCtrlStruct;
/******************************************************************************
函数声明
......
......@@ -34,9 +34,9 @@ EEPROMд
#define EEPROM_WP_ENABLE 0
#if EEPROM_WP_ENABLE
#ifndef EEPROM_WP
#define EEPROM_WP
#endif
#ifndef EEPROM_WP
#define EEPROM_WP
#endif
#endif
/******************************************************************************
......@@ -51,67 +51,67 @@ EEPROM
#define EEPROM_DEVICE_ADDR_RD 0xA1
#if defined EEPROM_24C01 /*** 24C01 ***/
#define EEPROM_DATA_ADDR_1_BYTE
#define EEPROM_MAX_DATA_ADDR 0x007F
#define EEPROM_TOTAL_PAGE_NUM 16
#define EEPROM_PAGE_SIZE 8
#define EEPROM_DATA_ADDR_1_BYTE
#define EEPROM_MAX_DATA_ADDR 0x007F
#define EEPROM_TOTAL_PAGE_NUM 16
#define EEPROM_PAGE_SIZE 8
#elif defined EEPROM_24C02 /*** 24C02 ***/
#define EEPROM_DATA_ADDR_1_BYTE
#define EEPROM_MAX_DATA_ADDR 0x00FF
#define EEPROM_TOTAL_PAGE_NUM 32
#define EEPROM_PAGE_SIZE 8
#define EEPROM_DATA_ADDR_1_BYTE
#define EEPROM_MAX_DATA_ADDR 0x00FF
#define EEPROM_TOTAL_PAGE_NUM 32
#define EEPROM_PAGE_SIZE 8
#elif defined EEPROM_24C04 /*** 24C04 ***/
#define EEPROM_DATA_ADDR_2_BYTE_MIXED
#define EEPROM_MAX_DATA_ADDR 0x01FF
#define EEPROM_TOTAL_PAGE_NUM 32
#define EEPROM_PAGE_SIZE 16
#define EEPROM_DATA_ADDR_2_BYTE_MIXED
#define EEPROM_MAX_DATA_ADDR 0x01FF
#define EEPROM_TOTAL_PAGE_NUM 32
#define EEPROM_PAGE_SIZE 16
#elif defined EEPROM_24C08 /*** 24C08 ***/
#define EEPROM_DATA_ADDR_2_BYTE_MIXED
#define EEPROM_MAX_DATA_ADDR 0x03FF
#define EEPROM_TOTAL_PAGE_NUM 64
#define EEPROM_PAGE_SIZE 16
#define EEPROM_DATA_ADDR_2_BYTE_MIXED
#define EEPROM_MAX_DATA_ADDR 0x03FF
#define EEPROM_TOTAL_PAGE_NUM 64
#define EEPROM_PAGE_SIZE 16
#elif defined EEPROM_24C16 /*** 24C16 ***/
#define EEPROM_DATA_ADDR_2_BYTE_MIXED
#define EEPROM_MAX_DATA_ADDR 0x07FF
#define EEPROM_TOTAL_PAGE_NUM 128
#define EEPROM_PAGE_SIZE 16
#define EEPROM_DATA_ADDR_2_BYTE_MIXED
#define EEPROM_MAX_DATA_ADDR 0x07FF
#define EEPROM_TOTAL_PAGE_NUM 128
#define EEPROM_PAGE_SIZE 16
#elif defined EEPROM_24C32 /*** 24C32 ***/
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0x0FFF
#define EEPROM_TOTAL_PAGE_NUM 128
#define EEPROM_PAGE_SIZE 32
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0x0FFF
#define EEPROM_TOTAL_PAGE_NUM 128
#define EEPROM_PAGE_SIZE 32
#elif defined EEPROM_24C64 /*** 24C64 ***/
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0x1FFF
#define EEPROM_TOTAL_PAGE_NUM 256
#define EEPROM_PAGE_SIZE 32
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0x1FFF
#define EEPROM_TOTAL_PAGE_NUM 256
#define EEPROM_PAGE_SIZE 32
#elif defined EEPROM_24C128 /*** 24C128 ***/
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0x3FFF
#define EEPROM_TOTAL_PAGE_NUM 256
#define EEPROM_PAGE_SIZE 64
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0x3FFF
#define EEPROM_TOTAL_PAGE_NUM 256
#define EEPROM_PAGE_SIZE 64
#elif defined EEPROM_24C256 /*** 24C256 ***/
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0x7FFF
#define EEPROM_TOTAL_PAGE_NUM 512
#define EEPROM_PAGE_SIZE 64
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0x7FFF
#define EEPROM_TOTAL_PAGE_NUM 512
#define EEPROM_PAGE_SIZE 64
#elif defined EEPROM_24C512 /*** 24C512 ***/
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0xFFFF
#define EEPROM_TOTAL_PAGE_NUM 512
#define EEPROM_PAGE_SIZE 128
#define EEPROM_DATA_ADDR_2_BYTE
#define EEPROM_MAX_DATA_ADDR 0xFFFF
#define EEPROM_TOTAL_PAGE_NUM 512
#define EEPROM_PAGE_SIZE 128
#else /*** EEPROM未定义 ***/
#error EEPROM device is undefined
#error EEPROM device is undefined
#endif
......
......@@ -160,8 +160,8 @@ typedef enum
***************************************************************************************************************************/
#if (EEPPROM_DATA_BUFFER_SIZE < EEPROM_PAGE_SIZE)
typedef struct
{
typedef struct
{
uint8_t Type;
uint8_t Data[EEPROM_PAGE_SIZE];
uint16_t DataLen;
......@@ -173,12 +173,12 @@ typedef struct
uint16_t WrCnt;
uint8_t Busy;
EEPROMAccessStatusEnum Result;
} EEPROMDataWrCtrlStruct;
} EEPROMDataWrCtrlStruct;
#else
typedef struct
{
typedef struct
{
uint8_t Type;
uint8_t Data[EEPPROM_DATA_BUFFER_SIZE];
uint16_t DataLen;
......@@ -190,18 +190,10 @@ typedef struct
uint16_t WrCnt;
uint8_t Busy;
EEPROMAccessStatusEnum Result;
} EEPROMDataWrCtrlStruct;
} EEPROMDataWrCtrlStruct;
#endif
/***************************************************************************************************************************
函数声明
***************************************************************************************************************************/
......@@ -230,7 +222,4 @@ void EEPROM_Normal_Data_Write_Service(void);
void EEPROM_Copy_Data(uint8_t *pDstData, uint8_t *pSrcData, uint8_t Len);
uint8_t EEPROM_Compare_Data(uint8_t *pDstData, uint8_t *pSrcData, uint8_t Len);
#endif
\ No newline at end of file
......@@ -85,68 +85,68 @@ typedef struct
extern volatile uint8_t KeyLeftinStatus;
#define KEY_LEFT_IN KeyLeftinStatus
#if ((defined KEY_LEFT_IN) || (defined KEY_LEFT_INn))
extern volatile uint8_t KeyLeftStatus;
extern volatile uint8_t KeyLeftStatus;
#define KEY_LEFT_SIGNAL KeyLeftStatus
#define KEY_LEFT_DEFAULT 0
#define KEY_DEB_RISE 80 //上升沿消抖时间(ms)
#define KEY_DEB_FALL 80 //下降沿消抖时间(ms)
#define KEY_LEFT_SIGNAL KeyLeftStatus
#define KEY_LEFT_DEFAULT 0
#define KEY_DEB_RISE 80 //上升沿消抖时间(ms)
#define KEY_DEB_FALL 80 //下降沿消抖时间(ms)
#endif
extern volatile uint8_t KeyRightinStatus;
#define KEY_RIGHT_IN KeyRightinStatus
#if ((defined KEY_RIGHT_IN) || (defined KEY_RIGHT_INn))
extern volatile uint8_t KeyRightStatus;
extern volatile uint8_t KeyRightStatus;
#define KEY_RIGHT_SIGNAL KeyRightStatus
#define KEY_RIGHT_DEFAULT 0
#define KEY_RIGHT_SIGNAL KeyRightStatus
#define KEY_RIGHT_DEFAULT 0
#endif
extern volatile uint8_t KeyEnterinStatus;
#define KEY_ENTER_IN KeyEnterinStatus
#if ((defined KEY_ENTER_IN) || (defined KEY_ENTER_INn))
extern volatile uint8_t KeyEnterStatus;
extern volatile uint8_t KeyEnterStatus;
#define KEY_ENTER_SIGNAL KeyEnterStatus
#define KEY_ENTER_DEFAULT 0
#define KEY_ENTER_SIGNAL KeyEnterStatus
#define KEY_ENTER_DEFAULT 0
#endif
/***LED_SEATBELT_R ***/ //主安全带
#if ((defined LINE_IN_SEATBELT) || (defined LINE_IN_SEATBELTn))
extern volatile uint8_t LineInSEATBELTStatus;
extern volatile uint8_t LineInSEATBELTStatus;
#define LINE_IN_SEATBELT_SIGNAL LineInSEATBELTStatus
#define LINE_IN_SEATBELT_DEFAULT 0
#define LINE_IN_SEATBELT_SIGNAL LineInSEATBELTStatus
#define LINE_IN_SEATBELT_DEFAULT 0
#endif
/***LED_POSITION_G ***/
#if ((defined LINE_IN_POSITION) || (defined LINE_IN_POSITIONn))
extern volatile uint8_t LineInPOSITIONStatus;
extern volatile uint8_t LineInPOSITIONStatus;
#define LINE_IN_POSITION_SIGNAL LineInPOSITIONStatus
#define LINE_IN_POSITION_DEFAULT 0
#define LINE_IN_POSITION_SIGNAL LineInPOSITIONStatus
#define LINE_IN_POSITION_DEFAULT 0
#endif
////////////////////////////////////////////////////////////////////////
/***LED_MIL_Y ***/
#if ((defined LINE_IN_MIL) || (defined LINE_IN_MILn))
extern volatile uint8_t LineInMILStatus;
extern volatile uint8_t LineInMILStatus;
#define LINE_IN_MIL_SIGNAL LineInMILStatus
#define LINE_IN_MIL_DEFAULT 0
#define LINE_IN_MIL_SIGNAL LineInMILStatus
#define LINE_IN_MIL_DEFAULT 0
#endif
/***PTO ***/
/***PTO ***/
#if ((defined LINE_IN_PTO) || (defined LINE_IN_PTOn))
extern volatile uint8_t LineInPTOStatus;
......
......@@ -58,7 +58,8 @@ typedef union
uint8_t : 8; //10 校验和
uint8_t : 8; //11
uint8_t : 8; //12
}Frame;
} Frame;
struct
{
uint8_t SOF : 8;
......@@ -73,8 +74,8 @@ typedef union
uint8_t SND : 8; //10 校验和
uint8_t EOF1 : 8;
uint8_t EOF2 : 8;
}Msg;
}RadarR3DataBufferUnion;
} Msg;
} RadarR3DataBufferUnion;
/******************************************************************************
接收控制结构
......
#ifndef _SOUND_TRACKS_H_
#define _SOUND_TRACKS_H_
......@@ -264,15 +263,9 @@ static const SndTrackStruct SndTracks[] =
},
};
/******************************************************************************
音轨总数
******************************************************************************/
#define SND_TRACK_TOTAL_NUM (sizeof(SndTracks) / sizeof(SndTrackStruct))
#endif
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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