C代码 电子罗盘

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

//电子罗盘接收代码


ISR (USART1_RX_vect)
{
buf1_lp[rxt1_counter]=UDR1;
rxt1_counter++;
if(rxt1_counter==1)
{
if(buf1_lp[0]!=0x68)
{
rxt1_counter=0;
}
}
else if(rxt1_counter==2)
{
if(buf1_lp[1]!=0x0d)
{
rxt1_counter=0;
}
}
else if(rxt1_counter==3)
{
if(buf1_lp[2]!=0x00)
{
rxt1_counter=0;
}
}
else if(rxt1_counter==4)
{
if(buf1_lp[3]!=0x84)
{
rxt1_counter=0;
}
}
else if(rxt1_counter>=14)
{
rxt1_counter=0;
// Direct=((buf1_lp[10]%16)*100+(buf1_lp[11]/16)*10+(buf1_lp[11]%16));
Direct=(buf1_lp[10]%16)*100;
Direct=(Direct + ((buf1_lp[11]/16)*10));
Direct=(Direct + (buf1_lp[11]%16));

Data[7]=Direct/256;
Data[8]=Direct%256;
lp_flg=1;
// LP_OFF;
}
}

相关文档
最新文档