使用的是hwt906
01-观察规格书
发现其只能发送这几种数据
02-观察wit私有协议
了解到这几种数据帧头
03-直接连接串口
发现其一直在发送数据,而且第一帧55,第二帧稳定在51 52 53 54等,故我们要在单片机上做的就是只需要解析串口数据就行,不需要相关的协议进行发送。(还是目前没了解到?)
解析方案
基本的调用就是只需要读数据就行。
以后应该会更新一个解析函数的封装。
2024.8.30更新
03-驱动文件
通过查找jy901s使用,得到官方使用方法
因为协议相同,所以可直接用其驱动
调用驱动文件宁天道/jy901s
在回调函数中调用即可
(ps:存在卡死可能性,通过DMA或可解决)
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
if(huart->Instance==LPUART1)
{
uart2_read_data(rx_lpuart);//解析函数
HAL_UART_Receive_IT(&hlpuart1,&rx_lpuart,1);
}
else if(huart->Instance==USART2)
{
HAL_UART_Receive_IT(&huart2,&rx_uart2,1);
}
}
HAL_UART_Receive_IT(&hlpuart1,&rx_lpuart,1);
uint8_t rx_lpuart;
04-上位机
jy901s若磁力计损坏,可通过在上位机中设置成为六轴,关闭发送磁力,来关闭磁力针的调用,如不大力晃动,则可正常使用。