@@ -129,11 +129,11 @@ ulng get_weight(void)
ad_sample=ad_sample_temp;
// ad_sample_=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;
- ad_sample = middleFilter(ad_sample);
- /*
+ ad_sample = middleFilter(ad_sample);
+ ad_sample = AdFilter_xf(ad_sample); //限幅滤波 FLT_XF_CNT=32;
switch(fs[1])
{
case 1:
@@ -161,7 +161,7 @@ ulng get_weight(void)
ad_sample = Kalman_Filter(ad_sample, 0.125, 0.5);
break;
}
- */
ad_sample = AdFilter(ad_sample); //滑动滤波 FLT_CNT=32;
if (tempWeighttime<100){
@@ -281,7 +281,7 @@ ulng Ad_Sample1(void)
_nop_();
// _nop_();
-
+/*
if ((AdSample&0x00800000)!=0)
AdSample=~AdSample+1;
@@ -293,7 +293,7 @@ ulng Ad_Sample1(void)
AdSample&=0x007fffff;
AdSample=0x007fffff+AdSample;
+ */
if (fs[1]<=4 && fs[1]>0 )
AdSample = AdSample>>3;
else if (fs[1]>4 && fs[1]<=6 )
@@ -552,12 +552,12 @@ void Speed(void)
case 3:
ad_ini_flag1=0;
- FLT_CNT=32;
+ FLT_CNT=24;
AVG_CNT=6;
case 4:
- FLT_CNT=48;
case 5:
@@ -80,6 +80,8 @@ unsigned char readyPop = 0;
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 len = buf[0];
@@ -575,14 +577,15 @@ void RX_Remote(void) {
XbeeConst_FRxBuf0_Remote[18] = 0x20;
XbeeConst_FRxBuf0_Remote[17] = 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
- XbeeConst_FRxBuf0_Remote[16] = XbeeConst_FRxBuf0_Remote[15];
- XbeeConst_FRxBuf0_Remote[15] = XbeeConst_FRxBuf0_Remote[14];
+ XbeeConst_FRxBuf0_Remote[17] = XbeeConst_FRxBuf0_Remote[16];
+ XbeeConst_FRxBuf0_Remote[16] = XbeeConst_FRxBuf0_Remote[15];
+ XbeeConst_FRxBuf0_Remote[15] = XbeeConst_FRxBuf0_Remote[14];
for (unsigned short i=4; i < 22; i++) //显示重量
@@ -697,7 +697,22 @@ static void CheckButton_entry(void *parameter) {
beep();
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();
+ }*/
@@ -24,8 +24,7 @@ static signed long WeightConst_Weight_displayW; //
static signed long WeightConst_Weight_displayCurW; //显示重量
unsigned char WeightConst_displayTotal = 0; //0差重,1实重
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;
const uint8_t MenuItemList[12][8] = {{0xC9,0xE8,0xB1,0xB8,0xB5,0xD8,0xD6,0xB7}, //设备地址
{0xCC,0xE1,0xC8,0xA1,0xB7,0xBD,0xCA,0xBD}, //提取方式
@@ -648,9 +647,15 @@ static void sendRemote(void *parameter)
void ChancheShow(void) {
uart4_send_data[0] = 0x7E;
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;
rt_sem_take(uart4_lock, RT_WAITING_FOREVER);