?? cz_hb.c
字號:
/**************************************
File : CZ_HB.C
Project : BDTRV20_MCU_V07
Description : 重組@@hb幀
Created : 2006.11.7
Last updata :
Author : Sunzehui sunzehui@zzvcom.com
Compile Tool : Keil uVision2
Target Device : SST89V564RD
Circuit Board : BD7700
************************************
Modification History
************************************
Version : v2.0
Date : MM/DD/YYYY
Modifier :
Description :
**********************************
-- Copyright (c)
*************************************/
#include "ext_temp.h"
extern wdt(void);
extern cz_hb(void)
{
long xdata p;
unsigned char i,temp;
wdt();
RXLen =0;
sdata[0]='@';sdata[1]='@';
sdata[2]='H';sdata[3]='b';
sdata[4]=month;
sdata[5]=day;
sdata[6]=year>>8;
sdata[7]=year;
sdata[8]=hour;
sdata[9]=min;
sdata[10]=sec;
sdata[11]=0x00;
sdata[12]=0x00;
sdata[13]=0x00;
sdata[14]=0x00;
/*******緯度*********/
for (i=15;i<=26;i++)
{
if(i>=15&&i<=18) //緯度
p=lat_par;
else if(i>=19&&i<=22)//經度
p=long_par;
else if(i>=23&&i<=26)//高度
p=high_par;
sdata[i+3]=p;
p=p>>8;
sdata[i+2]=p;
p=p>>8;
sdata[i+1]=p;
p=p>>8;
sdata[i]=p;
i=i+3;
}
/* if(i>=15&&i<=18) //緯度
{
p=lat_par;
sdata[18]=p;
p=p>>8;
sdata[17]=p;
p=p>>8;
sdata[16]=p;
p=p>>8;
sdata[15]=p;
}
else if(i>=19&&i<=22)//經度
{
p=long_par;
sdata[22]=p;
p=p>>8;
sdata[21]=p;
p=p>>8;
sdata[20]=p;
p=p>>8;
sdata[19]=p;
}
else if(i>=23&&i<=26)//高度
{
p=high_par;
sdata[26]=p;
p=p>>8;
sdata[25]=p;
p=p>>8;
sdata[24]=p;
p=p>>8;
sdata[23]=p;
}
}*/
/* p=lat_par;
sdata[18]=p;
p=p>>8;
sdata[17]=p;
p=p>>8;
sdata[16]=p;
p=p>>8;
sdata[15]=p;
/*****經度*********/
/* p=long_par;
sdata[22]=p;
p=p>>8;
sdata[21]=p;
p=p>>8;
sdata[20]=p;
p=p>>8;
sdata[19]=p;
/*****高度*********/
/* p=high_par;
sdata[26]=p;
p=p>>8;
sdata[25]=p;
p=p>>8;
sdata[24]=p;
p=p>>8;
sdata[23]=p;
/*****************/
// RXLen=27;
/****mmmm**********/
for(i=27;i<=38;i++)
{
sdata[i]=0x00;
}
/* sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
/****VVvvhhdd****/
/* sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
sdata[RXLen++]=0x00;
/*********n********/
/* if (channel_pps_en==0x00)
{sdata[39]=0x00;
/**t 跟蹤衛星數***/
/* sdata[40]=0x00;}
else if (channel_pps_en==0x01||channel_pps_en==0x02)
{sdata[39]=0x01;
/**t 跟蹤衛星數***/
/* sdata[40]=0x01;}
else if (channel_pps_en==0x03)
{sdata[39]=0x02;
/**t 跟蹤衛星數***/
/* sdata[40]=0x02;} */
//n可見衛星數
sdata[39]=0x02; //可見衛星數一直為2
/* if ((channel_sta_1&0x40==0)&&(channel_sta_1&0x40==0))
sdata[40]=0x00;
else if((channel_sta_1&0x40==0x40)&&(channel_sta_1&0x40==0))
sdata[40]=0x01;
else if((channel_sta_1&0x40==0)&&(channel_sta_1&0x40==0x40))
sdata[40]=0x01;
else if((channel_sta_1&0x40==0x40)&&(channel_sta_1&0x40==0x40))
sdata[40]=0x02;*/
/* if ((channel_beam_1==0||channel_beam_1==1)&&(channel_beam_2==0||channel_beam_2==1))
sdata[56]=0x01;
else if((channel_beam_1==0||channel_beam_1==1)&&(channel_beam_2==2||channel_beam_2==3))
sdata[56]=0x02;
else if((channel_beam_1==2||channel_beam_1==3)&&(channel_beam_2==0||channel_beam_2==1))
sdata[56]=0x02;
else if((channel_beam_1==2||channel_beam_1==3)&&(channel_beam_2==2||channel_beam_2==3))
sdata[56]=0x01;*/
///for test
sdata[40]=0x04;
/*********ss***********/
if (channel_pps_en==0x00)
{sdata[41]=0x60;// 0x60 搜索衛星
sdata[42]=0x87; //可視衛星數不夠
}
else
{sdata[41]=0x80;//0x80 位置模式
//sdata[42]=0x8f;
sdata[42] =0x89;//天線正常
}
/* sdata[41]=0x60;//0x80 位置模式 0x60 搜索衛星
sdata[42]=0x00;*/
/******rr**********/
sdata[43]=0x00;
sdata[44]=0x00;
/*******vvvvvv*****/
for(i=45;i<=50;i++)
sdata[i]=ID[i-45];
/* sdata[45]=66;//B
sdata[46]=68;//D
sdata[47]=55;//7
sdata[48]=55;//7
sdata[49]=48;//0
sdata[50]=48;//0*/
/*********C********/
temp=0;
for(i=2;i<51;i++)
temp=temp^sdata[i];
sdata[51]=temp; //校驗和
sdata[52]=0x0d;
sdata[53]=0x0a;
RXLen =54;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -