HFC-S mini芯片数据接收处理流程如下:
1、 读取R_STATUS寄存器的内容,判断V_BUSY位是否为0,也就是是否空闲,只有芯片在空闲的状态下才可以接收数据;
2、设定R_FIFO寄存器的内容为所需要接收数据的通道;
3、分别读取A_F1、A_F2寄存器,读数为f1、f2,如果f1=f2,则表示没有接收到数据,否则就是有数据接收到;
4、分别读取A_Z1、A_Z2寄存器,读数分别为z1、z2,则接收数据长度 = (z1-z2) & 0x7F;
5、采用循环,从A_FIFO_DATA寄存器读取指定长度的数据;
6、数据读取完毕后,再从A_FIFO_DATA寄存器读3个数据,分别为z1、z2、crc,z1、z2的含义是什么因为没有仔细看资料尚不清楚,不过也没有用到。crc的值如果为0,则表示数据接收正确,可以给上层应用进行后续处理;
7、最后向A_INC_RES_FIFO寄存器写入1,表示数据接收完毕;
1、 读取R_STATUS寄存器的内容,判断V_BUSY位是否为0,也就是是否空闲,只有芯片在空闲的状态下才可以接收数据;
2、设定R_FIFO寄存器的内容为所需要接收数据的通道;
3、分别读取A_F1、A_F2寄存器,读数为f1、f2,如果f1=f2,则表示没有接收到数据,否则就是有数据接收到;
4、分别读取A_Z1、A_Z2寄存器,读数分别为z1、z2,则接收数据长度 = (z1-z2) & 0x7F;
5、采用循环,从A_FIFO_DATA寄存器读取指定长度的数据;
6、数据读取完毕后,再从A_FIFO_DATA寄存器读3个数据,分别为z1、z2、crc,z1、z2的含义是什么因为没有仔细看资料尚不清楚,不过也没有用到。crc的值如果为0,则表示数据接收正确,可以给上层应用进行后续处理;
7、最后向A_INC_RES_FIFO寄存器写入1,表示数据接收完毕;