📄 set_tx.c
字号:
/*************************************************/
/*************************************************/
/*************************************************/
void set_tx()
{
TX_DATA[0] =0x7e;
TX_DATA[1] =0x31;
TX_DATA[2] =0x30;
TX_DATA[3] =addr1;
TX_DATA[4] =addr;
TX_DATA[5] =0x38;
TX_DATA[6] =0x30;
}
/***********************************************/
/****回复设置历史记录参数***********************/
/***********************************************/
void set_par_re()
{
set_tx();
TX_DATA[7] =0x30;
TX_DATA[8] =0x30;
TX_DATA[9] =0x30;
TX_DATA[10] =0x30;
TX_DATA[11] =0x30;
TX_DATA[12] =0x30;
TX_DATA[13] =0x46;
TX_DATA[14] =0x44;
TX_DATA[15] =0x42;
TX_DATA[16] =0x36;
TX_DATA[17] =0x0D;
tx_len = 18;
FLAG |= gb_tx;
}
/*************************************************/
/*******计算长度**********************************/
/*************************************************/
uint chklen(uint len)
{
uint sum;
uchar x;
uchar y;
uchar z;
x = (len >> 8) & 0x0f;
y = (len >> 4) & 0x0f;
z = len & 0x0f;
sum = x+y+z;
sum %=16;
sum ^= 0xff;
sum &= 0x0f;
sum += 1;
sum <<=12;
sum |= len;
return sum;
}
/************************************************/
/**********chksum********************************/
//输入:长度
//输出:无
/************************************************/
void jisuanhe(uchar len)
{
uint i;
uchar j;
i=0;
for(j=1; j<len; j++)
{
i +=TX_DATA[j];
}
i = ((i%0xffff)^0xffff)+1;
TX_DATA[len++]=c_hex((i>>12)&0x0f);
TX_DATA[len++]=c_hex((i>>8)&0x0f);
TX_DATA[len++]=c_hex((i>>4)&0x0f);
TX_DATA[len++]=c_hex(i&0x0f);
TX_DATA[len++]=0X0D;
tx_len =len;
FLAG |=gb_tx;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -