LPC55S16 USART DMA receive unknown Length.

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

LPC55S16 USART DMA receive unknown Length.

819 次查看
NaveenGS
Contributor I

Hi,

Previously I used MKV58 series controller which has EDMA support where, I was using idleline flag to handle unknown rx size.

 

Now, does LPC55s16supports EDMA?

I have gone through DMA and interrupt transfer examples of LPC55s16 controller.

DMA send is working as expected. How to use DMA receive with unknown bytes length. Is interrupt with ring buffer the only way?

 

Thank you

Naveen G S

 

0 项奖励
回复
1 回复

792 次查看
RaRo
NXP TechSupport
NXP TechSupport

Hello @NaveenGS,

Have you tried with any of the following check examples yet?

RaulRomero_0-1669340170549.png

[Import SDK example(s) -> driver_examples]

You could try using polling method too.

Since the USART, as you point out, does not provide an IDLE detection interrupt, you could try to configure the DMA for a large receive buffer and perform polling every amount of ms of the transfer count. For that you should configure the transfers from FIFORD register.

RaulRomero_1-1669340170552.png

[LPC55S1x/LPC551x User Manual. Chapter 34: LPC55S1x/LPC551x USARTs]

Best regards, Raul

0 项奖励
回复