浏览代码

* 2.版本日期修改为“20221206”
3.修复设置数据上报间隔时间命令(00F4)会清除RAM里保存的设备数据;
4.修复设备数据808透传主动上报功能无法关闭问题;
5.海底阀和卸油阀状态,由3态控件,恢复到原处理方式,只改动迪文屏配置文件。

libo 2 年之前
父节点
当前提交
b1441d9965

+ 3 - 4
Inc/CollectMaster485.h

@@ -302,7 +302,7 @@ extern float Zero_Of_LiquidMeter[8];//8
 extern float Zero_Of_TankCapacity[8];//8个仓的罐容表零点参数
 
 
-//extern uint8_t HaiDiFa001;//8个海底阀的状态
+extern uint8_t HaiDiFa001;//8个海底阀的状态
 
 //20210129李伟修改---增加一个全局数组用于保存8个仓的阀门状态(按照平台的位定义协议进行组包)
 extern uint8_t Array_Of_Valve[32];
@@ -334,7 +334,7 @@ extern uint8_t  Array_IO_OnOff_AllStore[];
 extern uint8_t  Array_IO_Exception_AllStore[];
 
 
-//extern uint8_t ValState01,ValState02,ValState03,ValState04,ValState05,ValState06,ValState07,ValState08;
+extern uint8_t ValState01,ValState02,ValState03,ValState04,ValState05,ValState06,ValState07,ValState08;
 
 extern Calibrat_TypeDef  PlatformCalibrat;
 extern uint8_t StoreNumber,all_Store;
@@ -364,10 +364,9 @@ void ReadCollect_QingJiao_TX(void);
 void CollectData_Transform_UsefullData(void);//实时数据转换
 void Immediate_Processing_Function(void);//新增
 void Send_Yewei_offset_To_Collect(void);//
-//void ValStateConvertTo91(void);
+void ValStateConvertTo91(void);
 void UpdateWenYouFifo(void);//稳油数据更新
 
-extern void PreProcess_GetValveStatus(uint8_t* big_cover, uint8_t* small_cover, uint8_t* seavalve, uint8_t* unloadvalve);
 void Get_All_Moniliang_Data_4Cang(uint16_t GroupNum);
 
 //void ReadCollect_ValveState_64Byte(uint8_t CangNum);

+ 1 - 6
Inc/KeySlave485.h

@@ -151,13 +151,7 @@
 #define ADDR_DWIN_Text05 					0x1870   //迪文屏幕显示文本框的地址---启动界面的版本信息
 
 
-#define VALVESTATUS_EXCEPTION    (0X00)
-#define VALVESTATUS_BREAK        (0X01)   //not used
-#define VALVESTATUS_OPEN         (0X02)
-#define VALVESTATUS_CLOSE        (0X03)
 
-#define ADDR_DWIN_UnloadVlave_Status    0x1900   //四态(异常,破,开,关),破不设置, 该地址为第一仓地址,后边每仓地址+2
-#define ADDR_DWIN_SeaVlave_Status       0x1910   //四态(异常,破,开,关),破不设置,该地址为第一仓地址,后边每仓地址+2
 
 
 //#define ADDR_DWIN_Title_IO 0x1B00   //阀门名称标志
@@ -247,6 +241,7 @@
 //add poly 20221027 FRAM地址与ADDR_OiLType_Data地址冲突,将外部地址也内部地址分离
 #define 	FRAM_ADDR_Scan_Param			0x00C4	//	196		长度16字节,存储主动发送配置参数
 #define 	FRAM_ADDR_Scan_flowID			0x00D4	//	212		长度4字节,发送序列ID存储
+#define 	IDEX_ADDR_Read_WorkSt			0x00D8	//	216		用于响应上位机下发的运行状态数据帧
 //end add poly
 #define 	ADDR_OiLType_Data					0x00E4	//	228		油品参数   膨胀系数 0.0008  0.0012
 //modify poly 20221027 FRAM地址与ADDR_OiLType_Data地址冲突,将外部地址也内部地址分离

+ 1 - 1
Inc/main.h

@@ -64,7 +64,7 @@ extern "C" {
 #include "stm32f7xx_hal.h"
 
 #define REMOTE_IAP_UPDATA 		1 	//是否是远程升级 //0--本地运行版本      1---远程升级版本
-#define WATCH_DOG_ON 					0   //是否打开看门狗 //0--关闭看门狗SP706   1---打开看门狗SP706
+#define WATCH_DOG_ON 					1   //是否打开看门狗 //0--关闭看门狗SP706   1---打开看门狗SP706
 #define USE_RAM_RECORD    		1   //是否启用RAM数据缓存重发机制
 #define USE_QUEUE_RECORD			1   //是否启用队列数据缓存重发机制
 

文件差异内容过多而无法显示
+ 238 - 85
MDK-ARM/TestF7.uvguix.Administrator


+ 17 - 7
MDK-ARM/TestF7.uvoptx

@@ -120,7 +120,7 @@
         <SetRegEntry>
           <Number>0</Number>
           <Key>DLGUARM</Key>
-          <Name>d</Name>
+          <Name></Name>
         </SetRegEntry>
         <SetRegEntry>
           <Number>0</Number>
@@ -235,6 +235,16 @@
           <WinNumber>1</WinNumber>
           <ItemText>Pass41SensorScanParam</ItemText>
         </Ww>
+        <Ww>
+          <count>14</count>
+          <WinNumber>1</WinNumber>
+          <ItemText>T2C_RemoteCaliDat001</ItemText>
+        </Ww>
+        <Ww>
+          <count>15</count>
+          <WinNumber>1</WinNumber>
+          <ItemText>USART1_TX_BUF</ItemText>
+        </Ww>
       </WatchWindow1>
       <WatchWindow2>
         <Ww>
@@ -350,7 +360,7 @@
 
   <Group>
     <GroupName>Application/User</GroupName>
-    <tvExp>1</tvExp>
+    <tvExp>0</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>
@@ -650,7 +660,7 @@
 
   <Group>
     <GroupName>Drivers/STM32F7xx_HAL_Driver</GroupName>
-    <tvExp>0</tvExp>
+    <tvExp>1</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>
@@ -898,7 +908,7 @@
 
   <Group>
     <GroupName>Application/MDK-ARM</GroupName>
-    <tvExp>0</tvExp>
+    <tvExp>1</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>
@@ -918,7 +928,7 @@
 
   <Group>
     <GroupName>Middlewares/FreeRTOS</GroupName>
-    <tvExp>0</tvExp>
+    <tvExp>1</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>
@@ -1166,7 +1176,7 @@
 
   <Group>
     <GroupName>obj</GroupName>
-    <tvExp>0</tvExp>
+    <tvExp>1</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>
@@ -1246,7 +1256,7 @@
 
   <Group>
     <GroupName>func</GroupName>
-    <tvExp>0</tvExp>
+    <tvExp>1</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>

+ 5 - 5
MDK-ARM/TestF7.uvprojx

@@ -275,7 +275,7 @@
               </OCR_RVCT3>
               <OCR_RVCT4>
                 <Type>1</Type>
-                <StartAddress>0x8000000</StartAddress>
+                <StartAddress>0x8080000</StartAddress>
                 <Size>0x20000</Size>
               </OCR_RVCT4>
               <OCR_RVCT5>
@@ -300,13 +300,13 @@
               </OCR_RVCT8>
               <OCR_RVCT9>
                 <Type>0</Type>
-                <StartAddress>0x20020000</StartAddress>
-                <Size>0x60000</Size>
+                <StartAddress>0x20000000</StartAddress>
+                <Size>0xffff</Size>
               </OCR_RVCT9>
               <OCR_RVCT10>
                 <Type>0</Type>
-                <StartAddress>0x20000000</StartAddress>
-                <Size>0x20000</Size>
+                <StartAddress>0x20010000</StartAddress>
+                <Size>0xb0000</Size>
               </OCR_RVCT10>
             </OnChipMemories>
             <RvctStartVector></RvctStartVector>

+ 5 - 40
Src/CollectMaster485.c

@@ -75,7 +75,7 @@ uint8_t ValStateArr_0x20_Cang04[64],ValStateArr_PoFeng_0x20_Cang04[64];//
 uint8_t Array_Of_Valve[32];//
 //20210129李伟修改  -----从采集器读取的8个阀门的状态,对应于原来的采集器的8仓;
 //对应于平台解析的1--4号阀门状态(每仓4个阀门,最多32个阀门)
-uint8_t ValState01[8]; //ValState02,ValState03,ValState04,ValState05,ValState06,ValState07,ValState08;
+uint8_t ValState01,ValState02,ValState03,ValState04,ValState05,ValState06,ValState07,ValState08;
 uint8_t Val_4Bit_H,Val_4Bit_L;//高四位与低四位
 
 uint32_t IO_OnOff_State01=0,IO_OnOff_State02=0,IO_OnOff_State03=0,IO_OnOff_State04=0;
@@ -107,10 +107,10 @@ uint8_t StoreNumber=3,all_Store=3;
 
 uint8_t CabinetNumForWenYou=0;//默认选择第一个仓的液位计用作稳油判断
 
-//uint8_t HaiDiFa001=0x00;//8个海底阀的状态
-//uint8_t XieYouFa001=0x00;//8个泄油阀的状态
-//uint8_t ManHole_CoverBig001=0x00;//8个人孔大盖的状态
-//uint8_t ManHole_CoverSmall001=0x00;//8个人孔小盖的状态
+uint8_t HaiDiFa001=0x00;//8个海底阀的状态
+uint8_t XieYouFa001=0x00;//8个泄油阀的状态
+uint8_t ManHole_CoverBig001=0x00;//8个人孔大盖的状态
+uint8_t ManHole_CoverSmall001=0x00;//8个人孔小盖的状态
  
 uni_IncliAngle uni_IncliAngle001;
 uni_TankVol_Tempe20 uni_TankVol_Tempe20_001,uni_TankVol_Tempe20_002,uni_TempRealtime001;
@@ -181,40 +181,7 @@ void CollectMaster485_TX_Set(uint8_t en)
 
 }
 
-#if 1
-void PreProcess_GetValveStatus(uint8_t* big_cover, uint8_t* small_cover, uint8_t* seavalve, uint8_t* unloadvalve)
-{
-	int i=0;
-	ValState01[0]=Collect485.ValveState_Num1;//采集器的1仓
-	ValState01[1]=Collect485.ValveState_Num2;//采集器的2仓
-	ValState01[2]=Collect485.ValveState_Num3;//采集器的3仓
-	ValState01[3]=Collect485.ValveState_Num4;//采集器的4仓
-	ValState01[4]=Collect485.ValveState_Num5;//采集器的5仓
-	ValState01[5]=Collect485.ValveState_Num6;//采集器的6仓
-	ValState01[6]=Collect485.ValveState_Num7;//采集器的7仓
-	ValState01[7]=Collect485.ValveState_Num8;//采集器的8仓
-
-	for(i=0; i<Config_info_all.All_number; i++){
-		if(ValState01[i]&GPIO_PIN_0){
-			*big_cover |= (0X01 << i);
-		}
-
-		if(ValState01[i]&GPIO_PIN_1){
-			*small_cover |= (0X01 << i);
-		}
-
-		if(ValState01[i]&GPIO_PIN_2){
-			*seavalve |= (0X01 << i);
-		}
-
-		if(ValState01[i]&GPIO_PIN_3){
-			*unloadvalve |= (0X01 << i);
-		}
-	}
 
-
-}
-#else 
 //RS485模式控制.
 //将阀门状态按照0x91的规格进行打包。有效数据32字节
 //
@@ -455,8 +422,6 @@ void ValStateConvertTo91(void)
 			//-----------------------------------------------------1号传感器结束,只实现了第1仓,剩下7仓未实现
      //李伟修改 20210206     根据上午会议讨论,1仓位置与7仓位置交换------结束
 }
-
-#endif 
 uint32_t a1_cnt  = 0;
 #include "Elec_Seal.h"
 uint16_t CheckInFrame_Collect485(uint16_t LenRx,uint16_t MsgID)

+ 21 - 110
Src/Dwin.c

@@ -16,11 +16,6 @@ uint8_t Lcd_sleep_flag =2;//1
 uint8_t DateDwin[8];
 uint8_t time_Set_Dwin[14]={0x5A, 0xA5, 0x0B ,0x82 ,0x00 ,0x9C ,0x5A ,0xA5 ,0x13 ,0x05 ,0x1B ,0x0b ,0x1b ,0x19};
 
-#define UI_VERSION_00  (0X00)
-#define UI_VERSION_2B  (0X2B)
-
-static uint8_t ui_version = UI_VERSION_00;
-
 SemaphoreHandle_t xSemaphore = NULL;
 int Init_Dwin_Signal(void)
 {
@@ -540,21 +535,17 @@ void Go_homepage(void)
 void Lcd_Init(void)
 {
 	//初始化界面
+	
+
 	WrDwinCmd16(ADDR_DWIN_CoverSmall,0x00);//人孔小盖关
 //	HAL_Delay(15);
 	WrDwinCmd16(ADDR_DWIN_CoverBig,0x00);//人孔大盖关
 //	HAL_Delay(15);
-
-	if(UI_VERSION_2B > ui_version){
-		WrDwinCmd16(ADDR_DWIN_HaiDiFa,0x00);//底阀关
-		WrDwinCmd16(ADDR_DWIN_XieYouFa,0x00);//卸油阀关
-	}else{
-		for(int i=0;i<StoreNumber;i++){
-			WrDwinCmd16(ADDR_DWIN_UnloadVlave_Status+2*i, VALVESTATUS_CLOSE); 
-			WrDwinCmd16(ADDR_DWIN_SeaVlave_Status+2*i, VALVESTATUS_CLOSE); 
-		}
-	}
+	WrDwinCmd16(ADDR_DWIN_HaiDiFa,0x00);//底阀关
+//	HAL_Delay(15);
 	
+	
+	WrDwinCmd16(ADDR_DWIN_XieYouFa,0x00);//卸油阀关
 //	HAL_Delay(15);
 	
 	WrDwinCmd16(ADDR_DWIN_Seal_Lock,0xff);//锁不显示--
@@ -690,30 +681,18 @@ void Lcd_Init(void)
 输入:无
 输出返回:无	
 ******************************************************************************/
-uint8_t a=0,b=0,c=0,d=0;
+uint8_t a=0,b=0,c=0,d=0,i =0;
 uint8_t e1=0,f1=0,g1=0,h1=0;
 void Dispaly_CarAndValveState(void)
 {
 	uint8_t e=0,f=0,g=0,h=0;
-	uint8_t i=0;
-
-	uint8_t SeaValue001=0x00;//8个海底阀的状态
-    uint8_t UnloadingValve001=0x00;//8个泄油阀的状态
-    uint8_t ManHole_CoverBig001=0x00;//8个人孔大盖的状态
-    uint8_t ManHole_CoverSmall001=0x00;//8个人孔小盖的状态
-    //uint8_t Unloaded001=0x00;//8个卸尽状态, 卸尽仓置1
-
-	static uint8_t static_unloadvalve_state[8] ={VALVESTATUS_BREAK,VALVESTATUS_BREAK,VALVESTATUS_BREAK,VALVESTATUS_BREAK\
-                                                ,VALVESTATUS_BREAK,VALVESTATUS_BREAK,VALVESTATUS_BREAK,VALVESTATUS_BREAK};
-    static uint8_t static_seavalve_state[8] ={VALVESTATUS_BREAK,VALVESTATUS_BREAK,VALVESTATUS_BREAK,VALVESTATUS_BREAK\
-                                            ,VALVESTATUS_BREAK,VALVESTATUS_BREAK,VALVESTATUS_BREAK,VALVESTATUS_BREAK};
-
+	e=0,f=0,g=0,h=0;
 	for(i=0;i<StoreNumber;i++)
 	{
-		//a|= (0x0001&(IO_Date.IO_state[0]>>i*4))<<i;
-		//b|= (0x0001&(IO_Date.IO_state[0]>>(i*4+1)))<<i;
-		//c|= (0x0001&(IO_Date.IO_state[0]>>(i*4+2)))<<i;
-		//d|= (0x0001&(IO_Date.IO_state[0]>>(i*4+3)))<<i;
+		a|= (0x0001&(IO_Date.IO_state[0]>>i*4))<<i;
+		b|= (0x0001&(IO_Date.IO_state[0]>>(i*4+1)))<<i;
+		c|= (0x0001&(IO_Date.IO_state[0]>>(i*4+2)))<<i;
+		d|= (0x0001&(IO_Date.IO_state[0]>>(i*4+3)))<<i;
 		e|= (0x0001&(IO_Date.IO_normalstate[0]>>i*4))<<i;
 		f|= (0x0001&(IO_Date.IO_normalstate[0]>>(i*4+1)))<<i;
 		g|= (0x0001&(IO_Date.IO_normalstate[0]>>(i*4+2)))<<i;
@@ -728,20 +707,6 @@ void Dispaly_CarAndValveState(void)
 //		WrDwinCmd16(0x1003,b);//人孔大盖关
 //		WrDwinCmd16(0x1006,d);//底阀关
 //		WrDwinCmd16(0x1009,c);//卸油阀关
-
-		PreProcess_GetValveStatus(&ManHole_CoverBig001, &ManHole_CoverSmall001, &SeaValue001, &UnloadingValve001);
-
-		if(a!=ManHole_CoverBig001)
-		{
-			WrDwinCmd16(ADDR_DWIN_CoverBig,ManHole_CoverBig001);//人孔大盖开关
-			a=ManHole_CoverBig001;
-		}
-		if(b!=ManHole_CoverSmall001)
-		{
-			WrDwinCmd16(ADDR_DWIN_CoverSmall,ManHole_CoverSmall001);//人孔小盖开关
-			b=ManHole_CoverSmall001;
-		}
-
 		if(e1!=e)
 		{
 			WrDwinCmd16(ADDR_DWIN_StateYiChang_CoverSmall,e);//人孔小盖异常
@@ -752,70 +717,16 @@ void Dispaly_CarAndValveState(void)
 			WrDwinCmd16(ADDR_DWIN_StateYiChang_CoverBig,f);//人孔大盖异常
 			f1=f;
 		}
-
-		if(UI_VERSION_2B > ui_version){
-
-			if(c!=SeaValue001)
-			{
-				WrDwinCmd16(ADDR_DWIN_HaiDiFa,SeaValue001);//海底阀开关
-				c=SeaValue001;
-			}
-			if(d!=UnloadingValve001)
-			{
-				WrDwinCmd16(ADDR_DWIN_XieYouFa,UnloadingValve001);//卸油阀开关
-				d=UnloadingValve001;
-			}
-
-			if(h1!=h)
-			{
-				WrDwinCmd16(ADDR_DWIN_StateYiChang_HaiDiFa,h);//底阀异常
-				h1 = h;
-			}
-			if(g1!=g)
-			{
-				WrDwinCmd16(ADDR_DWIN_StateYiChang_XieYouFa,g);//卸油阀异常
-				g1 = g;
-			}
-
-		}else{
-
-			for(i=0;i<StoreNumber;i++)
-			{
-				uint8_t status = VALVESTATUS_CLOSE;
-				if((g&(0x01<<i)) > 0){ //异常了
-					status = VALVESTATUS_EXCEPTION;
-				}else{
-					if((UnloadingValve001&(0x01<<i)) == 0){ //关
-						status = VALVESTATUS_CLOSE;
-					}else{ //开
-						status = VALVESTATUS_OPEN;
-					}
-				}
-
-				if(static_unloadvalve_state[i] != status){
-					WrDwinCmd16(ADDR_DWIN_UnloadVlave_Status+2*i, status); 
-					static_unloadvalve_state[i] = status; 
-				}
-
-				//SealVlave
-				if((h&(0x01<<i)) > 0){ //异常了
-					status = VALVESTATUS_EXCEPTION;
-				}else{
-					if((SeaValue001&(0x01<<i)) == 0){ //关
-						status = VALVESTATUS_CLOSE;
-					}else{ //开
-						status = VALVESTATUS_OPEN;
-					}
-				}
-
-				if(static_seavalve_state[i] != status){
-					WrDwinCmd16(ADDR_DWIN_SeaVlave_Status+2*i, status); 
-					static_seavalve_state[i] = status; 
-				}
-
-			}
+		if(h1!=h)
+		{
+			WrDwinCmd16(ADDR_DWIN_StateYiChang_HaiDiFa,h);//底阀异常
+			h1 = h;
+		}
+		if(g1!=g)
+		{
+			WrDwinCmd16(ADDR_DWIN_StateYiChang_XieYouFa,g);//卸油阀异常
+			g1 = g;
 		}
-
 #if 0		
 		if(Full_Oil_allinfo.Null_ID!=Full_Oil_allinfo.Null_ID_disp)
 		{

+ 1 - 1
Src/KeySlave485.c

@@ -38,7 +38,7 @@ uint8_t product_code[20] = "JL-SIMS-CJ-V2.1";				 //
 uint8_t product_ID[20] = "20210730001";						 //产品ID
 
 char Version_software[30] = "KZB09A0_20220210_Temp1";
-uint32_t Version_Soft[8] = {2,2,3,13,1,1,0,20221130};
+uint32_t Version_Soft[8] = {2,2,3,13,1,1,0,20221206};
 
 uint8_t flag_exitReset = 0;	 //终止复位命令
 uint8_t flag_Uart4_Busy = 0; //表明打印机占用了总线,暂停语音播报

+ 4 - 1
Src/TerminalSlave485.c

@@ -5089,6 +5089,9 @@ int 	Process_CMD_0x39_RemoteCali(uint8_t dataMode)
 				case	IDEX_ADDR_Scan_Param:
  					FM25L16B_Read_N_Bytes(FRAM_ADDR_Scan_Param,T2C_RemoteCaliDat001.PayLoadData,16);
 					T2C_RemoteCaliDat001.NumberOfRegs = 16; 
+      		break;	
+				case	IDEX_ADDR_Read_WorkSt: 					
+					T2C_RemoteCaliDat001.NumberOfRegs = jt808_Build_Read_WorkSt(T2C_RemoteCaliDat001.PayLoadData); 
       		break;	
 				default:
 
@@ -5639,7 +5642,7 @@ int 	Process_CMD_0x39_RemoteCali(uint8_t dataMode)
 		{
 			sprintf((char *)(&USART1_TX_BUF[33 + i001 * 2]), "%02X", T2C_RemoteCaliDat001.PayLoadData[i001]);
 		}
-
+		
 		Lrc_temp = MODBUS_ASCII_GetLrc(USART1_TX_BUF + 1, 32 + T2C_RemoteCaliDat001.NumberOfRegs * 2);
 		sprintf((char *)(&USART1_TX_BUF[33 + T2C_RemoteCaliDat001.NumberOfRegs * 2]), "%02X", Lrc_temp);
 		USART1_TX_BUF[35 + T2C_RemoteCaliDat001.NumberOfRegs * 2] = 0x0D;

+ 34 - 0
Src/TerminalSlave485_jt808.c

@@ -911,4 +911,38 @@ void jt808_InitSensorScanParam(void)
 	jt808_read_Scan_flowID(&(jt808_obj.flowID));
 }
 
+
+/**
+ ***************************************
+ * 初始化发送配置参数
+ * 输入:无
+ * 返回: 无
+ ***************************************
+ */
+
+uint8_t jt808_Build_Read_WorkSt(uint8_t * PayLoad)
+{
+	uint8_t idx = 0;
+	PayLoad[idx++] = func_record_queue_flash_get();
+	PayLoad[idx++] = jt808_obj.link_ok;
+	
+	uint32_t msg_num = 0;
+	if(PayLoad[0] == true)
+	{
+		msg_num = func_record_queue_obj_cnt();
+	}
+	else
+	{
+		msg_num = func_ram_obj_num(DATA_UNIT_SIZE);
+	}
+	
+	PayLoad[idx++] = (msg_num>>24)&0xff;
+	PayLoad[idx++] = (msg_num>>16)&0xff;
+	PayLoad[idx++] = (msg_num>>8)&0xff;
+	PayLoad[idx++] = (msg_num)&0xff;
+	
+	return idx;
+	
+}
+
 #endif    /*************APP_TERMINALSLAVE485_JT808_USE*******************/

+ 1 - 1
Src/TerminalSlave485_jt808.h

@@ -46,7 +46,7 @@ extern Pass41SensorScanParam_TypeDef Pass41SensorScanParam;
 void jt808_InitSensorScanParam(void);
 void jt808_DoInternalSensorScanAndPost(void);
 void jt808_recv_func_DataBack(uint8_t * buf ,uint8_t len);
-
+uint8_t jt808_Build_Read_WorkSt(uint8_t * PayLoad);
 
 
 #endif    /*********TERMINALSLAVE485_JT808_H****************/

+ 1 - 1
Src/freertos.c

@@ -847,7 +847,7 @@ void Task_Usart3_LCD_Update(void const *argument)
 		//Read_REAL_Time();//获取迪文屏时间,刷新至全局变量
 
 		//if(i00Data>=1*2)//给屏幕发送指令,刷新传感器的数值显示
-		//ValStateConvertTo91();
+		ValStateConvertTo91();
 		if (StartUpdate_Screen_Flag == True) //1S更新一次小屏状态
 		{
 			StartUpdate_Screen_Flag = False;

+ 2 - 2
func/func_queue_record.c

@@ -312,7 +312,7 @@ uint8_t func_record_queue_flash_get(void)
 	return queue_record_obj.flash_ok;
 }
 
-uint32_t func_record_queue_cnt(void)
+uint32_t func_record_queue_obj_cnt(void)
 {
 	uint32_t cnt_estimate = 0;
 	
@@ -438,7 +438,7 @@ void func_record_queue_main(void const *argument)
 		
 		if(queue_record_obj.flash_ok == true)			//flash正常,且处于读取状态时进行数量计算;			
 		{		
-			func_record_queue_cnt();
+			func_record_queue_obj_cnt();
 			
 			func_record_queue_work();	
 			

+ 1 - 0
func/func_queue_record.h

@@ -37,6 +37,7 @@ void 		func_record_queue_update(void);
 
 uint32_t func_record_queue_write(void *buf ,uint32_t len);
 uint32_t func_record_queue_read(void *buf ,uint32_t len);
+uint32_t func_record_queue_obj_cnt(void);
 void 		 func_record_queue_link_set(uint8_t stat);
 uint8_t  func_record_queue_link_get(void);
 uint8_t  func_record_queue_flash_get(void);

+ 5 - 0
func/func_ram_record.c

@@ -82,6 +82,11 @@ uint32_t func_ram_record_delete(uint8_t *buf,uint32_t len)
 	return read_len;
 }
 
+uint32_t func_ram_obj_num(uint32_t obj_size)
+{
+	uint32_t 		read_len = RingBuf_obj_num(ram_record_handle, (int) obj_size);
+	return read_len;
+}
 
 void func_ram_record_init(void)
 {	

+ 1 - 0
func/func_ram_record.h

@@ -53,6 +53,7 @@ void 		 func_ram_record_init(void);											//
 uint32_t func_ram_record_write(uint8_t *buf ,uint32_t len);
 uint32_t func_ram_record_read(uint8_t *buf ,uint32_t len);
 uint32_t func_ram_record_delete(uint8_t *buf,uint32_t len);
+uint32_t func_ram_obj_num(uint32_t obj_size);
 
 void func_ram_record_test(void);	
 

+ 1 - 0
func/func_spi_w25qxx.c

@@ -9,6 +9,7 @@
 //#define FUNC_SPI_W25QXX_USE
 #include <string.h>
 #include <stdbool.h>
+#include "cmsis_os.h"
 #include "func_spi_w25qxx.h"
 #include "obj_hal_w25qxx.h"
 #include "obj_soft_w25qxx.h"

+ 0 - 27
keilkilll.bat

@@ -1,27 +0,0 @@
-del *.bak /s
-del *.ddk /s
-del *.edk /s
-del *.lst /s
-del *.lnp /s
-del *.mpf /s
-del *.mpj /s
-del *.obj /s
-del *.omf /s
-::del *.opt /s  ::²»ÔÊÐíɾ³ýJLINKµÄÉèÖÃ
-del *.plg /s
-del *.rpt /s
-del *.tmp /s
-del *.__i /s
-del *.crf /s
-del *.o /s
-del *.d /s
-::del *.axf /s
-del *.tra /s
-del *.dep /s           
-del JLinkLog.txt /s
-
-del *.iex /s
-del *.htm /s
-del *.sct /s
-del *.map /s
-exit