#define uchar unsigned char
//UART SENDS 12 DATAs ROUTINE
void sends (uchar dt1,uchar dt2,uchar dt3,uchar dt4,uchar dt5,uchar dt6,uchar dt7,uchar dt8,uchar dt9,uchar dt10,uchar dt11){
uchar buff[12];
uchar i,sum = 0;
buff[0] = dt1;
sum = sum + buff[0];
buff[1] = dt2;
sum = sum + buff[1];
buff[2] = dt3;
sum = sum + buff[2];
buff[3] = dt4;
sum = sum + buff[3];
buff[4] = dt5;
sum = sum + buff[4];
buff[5] = dt6;
sum = sum + buff[5];
buff[6] = dt7;
sum = sum + buff[6];
buff[7] = dt8;
sum = sum + buff[7];
buff[8] = dt9;
sum = sum + buff[8];
buff[9] = dt10;
sum = sum + buff[9];
buff[10] = dt11;
sum = sum + buff[10];
buff[11] = sum; //Check Sum %256
//Send data via serial port
for (i=0; i <11; i++){
SBUF = buff[i];
while ( TI == 0);
TI = 0;
}
}
void main(){
.
.
.
//串口初始化后就可以直接调用发送12字节数据的子函数了,注意,()内的数据一定要写足11个。
sends(0x12,0x01,0x0A,0x0B,0x34,0,0,0,0x0C,0,0x45);
.
.
}