共阵面系统学习

1.惯导laneTo4_parser.c

串口2接收到惯导发来的数据包-------usart2_rx_flag = 1

先将字符串的数据包转换为整数或者浮点数的数据包结构体nav----parse_pbsol((char*)receive_data2, &nav))

将nav结构体数据包再打包成两个不同数据的结构体

packPBSOL32(packtimeinfobuff, &data);

packPBSOLAtt(packattitudeinfobuff, &data);

再将这两个数据包结构体封装成有严格结构的完整数据帧

sendActiveReport84(const PACKData *d)

再对数据帧进行校验

packFrameWithEscape(frame_buf, 0x84, payload, pidx);

通过串口3再将校验完整后的所有数据发给AP板

Debug_SendBytes3(frame_buf, frame_len);

2.xw_protocol.c(基带板)变频与阵面控制

串口3收到基带板发来的数据帧 if(usart3_rx_flag)

对收到的数据帧进行解析 XW_Protocol_ParseFrame(receive_data3,sizeof(receive_data3));

解析到指令中含有

case 0x02:设置发射频率 XW_On_SetTxFreq(freqt);

sendUpdatabeam(waveupdate,22);

调用HAL_SPI_Transmit(&hspi2, txBuf, len, HAL_MAX_DELAY);

case 0x03:设置上变频XW_UP_Fre(freq);

调用UART4_Send(upConvert,sizeof(upConvert));

case 0x04:设置接收频率 XW_On_SetRxFreq(freq);

receiveUpdatabeam(waveupdate,22);

HAL_SPI_Transmit(&hspi2, txBuf, len, HAL_MAX_DELAY);

case 0x05:设置下变频XW_DOWN_Fre(freq);

UART4_Send(downConvert,sizeof(downConvert));

case 0x06:设置上变频衰减 XW_On_SetBUC_Attenuation(att);

UART4_Send(upConvertGain, sizeof(upConvertGain));

}

case 0x07:设置下变频衰减

XW_On_SetBDC_Attenuation(att);

UART4_Send(downConvertGain, sizeof(downConvertGain));

case 0x0D:设置俯仰方位角 XW_On_SetBeamAngles(az, el);

sendUpdatabeam(waveupdate, 22);

receiveUpdatabeam(waveupdate, 22);

HAL_SPI_Transmit(&hspi2, txBuf, len, HAL_MAX_DELAY);

case 0x11:设置发射极化 XW_On_SetTxPolar(pol);

sendpolarizedR();右极化

HAL_SPI_Transmit(&hspi2, polarizedR, sizeof(polarizedR), HAL_MAX_DELAY);

sendpolarizedL();左极化

HAL_SPI_Transmit(&hspi2, polarizedL, sizeof(polarizedL), HAL_MAX_DELAY);

case 0x12:设置接收极化 XW_On_SetRxPolar(pol);

receivepolarizedR();

HAL_SPI_Transmit(&hspi2, polarizedR, sizeof(polarizedR), HAL_MAX_DELAY);

receivepolarizedL();

HAL_SPI_Transmit(&hspi2, polarizedL, sizeof(polarizedL), HAL_MAX_DELAY);

else(cmd == XW_CMD_FULLQUERY)如果是全查询指令

XW_Report_All_Params()天线控制板向AP板通过udp上报天线,变频当前所有的信息

XW_Send_CustomFrame(XW_CMD_FULLQUERYRESPOND, payload, idx);将天线所有的信息打包成数据帧

memcpy(udp_sendtoweb,frame,w);//把数据帧打包成frame给udp

needsendweb = 1;

udp_send_data(connected_pcb1, udp_sendtoweb, end + 1);通过Udp将数据从天线控制版,上报给天线控制版

上述均设置成功或者失败,天线控制板均会向基带板通过udp上报成功或者失败的信息

XW_Send_Response(subcmd, result);

XW_Send_CustomFrame(XW_CMD_RESPONSE, payload, 2)

相关推荐
天行健,君子而铎6 小时前
数据分类分级的范式转换:从规则匹配到场景化高准确率一键部署
网络·数据库·安全
别动我齐刘海6 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
gjf05_059 小时前
人该怎样活着呢?版本75.8
学习
深圳市快瞳科技有限公司10 小时前
宠物门禁端侧AI落地解析:画质检测、活体甄别与离线推理
网络
li星野11 小时前
【学习记录】PCB与PCBA核心知识全解析:从设计到制造的关键细节
学习·制造
卿卿的产品经理日记11 小时前
【AI产品经理实战】Day 35|从“沉迷工具“到回归 AI 底层:Skill 收官、系统复盘与下一个 13 天
人工智能·学习·产品经理
一条泥憨鱼12 小时前
【从0开始学习计算机网络】| ARP 协议:地址解析,ARP 欺骗,链路层寻址
网络·后端·学习·计算机网络
m0_7156744312 小时前
数据分类分级的范式转换:从规则匹配到场景化高准确率一键部署
大数据·网络·人工智能·网络安全
HY小宝F13 小时前
树莓派智能摄像头系统 30 天重学计划之 Day 04 · HTTP / API:控制链入口 —— 学习总结
网络协议·学习·http
dog25013 小时前
带宽,时延,抖动的不可能三角
网络·tcp/ip