Эх сурвалжийг харах

Signed-off-by: zhuhongbin <kptzhu@163.com>增加铲车可以显示10以上号,以A/B/C
Signed-off-by: zhuhongbin <kptzhu@163.com>

zhuhongbin 2 жил өмнө
parent
commit
3426e716d6
4 өөрчлөгдсөн 41 нэмэгдсэн , 18 устгасан
  1. 8 8
      tmr/Ad.c
  2. 8 5
      tmr/buffer.c
  3. 16 1
      tmr/button.c
  4. 9 4
      tmr/display.c

+ 8 - 8
tmr/Ad.c

@@ -129,11 +129,11 @@ ulng get_weight(void)
         ad_sample=ad_sample_temp;
         ad_sample=ad_sample_temp;
     // ad_sample_=ad_sample;
     // ad_sample_=ad_sample;
     //  ad_sample=(int)((float)ad_sample * 0.01 + (1.0 - 0.01) * (float)ad_sample);
     //  ad_sample=(int)((float)ad_sample * 0.01 + (1.0 - 0.01) * (float)ad_sample);
-   // ad_sample = AdFilter_xf(ad_sample);  //限幅滤波	 FLT_XF_CNT=32;
+   
 					
 					
 		tempvalw = ad_sample;
 		tempvalw = ad_sample;
-		ad_sample = middleFilter(ad_sample);	
-		/*
+		ad_sample = middleFilter(ad_sample);	 
+		ad_sample = AdFilter_xf(ad_sample);  //限幅滤波	 FLT_XF_CNT=32;
 		switch(fs[1])
 		switch(fs[1])
 		{
 		{
 		case 1:
 		case 1:
@@ -161,7 +161,7 @@ ulng get_weight(void)
 				ad_sample = Kalman_Filter(ad_sample, 0.125, 0.5);
 				ad_sample = Kalman_Filter(ad_sample, 0.125, 0.5);
 				break;
 				break;
 		}	  
 		}	  
-	*/
+	
 		ad_sample = AdFilter(ad_sample);     //滑动滤波	  FLT_CNT=32;		
 		ad_sample = AdFilter(ad_sample);     //滑动滤波	  FLT_CNT=32;		
 						
 						
 		if (tempWeighttime<100){	
 		if (tempWeighttime<100){	
@@ -281,7 +281,7 @@ ulng Ad_Sample1(void)
             _nop_();
             _nop_();
        //     _nop_();
        //     _nop_();
         }
         }
-
+/*
         if ((AdSample&0x00800000)!=0)
         if ((AdSample&0x00800000)!=0)
         {
         {
             AdSample=~AdSample+1;
             AdSample=~AdSample+1;
@@ -293,7 +293,7 @@ ulng Ad_Sample1(void)
             AdSample&=0x007fffff;
             AdSample&=0x007fffff;
             AdSample=0x007fffff+AdSample;
             AdSample=0x007fffff+AdSample;
         }
         }
-				
+				*/
         if (fs[1]<=4 && fs[1]>0 )
         if (fs[1]<=4 && fs[1]>0 )
             AdSample = AdSample>>3;
             AdSample = AdSample>>3;
         else if (fs[1]>4 && fs[1]<=6 )
         else if (fs[1]>4 && fs[1]<=6 )
@@ -552,12 +552,12 @@ void Speed(void)
         break;
         break;
     case 3:
     case 3:
         ad_ini_flag1=0;
         ad_ini_flag1=0;
-        FLT_CNT=32;
+        FLT_CNT=24;
         AVG_CNT=6;
         AVG_CNT=6;
         break;
         break;
     case 4:
     case 4:
         ad_ini_flag1=0;
         ad_ini_flag1=0;
-        FLT_CNT=48;
+        FLT_CNT=24;
         AVG_CNT=6;
         AVG_CNT=6;
         break;
         break;
     case 5:
     case 5:

+ 8 - 5
tmr/buffer.c

@@ -80,6 +80,8 @@ unsigned char readyPop = 0;
 static unsigned char XbeeConst_FRxBuf12[100];        //处理完整无线临时表					
 static unsigned char XbeeConst_FRxBuf12[100];        //处理完整无线临时表					
 
 
 
 
+char b[40] = { '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U'};
+
 unsigned char* BleApp2MakeFrame(unsigned short dist,unsigned char cmd,unsigned char type,unsigned char* buf)//返回一个处理完成后的数组的首地址
 unsigned char* BleApp2MakeFrame(unsigned short dist,unsigned char cmd,unsigned char type,unsigned char* buf)//返回一个处理完成后的数组的首地址
 {
 {
     unsigned char len = buf[0];
     unsigned char len = buf[0];
@@ -575,14 +577,15 @@ void RX_Remote(void) {
                                 XbeeConst_FRxBuf0_Remote[18] = 0x20;
                                 XbeeConst_FRxBuf0_Remote[18] = 0x20;
                                 XbeeConst_FRxBuf0_Remote[17] = 0x20;
                                 XbeeConst_FRxBuf0_Remote[17] = 0x20;
                                 XbeeConst_FRxBuf0_Remote[16] = 0x20;
                                 XbeeConst_FRxBuf0_Remote[16] = 0x20;
-                                XbeeConst_FRxBuf0_Remote[15] = 0x20;
-                                XbeeConst_FRxBuf0_Remote[14] = XbeeConst_RemoteAddress + 0x30;
+															  XbeeConst_FRxBuf0_Remote[15] = 0x20;
+															  XbeeConst_FRxBuf0_Remote[14] = b[XbeeConst_RemoteAddress];
                             }
                             }
                             else
                             else
                             {
                             {
-                                XbeeConst_FRxBuf0_Remote[16] = XbeeConst_FRxBuf0_Remote[15];
-                                XbeeConst_FRxBuf0_Remote[15] = XbeeConst_FRxBuf0_Remote[14];
-                                XbeeConst_FRxBuf0_Remote[14] = XbeeConst_RemoteAddress + 0x30;
+                                XbeeConst_FRxBuf0_Remote[17] = XbeeConst_FRxBuf0_Remote[16];
+														  	XbeeConst_FRxBuf0_Remote[16] = XbeeConst_FRxBuf0_Remote[15];
+															  XbeeConst_FRxBuf0_Remote[15] = XbeeConst_FRxBuf0_Remote[14];
+																XbeeConst_FRxBuf0_Remote[14] = b[XbeeConst_RemoteAddress];				
                             }
                             }
 
 
                             for (unsigned short i=4; i < 22; i++)   //显示重量
                             for (unsigned short i=4; i < 22; i++)   //显示重量

+ 16 - 1
tmr/button.c

@@ -697,7 +697,22 @@ static void CheckButton_entry(void *parameter) {
                     beep();
                     beep();
                 }
                 }
 								else {
 								else {
-								  Planback();
+								 // Planback();
+									/*
+									if (pf_comp.data.needBegin==1 && WeightConst_WeightHaveBegin==0)
+                    {
+                        beep();
+												rt_sem_take(weight_lock, RT_WAITING_FOREVER);
+                        WeightConst_WeightBegin = WeightConst_WeightCur;
+												rt_sem_release(weight_lock);
+											  CompleteTarget_order = pf_comp.data.pfsort;
+											  write_Flash("completeorder", &CompleteTarget_order, sizeof(CompleteTarget_order));	
+											  rt_sem_take(setTIME_lock, RT_WAITING_FOREVER);
+											  write_Flash("begintime", &TimeConst, sizeof(TimeConst));				
+											  rt_sem_release(setTIME_lock);							
+                        write_Flash("beginweight", &WeightConst_WeightBegin, sizeof(WeightConst_WeightBegin)); 
+                        getTargetWeight();
+                    }*/
 								}
 								}
             }
             }
             else
             else

+ 9 - 4
tmr/display.c

@@ -24,8 +24,7 @@ static signed long WeightConst_Weight_displayW;   //
 static signed long WeightConst_Weight_displayCurW;   //显示重量
 static signed long WeightConst_Weight_displayCurW;   //显示重量
 unsigned char WeightConst_displayTotal = 0;  //0差重,1实重
 unsigned char WeightConst_displayTotal = 0;  //0差重,1实重
 unsigned char WeightConst_remoteDisplay = 0;
 unsigned char WeightConst_remoteDisplay = 0;
-unsigned char RemoteSendDisplay = 1;
-extern unsigned char  iscowweight;
+unsigned char RemoteSendDisplay = 1;extern unsigned char  iscowweight;
 extern unsigned char  remote_sumweight;
 extern unsigned char  remote_sumweight;
 const uint8_t MenuItemList[12][8] = {{0xC9,0xE8,0xB1,0xB8,0xB5,0xD8,0xD6,0xB7}, //设备地址
 const uint8_t MenuItemList[12][8] = {{0xC9,0xE8,0xB1,0xB8,0xB5,0xD8,0xD6,0xB7}, //设备地址
     {0xCC,0xE1,0xC8,0xA1,0xB7,0xBD,0xCA,0xBD}, //提取方式
     {0xCC,0xE1,0xC8,0xA1,0xB7,0xBD,0xCA,0xBD}, //提取方式
@@ -648,9 +647,15 @@ static void sendRemote(void *parameter)
 void ChancheShow(void) {
 void ChancheShow(void) {
     uart4_send_data[0] = 0x7E;
     uart4_send_data[0] = 0x7E;
     uart4_send_data[1] = 0x45;
     uart4_send_data[1] = 0x45;
-    uart4_send_data[2] = XbeeConst_RemoteAddress + '0';
+		if (XbeeConst_RemoteAddress>9) {
+			uart4_send_data[2] = 1 + '0';
+			uart4_send_data[3] = XbeeConst_RemoteAddress%10 + '0';
+		}else{
+			uart4_send_data[2] = XbeeConst_RemoteAddress + '0';
+			uart4_send_data[3] = 0x20;
+		}
 
 
-    for (int i = 3; i < 18; i++) //将缓冲区发出
+    for (int i = 4; i < 18; i++) //将缓冲区发出
         uart4_send_data[i] = 0x20;
         uart4_send_data[i] = 0x20;
 	
 	
 		rt_sem_take(uart4_lock, RT_WAITING_FOREVER);				
 		rt_sem_take(uart4_lock, RT_WAITING_FOREVER);