PN7462 UART Communication

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

PN7462 UART Communication

跳至解决方案
785 次查看
Florian_37
Contributor II

Hi i am trying to implement UART Communication to PN7462. I am receiving Data per UART from another Microcontroller and want to response back. When i do that it works only for the first time. After that i get Error trying to init RxBuffer once again. After sending the message i have to deinit HSU Interface and have to init it before receiving next data. Is this normal. I also tried to omit the phhalHif_DeInitRxBuffer()  and the phhalHif_DeInit() but then i get a Rx Interrupt when sending over Tx???  This is my code now, which works, but i feel like there must be a way not to deinit and init the whole interface after one RX/TX Conversation:

int main(void) {

 

 

phFlashBoot_Main();

 

phLED_Init();

 

memset(TxBuffer,0x41,sizeof(TxBuffer));

phStatus_t Status = PH_ERR_SUCCESS;

 

 

for(int i = 0; i<10; i++){

 

initUart();

 

 

Status = phhalHif_InitRxBuffer(E_RX_BUFFER_ID0,sizeof(RxBuffer),RxBuffer,&Hif_RX_Callback);

 

printf("Loop: %d, Status : %d\n",i,Status);

 

while(bRxReady == 0); //Wait for Rx Interrupt

 

Status = PH_ERR_SUCCESS;

 

bRxReady = 0;

 

Status = PH_ERR_SUCCESS;

 

Status = phhalHif_ReleaseRxBuffer(E_RX_BUFFER_ID0);

 

Status = phhalHif_DeInitRxBuffer(E_RX_BUFFER_ID0);

 

Status = PH_ERR_SUCCESS;

 

Status = phhalHif_Transmit(TxBuffer, sizeof(TxBuffer), &Hif_TX_Callback);

phUser_Wait(100*1000);

 

phhalHif_DeInit();

 

 

}

 

while(1);

 

 

}

 

 

标签 (1)
标记 (1)
0 项奖励
回复
1 解答
624 次查看
Daniel_Gutierrez
NXP Employee
NXP Employee

Hello @Florian_37, Good Day!

 

From what you describe, it does seem like a problem with the adapter could be the case. Is there any chance you could observe the Rx/Tx lines with a logic analyzer and share the frame you get when running one iteration?

 

Please consider that the EOF assertion will be done once the sampling of EOF_SIZE bits of value one takes place, considering that EOF_SIZE is defined in "sHifConfig.sConfig.sHsuConfig.bEOF", in this case the value would be 0x00, which means the End of Reception will take place right after the Stop Bit.

 

I would also like to ask, on the PN7462 side, I see that the expected behavior is to wait for the reception of only one byte in each iteration, and send 8 bytes afterwards. Is this flow also implemented in the python script? Is the value of the byte that the host sends equal to "1"?

If so, please make sure that the host waits until the reception of the 8 bytes is complete.

 

My best regards,
Daniel

在原帖中查看解决方案

6 回复数
761 次查看
Daniel_Gutierrez
NXP Employee
NXP Employee

Hello @Florian_37, Good Day!

Thank you very much for your interest in our products.

 

Could you please provide more details on your setup? Such as, what is the MCU you are using as a host? And how are you connecting to the host interface of the PN7462?

 

I would like to suggest referring to section 6.3 of the UM10913 document which provides a detailed description on the functionality of an example that uses the host HSU interface. Could you please confirm that the code you sent corresponds to the program running on the PN7462?

 

I would suggest to try and initialize the uart and RxBuffer only once, before starting the "for" loop,  since trying to initialize it after already enabled will return the "PH_ERR_HIF_RX_BUFFER_ALREADY_ENABLED" status. Once this is done, the "for" loop should start waiting for the bRxReady to be different to 0 (while(bRxReady == 0)) and this should eliminate the need of deinitializing the buffer and interface.

 

Please let me know if this makes any difference.

 

My best regards,
Daniel

0 项奖励
回复
745 次查看
Florian_37
Contributor II

Hello@Daniel_Gutierrez,

the host MCU would be a STM32, but currently i am testing my program with FT232 Adapter and python. The code i posted is running on the Pn7462. The problem i faced when i initialized uart and RxBuffer only once before the loop(code below) i always get an Rx Interrupt when transmitting data (always 0xFFFF... but different data lengths). 

This is my HifConfig: 

phhalHif_Config_t sHifConfig;

//Configuration for Host Interface

 

sHifConfig.eBufferType = E_BUFFER_FORMAT_FREE; /* E_BUFFER_FORMAT_FREE */

sHifConfig.bShortFrameLen = gpkphCfg_EE_HW_HIF->bShortFrameLen;

sHifConfig.bStoreErrData = gpkphCfg_EE_HW_HIF->bStoreErrData;

sHifConfig.bHeaderSize = gpkphCfg_EE_HW_HIF->bHeaderSize;

sHifConfig.bTimeout = gpkphCfg_EE_HW_HIF->bTimeout;

sHifConfig.eInterface = E_HIF_HSU;

sHifConfig.sConfig.sHsuConfig.bIsHsuBoot = gpkphCfg_EE_HW_HIF->bIsHsuBoot;

sHifConfig.sConfig.sHsuConfig.bEOF = gpkphCfg_EE_HW_HIF->bEndOfFrame;

sHifConfig.sConfig.sHsuConfig.bStopBits = 1;

sHifConfig.sConfig.sHsuConfig.bDummyBytes = gpkphCfg_EE_HW_HIF->bDummyBytes;

sHifConfig.sConfig.sHsuConfig.bBaudRate =

(phhalHif_Hsu_BaudRate_t) gpkphCfg_EE_HW_HIF->bBaudRate;

 

if (phhalHif_Init(&sHifConfig, &Hif_Generic_Callback) != PH_ERR_SUCCESS) {

LOG_TXT("Error Hif Init");

 

}

 

Code without initializing uart and RxBuffer every single time:

int main(void) {

 

 

phFlashBoot_Main();

 

phLED_Init();

 

memset(TxBuffer,0x41,sizeof(TxBuffer));

phStatus_t Status = PH_ERR_SUCCESS;

 

initUart();

 

Status = phhalHif_InitRxBuffer(E_RX_BUFFER_ID0,sizeof(RxBuffer),RxBuffer,&Hif_RX_Callback);

 

for(int i = 0; i<10; i++){

 

printf("Loop: %d, Status : %d\n",i,Status);

 

while(bRxReady == 0); //Wait for Rx Interrupt

 

Status = PH_ERR_SUCCESS;

 

bRxReady = 0;

 

Status = PH_ERR_SUCCESS;

 

Status = phhalHif_ReleaseRxBuffer(E_RX_BUFFER_ID0);

 

Status = PH_ERR_SUCCESS;

 

Status = phhalHif_Transmit(TxBuffer, sizeof(TxBuffer), &Hif_TX_Callback);

phUser_Wait(100*1000);

 

}

 

while(1);

}

0 项奖励
回复
683 次查看
Daniel_Gutierrez
NXP Employee
NXP Employee

Hello @Florian_37, Good Day!

 

I was able to test your code and it worked fine for me with some few modifications:

The HIF configuration you described works fine, and I assume this is made in the "initUart()" function, please confirm this, as this part of the code, including the "phhalHif_Init" function should take place right before the "phhalHif_InitRxBuffer" function.

 

After the "phhalHif_Transmit" function you could consider adding the following lines in order to wait for the transmission to be complete before starting the next iteration.

 

Daniel_Gutierrez_3-1760651181819.png

Please note that in my case the Rx/Tx Callbacks look like this in order to handle the Rx/Tx flags.

 

Daniel_Gutierrez_4-1760651199602.png

I would also like to mention that at first, I did experience some unexpected behavior regarding the Rx interruptions as well as an error in the transmission. These issues were solved by deoptimizing the compiler for the project. This is done by right clicking on the project and selecting Properties > C/C++ Build > Settings > Optimization > Optimization Level > None.

Daniel_Gutierrez_5-1760651222976.png

Please let me know if this helps. If not, I would like to ask if you could please share the value of the Interrupt Status (dwIntStatus) you get when entering the "Hif_Generic_Callback".

 

My best regards,
Daniel

661 次查看
Florian_37
Contributor II

Hi @Daniel_Gutierrez,

thanks for your feedback.

So first: Yes, my Hif Configuration takes place in the function initUart() and calls phhalHif_Init() at the end. So the phhalHif_InitRxBuffer will be executed after phhalHif_Init().  I also added the bTxReady flag in my TxCallback function to make sure the code only continues when Tx is done. When Tx is done i get an Interrupt with dwStatus = 17 or sometimes dwStatus = 16 (which would be expected) and immediately after an Interrupt with dwStatus = 1(I dont hop in the Hif_Generic_Callback). So the Transmition also triggers an Rx Interrupt. The deoptimizing of the Compiler didnt help me with this problem.

I also recognized that RxBuffer is getting filled when Transmition is done. TxBuffer is uint32_t TxBuffer[8] and RxBuffer ist uint32_t RxBuffer[64]. Now when Transmition is done, Rx Interrupt is triggerd (i f***ing dont know why) and exactly the first 8 postitions of my RxBuffer are filled with 1.

I found this in Datasheet UM10858 : When the EOF logic is asserted high and the Buffer Manager has written the last word to
the buffer, an EOR event is generated. The EOR_STATUS field in register
HOSTIF_INT_STATUS_REG is set. But why would EOF logic asserted high? Could there be a problem with my usb to serial adapter?

 

Best Regards

Florian

0 项奖励
回复
625 次查看
Daniel_Gutierrez
NXP Employee
NXP Employee

Hello @Florian_37, Good Day!

 

From what you describe, it does seem like a problem with the adapter could be the case. Is there any chance you could observe the Rx/Tx lines with a logic analyzer and share the frame you get when running one iteration?

 

Please consider that the EOF assertion will be done once the sampling of EOF_SIZE bits of value one takes place, considering that EOF_SIZE is defined in "sHifConfig.sConfig.sHsuConfig.bEOF", in this case the value would be 0x00, which means the End of Reception will take place right after the Stop Bit.

 

I would also like to ask, on the PN7462 side, I see that the expected behavior is to wait for the reception of only one byte in each iteration, and send 8 bytes afterwards. Is this flow also implemented in the python script? Is the value of the byte that the host sends equal to "1"?

If so, please make sure that the host waits until the reception of the 8 bytes is complete.

 

My best regards,
Daniel

535 次查看
Florian_37
Contributor II

Hello @Daniel_Gutierrez ,

I finally found my problem. I did not connect the ground cable of my USB to Serial adapter which maybe led to edges on my Rx line during Tx.  Thank you so much for your help.

 

Greetings

Florian

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2184916%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EPN7462%20UART%20%E9%80%9A%E4%BF%A1%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2184916%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%EF%BC%8C%E6%88%91%E6%AD%A3%E5%9C%A8%E5%B0%9D%E8%AF%95%E4%B8%BA%20PN7462%20%E5%AE%9E%E7%8E%B0%20UART%20%E9%80%9A%E4%BF%A1%E3%80%82%E6%88%91%E6%AD%A3%E5%9C%A8%E9%80%9A%E8%BF%87%20UART%20%E6%8E%A5%E6%94%B6%E6%9D%A5%E8%87%AA%E5%8F%A6%E4%B8%80%E4%B8%AA%E5%BE%AE%E6%8E%A7%E5%88%B6%E5%99%A8%E7%9A%84%E6%95%B0%E6%8D%AE%EF%BC%8C%E5%B9%B6%E5%B8%8C%E6%9C%9B%E5%BE%97%E5%88%B0%E5%9B%9E%E5%BA%94%E3%80%82%E5%BD%93%E6%88%91%E8%BF%99%E6%A0%B7%E5%81%9A%E6%97%B6%EF%BC%8C%E5%AE%83%E5%8F%AA%E5%9C%A8%E7%AC%AC%E4%B8%80%E6%AC%A1%E6%97%B6%E8%B5%B7%E4%BD%9C%E7%94%A8%E3%80%82%E4%B9%8B%E5%90%8E%EF%BC%8C%E6%88%91%E5%86%8D%E6%AC%A1%E5%B0%9D%E8%AF%95%E5%90%AF%E5%8A%A8%20RxBuffer%20%E6%97%B6%E5%87%BA%E9%94%99%E3%80%82%E5%8F%91%E9%80%81%E4%BF%A1%E6%81%AF%E5%90%8E%EF%BC%8C%E6%88%91%E5%BF%85%E9%A1%BB%E9%80%80%E5%87%BA%20HSU%20%E6%8E%A5%E5%8F%A3%EF%BC%8C%E5%B9%B6%E5%9C%A8%E6%8E%A5%E6%94%B6%E4%B8%8B%E4%B8%80%E4%B8%AA%E6%95%B0%E6%8D%AE%E5%89%8D%E5%90%AF%E5%8A%A8%E5%AE%83%E3%80%82%E8%BF%99%E6%AD%A3%E5%B8%B8%E5%90%97%EF%BC%9F%E6%88%91%E8%BF%98%E5%B0%9D%E8%AF%95%E7%9C%81%E7%95%A5%20phhalHif_DeInitRxBuffer()%20%E5%92%8C%20phhalHif_DeInit()%EF%BC%8C%E4%BD%86%E8%BF%99%E6%A0%B7%E5%9C%A8%E9%80%9A%E8%BF%87%20Tx%20%E5%8F%91%E9%80%81%E6%97%B6%E5%B0%B1%E4%BC%9A%E5%87%BA%E7%8E%B0%20Rx%20%E4%B8%AD%E6%96%AD%EF%BC%9F%20%E8%BF%99%E5%B0%B1%E6%98%AF%E6%88%91%E7%8E%B0%E5%9C%A8%E7%9A%84%E4%BB%A3%E7%A0%81%EF%BC%8C%E5%AE%83%E5%8F%AF%E4%BB%A5%E5%B7%A5%E4%BD%9C%EF%BC%8C%E4%BD%86%E6%88%91%E8%A7%89%E5%BE%97%E4%B8%80%E5%AE%9A%E6%9C%89%E5%8A%9E%E6%B3%95%E5%9C%A8%E4%B8%80%E6%AC%A1%20RX%2FTX%20%E5%AF%B9%E8%AF%9D%E5%90%8E%E4%B8%8D%E5%88%A0%E9%99%A4%E5%92%8C%E5%90%AF%E5%8A%A8%E6%95%B4%E4%B8%AA%E6%8E%A5%E5%8F%A3%EF%BC%9A%3C%2FP%3E%3CDIV%3E%3CDIV%3E%3CP%3E%3CSPAN%3Eint%3C%2FSPAN%3E%20%3CSPAN%3Emain%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Evoid%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%20%3CSPAN%3E%7B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EphFlashBoot_Main%3C%2FSPAN%3E%3CSPAN%3E()%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EphLED_Init%3C%2FSPAN%3E%3CSPAN%3E()%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3Ememset%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ETxBuffer%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3E0x41%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ETxBuffer%3C%2FSPAN%3E%3CSPAN%3E))%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EphStatus_t%3C%2FSPAN%3E%20%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EPH_ERR_SUCCESS%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E4%B8%BA%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Eint%3C%2FSPAN%3E%20%3CSPAN%3Ei%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%20%3CSPAN%3Ei%3C%2FSPAN%3E%3CSPAN%3E%26lt%3B%3C%2FSPAN%3E%3CSPAN%3E10%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%20%3CSPAN%3Ei%3C%2FSPAN%3E%3CSPAN%3E%2B%2B%3C%2FSPAN%3E%3CSPAN%3E)%7B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EinitUart%3C%2FSPAN%3E%3CSPAN%3E()%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EphhalHif_InitRxBuffer%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Ee_rx_buffer_id0%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3Esizeof%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ERxBuffer%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3ERxBuffer%3C%2FSPAN%3E%3CSPAN%3E%2C%26amp%3B%3C%2FSPAN%3E%3CSPAN%3EHif_RX_Callback%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3Eprintf%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E%22Loop%3A%25d%2C%20Status%20%3A%25d%5Cn%22%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3Ei%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E8%99%BD%E7%84%B6%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3EbRxReady%20%3C%2FSPAN%3E%3CSPAN%3E%3D%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%20%3CSPAN%3E%2F%2F%E7%AD%89%E5%BE%85%20Rx%20%E4%B8%AD%E6%96%AD%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EPH_ERR_SUCCESS%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EbRxReady%20%3C%2FSPAN%3E%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EPH_ERR_SUCCESS%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EphhalHif_ReleaseRxBuffer%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Ee_rx_buffer_id0%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EphhalHif_DeInitRxBuffer%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Ee_rx_buffer_id0%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EPH_ERR_SUCCESS%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EphhalHif_Transmit%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ETxBuffer%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%20%3CSPAN%3Esizeof%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ETxBuffer%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%20%3CSPAN%3E%26amp%3B%3C%2FSPAN%3E%3CSPAN%3EHif_TX_Callback%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EphUser_Wait%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E100%3C%2FSPAN%3E%3CSPAN%3E*%3C%2FSPAN%3E%3CSPAN%3E1000%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EphhalHif_DeInit%3C%2FSPAN%3E%3CSPAN%3E()%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E8%99%BD%E7%84%B6%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E1%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FP%3E%3C%2FDIV%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2184916%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3ENFC%E8%AF%BB%E5%8D%A1%E5%99%A8%E5%BA%93%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2189976%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20PN7462%20UART%20Communication%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2189976%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F245723%22%20target%3D%22_blank%22%3E%40Daniel_Gutierrez%3C%2FA%3E%E3%80%81%3C%2FP%3E%3CP%3E%E6%88%91%E7%BB%88%E4%BA%8E%E6%89%BE%E5%88%B0%E4%BA%86%E9%97%AE%E9%A2%98%E6%89%80%E5%9C%A8%E3%80%82%E6%88%91%E6%B2%A1%E6%9C%89%E8%BF%9E%E6%8E%A5%20USB%20%E8%BD%AC%E4%B8%B2%E8%A1%8C%E9%80%82%E9%85%8D%E5%99%A8%E7%9A%84%E6%8E%A5%E5%9C%B0%E7%BA%BF%EF%BC%8C%E8%BF%99%E5%8F%AF%E8%83%BD%E5%AF%BC%E8%87%B4%E5%9C%A8%E5%8F%91%E9%80%81%E8%BF%87%E7%A8%8B%E4%B8%AD%20Rx%20%E7%BA%BF%E8%B7%AF%E5%87%BA%E7%8E%B0%E8%BE%B9%E7%BC%98%E3%80%82%20%E9%9D%9E%E5%B8%B8%E6%84%9F%E8%B0%A2%E4%BD%A0%E4%BB%AC%E7%9A%84%E5%B8%AE%E5%8A%A9%E3%80%82%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E6%82%A8%E5%A5%BD%3C%2FP%3E%3CP%3E%E5%BC%97%E6%B4%9B%E9%87%8C%E5%AE%89%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2188492%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20PN7462%20UART%20Communication%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2188492%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F255337%22%20target%3D%22_blank%22%3E%40Florian_37%3C%2FA%3E%EF%BC%8C%E6%97%A5%E5%AE%89%EF%BC%81%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E4%BB%8E%E4%BD%A0%E7%9A%84%E6%8F%8F%E8%BF%B0%E6%9D%A5%E7%9C%8B%EF%BC%8C%E5%8F%AF%E8%83%BD%E6%98%AF%E9%80%82%E9%85%8D%E5%99%A8%E5%87%BA%E4%BA%86%E9%97%AE%E9%A2%98%E3%80%82%E6%82%A8%E8%83%BD%E5%90%A6%E7%94%A8%E9%80%BB%E8%BE%91%E5%88%86%E6%9E%90%E4%BB%AA%E8%A7%82%E5%AF%9F%20Rx%2FTx%20%E7%BA%BF%E8%B7%AF%EF%BC%8C%E5%B9%B6%E5%88%86%E4%BA%AB%E8%BF%90%E8%A1%8C%E4%B8%80%E6%AC%A1%E8%BF%AD%E4%BB%A3%E5%90%8E%E5%BE%97%E5%88%B0%E7%9A%84%E5%B8%A7%E7%BB%93%E6%9E%9C%EF%BC%9F%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E8%80%83%E8%99%91%E5%88%B0%20EOF_SIZE%20%E5%9C%A8%22sHifConfig.sHsuConfig.sHsuConfig.bEOF%22%20%E4%B8%AD%E5%AE%9A%E4%B9%89%EF%BC%8C%E5%9C%A8%E8%BF%99%E7%A7%8D%E6%83%85%E5%86%B5%E4%B8%8B%EF%BC%8C%E5%85%B6%E5%80%BC%E4%B8%BA%200x00%EF%BC%8C%E8%BF%99%E6%84%8F%E5%91%B3%E7%9D%80%E6%8E%A5%E6%94%B6%E7%BB%93%E6%9D%9F%E5%B0%86%E5%8F%91%E7%94%9F%E5%9C%A8%E5%81%9C%E6%AD%A2%E4%BD%8D%E4%B9%8B%E5%90%8E%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E6%88%91%E8%BF%98%E6%83%B3%E9%97%AE%E4%B8%80%E4%B8%8B%EF%BC%8C%E5%9C%A8%20PN7462%20%E6%96%B9%E9%9D%A2%EF%BC%8C%E6%88%91%E7%9C%8B%E5%88%B0%E9%A2%84%E6%9C%9F%E7%9A%84%E8%A1%8C%E4%B8%BA%E6%98%AF%E5%9C%A8%E6%AF%8F%E6%AC%A1%E8%BF%AD%E4%BB%A3%E4%B8%AD%E5%8F%AA%E7%AD%89%E5%BE%85%E6%8E%A5%E6%94%B6%E4%B8%80%E4%B8%AA%E5%AD%97%E8%8A%82%EF%BC%8C%E7%84%B6%E5%90%8E%E5%8F%91%E9%80%81%208%20%E5%AD%97%E8%8A%82%E3%80%82python%20%E8%84%9A%E6%9C%AC%E4%B8%AD%E6%98%AF%E5%90%A6%E4%B9%9F%E5%AE%9E%E7%8E%B0%E4%BA%86%E8%BF%99%E4%B8%80%E6%B5%81%E7%A8%8B%EF%BC%9F%E4%B8%BB%E6%9C%BA%E5%8F%91%E9%80%81%E7%9A%84%E5%AD%97%E8%8A%82%E5%80%BC%E6%98%AF%E5%90%A6%E7%AD%89%E4%BA%8E%20%22%201%20%22%EF%BC%9F%3C%2FP%3E%0A%3CP%3E%E5%A6%82%E6%9E%9C%E6%98%AF%EF%BC%8C%E8%AF%B7%E7%A1%AE%E4%BF%9D%E4%B8%BB%E6%9C%BA%E7%AD%89%E5%BE%85%E7%9B%B4%E5%88%B0%208%20%E5%AD%97%E8%8A%82%E7%9A%84%E6%8E%A5%E6%94%B6%E5%AE%8C%E6%88%90%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E8%87%B4%E4%BB%A5%E6%9C%80%E8%AF%9A%E6%8C%9A%E7%9A%84%E9%97%AE%E5%80%99%EF%BC%8C%3CBR%20%2F%3EDaniel%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2188075%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20PN7462%20UART%20Communication%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2188075%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%EF%BC%8C%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F245723%22%20target%3D%22_blank%22%3E%40Daniel_Gutierrez%3C%2FA%3E%E3%80%81%3C%2FP%3E%3CP%3E%E6%84%9F%E8%B0%A2%E6%82%A8%E7%9A%84%E5%8F%8D%E9%A6%88%E3%80%82%3C%2FP%3E%3CP%3E%E9%A6%96%E5%85%88%EF%BC%9A%E6%98%AF%E7%9A%84%EF%BC%8C%E6%88%91%E7%9A%84%20Hif%20%E9%85%8D%E7%BD%AE%E6%98%AF%E5%9C%A8%E5%87%BD%E6%95%B0%20initUart()%20%E4%B8%AD%E8%BF%9B%E8%A1%8C%E7%9A%84%EF%BC%8C%E6%9C%80%E5%90%8E%E8%B0%83%E7%94%A8%20phhalHif_Init()%E3%80%82%E5%9B%A0%E6%AD%A4%EF%BC%8CphhalHif_InitRxBuffer%20%E5%B0%86%E5%9C%A8%20phhalHif_Init()%20%E4%B9%8B%E5%90%8E%E6%89%A7%E8%A1%8C%E3%80%82%20%E6%88%91%E8%BF%98%E5%9C%A8%20TxCallback%20%E5%87%BD%E6%95%B0%E4%B8%AD%E6%B7%BB%E5%8A%A0%E4%BA%86%20bTxReady%20%E6%A0%87%E5%BF%97%EF%BC%8C%E4%BB%A5%E7%A1%AE%E4%BF%9D%E4%BB%A3%E7%A0%81%E5%8F%AA%E5%9C%A8%20Tx%20%E5%AE%8C%E6%88%90%E5%90%8E%E6%89%8D%E7%BB%A7%E7%BB%AD%E6%89%A7%E8%A1%8C%E3%80%82%E5%8F%91%E9%80%81%E5%AE%8C%E6%88%90%E5%90%8E%EF%BC%8C%E6%88%91%E6%94%B6%E5%88%B0%E4%B8%80%E4%B8%AA%20dwStatus%20%3D%2017%20%E6%88%96%E6%9C%89%E6%97%B6%20dwStatus%20%3D%2016%20%E7%9A%84%E4%B8%AD%E6%96%AD%EF%BC%88%E8%BF%99%E6%98%AF%E9%A2%84%E6%96%99%E4%B9%8B%E4%B8%AD%E7%9A%84%EF%BC%89%EF%BC%8C%E7%B4%A7%E6%8E%A5%E7%9D%80%E5%8F%88%E6%94%B6%E5%88%B0%E4%B8%80%E4%B8%AA%20dwStatus%20%3D%201%20%E7%9A%84%E4%B8%AD%E6%96%AD%EF%BC%88%E6%88%91%E6%B2%A1%E6%9C%89%E5%9C%A8%20Hif_Generic_Callback%20%E4%B8%AD%E8%B7%B3%E8%BD%AC%EF%BC%89%E3%80%82%E5%9B%A0%E6%AD%A4%EF%BC%8C%E4%BC%A0%E8%BE%93%E8%BF%98%E4%BC%9A%E8%A7%A6%E5%8F%91%E4%BF%A1%E5%8F%B7%20Rx%20%E4%B8%AD%E6%96%AD%E3%80%82%E5%8F%96%E6%B6%88%E4%BC%98%E5%8C%96%E7%BC%96%E8%AF%91%E5%99%A8%E5%B9%B6%E6%B2%A1%E6%9C%89%E5%B8%AE%E5%8A%A9%E6%88%91%E8%A7%A3%E5%86%B3%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%E3%80%82%3C%2FP%3E%3CP%3E%E6%88%91%E8%BF%98%E5%8F%91%E7%8E%B0%EF%BC%8C%E4%BC%A0%E8%BE%93%E5%AE%8C%E6%88%90%E5%90%8E%EF%BC%8CRxBuffer%20%E4%BC%9A%E8%A2%AB%E5%A1%AB%E6%BB%A1%E3%80%82TxBuffer%20%E6%98%AF%20uint32_t%20TxBuffer%5B8%5D%EF%BC%8CRxBuffer%20%E6%98%AF%20uint32_t%20RxBuffer%5B64%5D%E3%80%82%E7%8E%B0%E5%9C%A8%EF%BC%8C%E4%BC%A0%E8%BE%93%E5%AE%8C%E6%88%90%E5%90%8E%EF%BC%8CRx%20%E4%B8%AD%E6%96%AD%E8%A2%AB%E8%A7%A6%E5%8F%91%EF%BC%88%E6%88%91%E7%9C%9F%E4%BB%96%E5%A6%88%E4%B8%8D%E7%9F%A5%E9%81%93%E4%B8%BA%E4%BB%80%E4%B9%88%EF%BC%89%EF%BC%8CRxBuffer%20%E7%9A%84%E5%89%8D%208%20%E4%B8%AA%E4%BD%8D%E7%BD%AE%E6%AD%A3%E5%A5%BD%E8%A2%AB%E5%A1%AB%E4%B8%BA%201%E3%80%82%3C%2FP%3E%3CP%3E%E6%88%91%E5%9C%A8%E6%95%B0%E6%8D%AE%E8%A1%A8%20UM10858%20%E4%B8%AD%E6%89%BE%E5%88%B0%E4%BA%86%E8%BF%99%E4%B8%AA%EF%BC%9A%E5%BD%93%20EOF%20%E9%80%BB%E8%BE%91%E8%A2%AB%E9%92%B3%E4%BD%8D%E9%AB%98%E7%94%B5%E5%B9%B3%E5%B9%B6%E4%B8%94%E7%BC%93%E5%86%B2%E5%8C%BA%E7%AE%A1%E7%90%86%E5%99%A8%E5%B0%86%3CBR%20%2F%3E%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%AD%97%E5%86%99%E5%85%A5%E7%BC%93%E5%86%B2%E5%8C%BA%E6%97%B6%EF%BC%8C%E5%B0%B1%E4%BC%9A%E7%94%9F%E6%88%90%20EOR%20%E4%BA%8B%E4%BB%B6%E3%80%82%E5%AF%84%E5%AD%98%E5%99%A8%3CBR%20%2F%3EHOSTIF_INT_STATUS_REG%20%E4%B8%AD%E7%9A%84%20EOR_STATUS%20%E5%AD%97%E6%AE%B5%E8%A2%AB%E8%AE%BE%E7%BD%AE%E3%80%82%E4%BD%86%E6%98%AF%E4%B8%BA%E4%BB%80%E4%B9%88%20EOF%20%E9%80%BB%E8%BE%91%E4%BC%9A%E9%92%B3%E4%BD%8D%E9%AB%98%E4%BD%8D%EF%BC%9F%E6%88%91%E7%9A%84%20USB%20%E8%BD%AC%E4%B8%B2%E8%A1%8C%E9%80%82%E9%85%8D%E5%99%A8%E6%98%AF%E5%90%A6%E6%9C%89%E9%97%AE%E9%A2%98%EF%BC%9F%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%3CP%3E%E5%BC%97%E6%B4%9B%E9%87%8C%E5%AE%89%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2187793%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20PN7462%20UART%20Communication%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2187793%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F255337%22%20target%3D%22_blank%22%3E%40Florian_37%3C%2FA%3E%EF%BC%8C%E6%97%A5%E5%AE%89%EF%BC%81%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E6%88%91%E6%B5%8B%E8%AF%95%E4%BA%86%E6%82%A8%E7%9A%84%E4%BB%A3%E7%A0%81%EF%BC%8C%E7%A8%8D%E4%BD%9C%E4%BF%AE%E6%94%B9%E5%90%8E%E5%B0%B1%E8%83%BD%E6%AD%A3%E5%B8%B8%E5%B7%A5%E4%BD%9C%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%E6%82%A8%E6%89%80%E6%8F%8F%E8%BF%B0%E7%9A%84%20HIF%20%E9%85%8D%E7%BD%AE%E5%B7%A5%E4%BD%9C%E6%AD%A3%E5%B8%B8%EF%BC%8C%E6%88%91%E8%AE%A4%E4%B8%BA%E8%BF%99%E6%98%AF%E5%9C%A8%22initUart()%22%20%E5%87%BD%E6%95%B0%E4%B8%AD%E5%AE%8C%E6%88%90%E7%9A%84%EF%BC%8C%E8%AF%B7%E7%A1%AE%E8%AE%A4%E8%BF%99%E4%B8%80%E7%82%B9%EF%BC%8C%E5%9B%A0%E4%B8%BA%E8%BF%99%E9%83%A8%E5%88%86%E4%BB%A3%E7%A0%81%EF%BC%88%E5%8C%85%E6%8B%AC%22phhalHif_Init%22%20%E5%87%BD%E6%95%B0%EF%BC%89%E5%BA%94%E7%B4%A7%E6%8E%A5%E5%9C%A8%22phhalHif_InitRxBuffer%22%20%E5%87%BD%E6%95%B0%E4%B9%8B%E5%89%8D%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E5%9C%A8%22phhalHif_Transmit%22%20%E5%87%BD%E6%95%B0%E4%B9%8B%E5%90%8E%EF%BC%8C%E5%8F%AF%E4%BB%A5%E8%80%83%E8%99%91%E6%B7%BB%E5%8A%A0%E4%BB%A5%E4%B8%8B%E5%87%A0%E8%A1%8C%EF%BC%8C%E4%BB%A5%E4%BE%BF%E7%AD%89%E5%BE%85%E4%BC%A0%E8%BE%93%E5%AE%8C%E6%88%90%E5%90%8E%E5%86%8D%E5%BC%80%E5%A7%8B%E4%B8%8B%E4%B8%80%E6%AC%A1%E8%BF%AD%E4%BB%A3%E3%80%82%3C%2FP%3E%0A%3CDIV%20id%3D%22tinyMceEditorDaniel_Gutierrez_0%22%20class%3D%22mceNonEditable%20lia-copypaste-placeholder%22%3E%26nbsp%3B%3C%2FDIV%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Daniel_Gutierrez_3-1760651181819.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Daniel_Gutierrez_3-1760651181819.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F361256i2E0AD948D057E5F9%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Daniel_Gutierrez_3-1760651181819.png%22%20alt%3D%22Daniel_Gutierrez_3-1760651181819.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%E8%AF%B7%E6%B3%A8%E6%84%8F%EF%BC%8C%E5%9C%A8%E6%88%91%E7%9A%84%E6%A1%88%E4%BE%8B%E4%B8%AD%EF%BC%8C%E4%B8%BA%E4%BA%86%E5%A4%84%E7%90%86%20Rx%2FTx%20%E6%A0%87%E5%BF%97%EF%BC%8CRx%2FTx%20%E5%9B%9E%E8%B0%83%E6%98%AF%E8%BF%99%E6%A0%B7%E7%9A%84%E3%80%82%3C%2FP%3E%0A%3CDIV%20id%3D%22tinyMceEditorDaniel_Gutierrez_1%22%20class%3D%22mceNonEditable%20lia-copypaste-placeholder%22%3E%26nbsp%3B%3C%2FDIV%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Daniel_Gutierrez_4-1760651199602.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Daniel_Gutierrez_4-1760651199602.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F361257i89965D1442C16091%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Daniel_Gutierrez_4-1760651199602.png%22%20alt%3D%22Daniel_Gutierrez_4-1760651199602.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%E6%88%91%E8%BF%98%E6%83%B3%E8%AF%B4%E7%9A%84%E6%98%AF%EF%BC%8C%E8%B5%B7%E5%88%9D%E6%88%91%E7%A1%AE%E5%AE%9E%E9%81%87%E5%88%B0%E4%BA%86%E4%B8%80%E4%BA%9B%E6%84%8F%E6%83%B3%E4%B8%8D%E5%88%B0%E7%9A%84%E6%83%85%E5%86%B5%EF%BC%8C%E6%AF%94%E5%A6%82%20Rx%20%E4%B8%AD%E6%96%AD%E5%92%8C%E4%BC%A0%E8%BE%93%E9%94%99%E8%AF%AF%E3%80%82%E9%80%9A%E8%BF%87%E5%AF%B9%E8%AF%A5%E9%A1%B9%E7%9B%AE%E7%9A%84%E7%BC%96%E8%AF%91%E5%99%A8%E8%BF%9B%E8%A1%8C%E5%8E%BB%E4%BC%98%E5%8C%96%EF%BC%8C%E8%BF%99%E4%BA%9B%E9%97%AE%E9%A2%98%E5%BE%97%E4%BB%A5%E8%A7%A3%E5%86%B3%E3%80%82%E8%BF%99%E6%98%AF%E9%80%9A%E8%BF%87%E5%8F%B3%E9%94%AE%E5%8D%95%E5%87%BB%E9%A1%B9%E7%9B%AE%E5%B9%B6%E9%80%89%E6%8B%A9%20%E2%80%9C%E5%B1%9E%E6%80%A7%20%26gt%3B%20C%2FC%2B%2B%20%E7%89%88%E6%9C%AC%20%26gt%3B%20%E8%AE%BE%E7%BD%AE%20%26gt%3B%20%E4%BC%98%E5%8C%96%20%26gt%3B%20%E4%BC%98%E5%8C%96%E7%BA%A7%E5%88%AB%20%26gt%3B%20%E6%97%A0%E2%80%9D%20%E6%9D%A5%E5%AE%8C%E6%88%90%E7%9A%84%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Daniel_Gutierrez_5-1760651222976.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Daniel_Gutierrez_5-1760651222976.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F361258i6357881405F69055%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Daniel_Gutierrez_5-1760651222976.png%22%20alt%3D%22Daniel_Gutierrez_5-1760651222976.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%E5%A6%82%E6%9E%9C%E6%9C%89%E5%B8%AE%E5%8A%A9%EF%BC%8C%E8%AF%B7%E5%91%8A%E8%AF%89%E6%88%91%E3%80%82%E5%A6%82%E6%9E%9C%E6%B2%A1%E6%9C%89%EF%BC%8C%E6%88%91%E6%83%B3%E8%AF%B7%E6%82%A8%E5%88%86%E4%BA%AB%E4%B8%80%E4%B8%8B%E8%BE%93%E5%85%A5%22Hif_Generic_Callback%22%20%E6%97%B6%E5%BE%97%E5%88%B0%E7%9A%84%E4%B8%AD%E6%96%AD%E7%8A%B6%E6%80%81%20(dwIntStatus)%20%E7%9A%84%E5%80%BC%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E8%87%B4%E4%BB%A5%E6%9C%80%E8%AF%9A%E6%8C%9A%E7%9A%84%E9%97%AE%E5%80%99%EF%BC%8C%3CBR%20%2F%3EDaniel%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2185347%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20PN7462%20UART%20Communication%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2185347%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%40%E4%B8%B9%E5%B0%BC%E5%B0%94-%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F245723%22%20target%3D%22_blank%22%3E%E5%8F%A4%E9%93%81%E9%9B%B7%E6%96%AF%3C%2FA%3E%E3%80%81%3C%2FP%3E%3CP%3E%E4%B8%BB%E6%9C%BA%20MCU%20%E5%B0%86%E6%98%AF%20STM32%EF%BC%8C%E4%BD%86%E7%9B%AE%E5%89%8D%E6%88%91%E6%AD%A3%E5%9C%A8%E4%BD%BF%E7%94%A8%20FT232%20%E9%80%82%E9%85%8D%E5%99%A8%E5%92%8C%20python%20%E6%B5%8B%E8%AF%95%E6%88%91%E7%9A%84%E7%A8%8B%E5%BA%8F%E3%80%82%E6%88%91%E5%8F%91%E5%B8%83%E7%9A%84%E4%BB%A3%E7%A0%81%E5%9C%A8%20Pn7462%20%E4%B8%8A%E8%BF%90%E8%A1%8C%E3%80%82%E5%BD%93%E6%88%91%E5%9C%A8%E5%BE%AA%E7%8E%AF%E5%89%8D%E5%8F%AA%E5%88%9D%E5%A7%8B%E5%8C%96%E4%BA%86%E4%B8%80%E6%AC%A1%20uart%20%E5%92%8C%20RxBuffer%20%E6%97%B6%EF%BC%88%E4%BB%A3%E7%A0%81%E5%A6%82%E4%B8%8B%EF%BC%89%EF%BC%8C%E6%88%91%E9%81%87%E5%88%B0%E7%9A%84%E9%97%AE%E9%A2%98%E6%98%AF%EF%BC%8C%E5%9C%A8%E4%BC%A0%E8%BE%93%E6%95%B0%E6%8D%AE%E6%97%B6%E6%80%BB%E6%98%AF%E4%BC%9A%E5%87%BA%E7%8E%B0%20Rx%20%E4%B8%AD%E6%96%AD%EF%BC%88%E6%80%BB%E6%98%AF%200xFFFF......%E4%BD%86%E6%95%B0%E6%8D%AE%E9%95%BF%E5%BA%A6%E4%B8%8D%E5%90%8C%EF%BC%89%E3%80%82%20%3C%2FP%3E%3CP%3E%3CSTRONG%3E%E8%BF%99%E6%98%AF%E6%88%91%E7%9A%84%20HifConfig%EF%BC%9A%20%3C%2FSTRONG%3E%3C%2FP%3E%3CDIV%3E%3CDIV%3E%3CP%3E%3CSPAN%3EphhalHif_Config_t%3C%2FSPAN%3E%20%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%2F%2F%E4%B8%BB%E6%9C%BA%E6%8E%A5%E5%8F%A3%E9%85%8D%E7%BD%AE%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EeBufferType%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3Ee_buffer_format_free%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%20%3CSPAN%3E%2F*%20e_buffer_format_free%20*%2F%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EbShortFrameLen%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EgpkphCfg_EE_HW_HIF%3C%2FSPAN%3E%3CSPAN%3E-%26gt%3B%3C%2FSPAN%3E%3CSPAN%3EbShortFrameLen%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EbStoreErrData%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EgpkphCfg_EE_HW_HIF%3C%2FSPAN%3E%3CSPAN%3E-%26gt%3B%3C%2FSPAN%3E%3CSPAN%3EbStoreErrData%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EbHeaderSize%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EgpkphCfg_EE_HW_HIF%3C%2FSPAN%3E%3CSPAN%3E-%26gt%3B%3C%2FSPAN%3E%3CSPAN%3EbHeaderSize%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EbTimeout%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EgpkphCfg_EE_HW_HIF%3C%2FSPAN%3E%3CSPAN%3E-%26gt%3B%3C%2FSPAN%3E%3CSPAN%3EbTimeout%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3Ee%20%E6%8E%A5%E5%8F%A3%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EE_HIF_HSU%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsHsuConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EbIsHsuBoot%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EgpkphCfg_EE_HW_HIF%3C%2FSPAN%3E%3CSPAN%3E-%26gt%3B%3C%2FSPAN%3E%3CSPAN%3EbIsHsuBoot%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsHsuConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EbEOF%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EgpkphCfg_EE_HW_HIF%3C%2FSPAN%3E%3CSPAN%3E-%26gt%3B%3C%2FSPAN%3E%3CSPAN%3EbEndOfFrame%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsHsuConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EbStopBits%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E1%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsHsuConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EbDummyBytes%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EgpkphCfg_EE_HW_HIF%3C%2FSPAN%3E%3CSPAN%3E-%26gt%3B%3C%2FSPAN%3E%3CSPAN%3EbDummyBytes%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EsHsuConfig%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EbBaudRate%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3EphhalHif_Hsu_BaudRate_t%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3EgpkphCfg_EE_HW_HIF%3C%2FSPAN%3E%3CSPAN%3E-%26gt%3B%3C%2FSPAN%3E%3CSPAN%3EbBaudRate%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E5%A6%82%E6%9E%9C%3C%2FSPAN%3E%20%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3EphhalHif_Init%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E%26amp%3B%3C%2FSPAN%3E%3CSPAN%3EsHifConfig%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%20%3CSPAN%3E%26amp%3B%3C%2FSPAN%3E%3CSPAN%3EHif_Generic_Callback%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%20%3CSPAN%3E!%3D%3C%2FSPAN%3E%3CSPAN%3EPH_ERR_SUCCESS%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%20%3CSPAN%3E%7B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3ELOG_TXT%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E%22%E9%94%99%E8%AF%AF%20Hif%20Init%22%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FP%3E%3C%2FDIV%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CP%3E%3CSTRONG%3E%E4%BB%A3%E7%A0%81%E6%97%A0%E9%9C%80%E6%AF%8F%E6%AC%A1%E9%83%BD%E5%88%9D%E5%A7%8B%E5%8C%96%20uart%20%E5%92%8C%20RxBuffer%EF%BC%9A%3C%2FSTRONG%3E%3C%2FP%3E%3CDIV%3E%3CDIV%3E%3CP%3E%3CSPAN%3Eint%3C%2FSPAN%3E%20%3CSPAN%3Emain%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Evoid%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%20%3CSPAN%3E%7B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EphFlashBoot_Main%3C%2FSPAN%3E%3CSPAN%3E()%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EphLED_Init%3C%2FSPAN%3E%3CSPAN%3E()%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3Ememset%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ETxBuffer%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3E0x41%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ETxBuffer%3C%2FSPAN%3E%3CSPAN%3E))%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EphStatus_t%3C%2FSPAN%3E%20%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EPH_ERR_SUCCESS%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EinitUart%3C%2FSPAN%3E%3CSPAN%3E()%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EphhalHif_InitRxBuffer%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Ee_rx_buffer_id0%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3Esizeof%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ERxBuffer%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3ERxBuffer%3C%2FSPAN%3E%3CSPAN%3E%2C%26amp%3B%3C%2FSPAN%3E%3CSPAN%3EHif_RX_Callback%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E4%B8%BA%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Eint%3C%2FSPAN%3E%20%3CSPAN%3Ei%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%20%3CSPAN%3Ei%3C%2FSPAN%3E%3CSPAN%3E%26lt%3B%3C%2FSPAN%3E%3CSPAN%3E10%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%20%3CSPAN%3Ei%3C%2FSPAN%3E%3CSPAN%3E%2B%2B%3C%2FSPAN%3E%3CSPAN%3E)%7B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3Eprintf%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E%22Loop%3A%25d%2C%20Status%20%3A%25d%5Cn%22%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3Ei%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E8%99%BD%E7%84%B6%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3EbRxReady%20%3C%2FSPAN%3E%3CSPAN%3E%3D%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%20%3CSPAN%3E%2F%2F%E7%AD%89%E5%BE%85%20Rx%20%E4%B8%AD%E6%96%AD%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EPH_ERR_SUCCESS%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3EbRxReady%20%3C%2FSPAN%3E%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EPH_ERR_SUCCESS%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EphhalHif_ReleaseRxBuffer%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Ee_rx_buffer_id0%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%3CSPAN%3EPH_ERR_SUCCESS%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E7%8A%B6%E6%80%81%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EphhalHif_Transmit%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ETxBuffer%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%20%3CSPAN%3Esizeof%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3ETxBuffer%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%20%3CSPAN%3E%26amp%3B%3C%2FSPAN%3E%3CSPAN%3EHif_TX_Callback%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EphUser_Wait%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E100%3C%2FSPAN%3E%3CSPAN%3E*%3C%2FSPAN%3E%3CSPAN%3E1000%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E8%99%BD%E7%84%B6%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3E1%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FP%3E%3C%2FDIV%3E%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2185152%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20PN7462%20UART%20Communication%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2185152%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F255337%22%20target%3D%22_blank%22%3E%40Florian_37%3C%2FA%3E%EF%BC%8C%E6%97%A5%E5%AE%89%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E9%9D%9E%E5%B8%B8%E6%84%9F%E8%B0%A2%E6%82%A8%E5%AF%B9%E6%88%91%E4%BB%AC%E7%9A%84%E4%BA%A7%E5%93%81%E6%84%9F%E5%85%B4%E8%B6%A3%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E8%83%BD%E5%90%A6%E8%AF%B7%E6%82%A8%E6%8F%90%E4%BE%9B%E6%9C%89%E5%85%B3%E8%AE%BE%E7%BD%AE%E7%9A%84%E6%9B%B4%E5%A4%9A%E8%AF%A6%E7%BB%86%E4%BF%A1%E6%81%AF%EF%BC%9F%E4%BE%8B%E5%A6%82%EF%BC%8C%E4%BD%9C%E4%B8%BA%E4%B8%BB%E6%9C%BA%E4%BD%BF%E7%94%A8%E7%9A%84%20MCU%20%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F%E6%82%A8%E6%98%AF%E5%A6%82%E4%BD%95%E8%BF%9E%E6%8E%A5%20PN7462%20%E4%B8%BB%E6%9C%BA%E6%8E%A5%E5%8F%A3%E7%9A%84%EF%BC%9F%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E6%88%91%E5%BB%BA%E8%AE%AE%E5%8F%82%E8%80%83%3CA%20href%3D%22https%3A%2F%2Fwww.nxp.com%2Fdocs%2Fen%2Fuser-guide%2FUM10913.pdf%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3EUM10913%3C%2FA%3E%E6%96%87%E4%BB%B6%E7%9A%84%E7%AC%AC%206.3%20%E8%8A%82%EF%BC%8C%E5%85%B6%E4%B8%AD%E8%AF%A6%E7%BB%86%E4%BB%8B%E7%BB%8D%E4%BA%86%E4%BD%BF%E7%94%A8%E4%B8%BB%E6%9C%BA%20HSU%20%E6%8E%A5%E5%8F%A3%E7%9A%84%E7%A4%BA%E4%BE%8B%E5%8A%9F%E8%83%BD%E3%80%82%E8%AF%B7%E7%A1%AE%E8%AE%A4%E6%82%A8%E5%8F%91%E9%80%81%E7%9A%84%E4%BB%A3%E7%A0%81%E6%98%AF%E5%90%A6%E4%B8%8E%20PN7462%20%E4%B8%8A%E8%BF%90%E8%A1%8C%E7%9A%84%E7%A8%8B%E5%BA%8F%E4%B8%80%E8%87%B4%EF%BC%9F%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E6%88%91%E5%BB%BA%E8%AE%AE%E5%9C%A8%E5%90%AF%E5%8A%A8%22for%22%20%E5%BE%AA%E7%8E%AF%E4%B9%8B%E5%89%8D%EF%BC%8C%E5%8F%AA%E5%AF%B9%20uart%20%E5%92%8C%20RxBuffer%20%E8%BF%9B%E8%A1%8C%E4%B8%80%E6%AC%A1%E5%88%9D%E5%A7%8B%E5%8C%96%EF%BC%8C%E5%9B%A0%E4%B8%BA%E5%9C%A8%E5%B7%B2%E5%90%AF%E7%94%A8%E5%90%8E%E5%86%8D%E5%88%9D%E5%A7%8B%E5%8C%96%E4%BC%9A%E8%BF%94%E5%9B%9E%22PH_ERR_HIF_RX_BUFFER_ALREADY_ENABLED%22%20%E7%8A%B6%E6%80%81%E3%80%82%E5%AE%8C%E6%88%90%E5%90%8E%EF%BC%8C%22for%22%20%E5%BE%AA%E7%8E%AF%E5%BA%94%E5%BC%80%E5%A7%8B%E7%AD%89%E5%BE%85%20bRxReady%20%E5%8F%98%E4%B8%BA%200%EF%BC%88while(bRxReady%20%3D%3D%200)%EF%BC%89%EF%BC%8C%E8%BF%99%E6%A0%B7%E5%B0%B1%E4%B8%8D%E9%9C%80%E8%A6%81%E5%AF%B9%E7%BC%93%E5%86%B2%E5%8C%BA%E5%92%8C%E6%8E%A5%E5%8F%A3%E8%BF%9B%E8%A1%8C%E5%8E%BB%E5%88%9D%E5%A7%8B%E5%8C%96%E4%BA%86%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E8%AF%B7%E5%91%8A%E8%AF%89%E6%88%91%E8%BF%99%E6%A0%B7%E5%81%9A%E6%98%AF%E5%90%A6%E6%9C%89%E4%BB%80%E4%B9%88%E4%B8%8D%E5%90%8C%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E8%87%B4%E4%BB%A5%E6%9C%80%E8%AF%9A%E6%8C%9A%E7%9A%84%E9%97%AE%E5%80%99%EF%BC%8C%3CBR%20%2F%3EDaniel%3C%2FP%3E%3C%2FLINGO-BODY%3E