2389301_en-US

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2389301_en-US

2389301_en-US

LPC845 DMA write to GPIO fails

It seems LPC845 DMA cannot write GPIO at 0xA0000000

I get DMA0 ->ERRINT=1 when trying to do the GPIO write.

As troublehooting step, I changed the dest address to RAM and do not get the ERRINTflag. 

I have not been able to find a definitive source to say if this is truly impossible.

I did find a reference which is not definitive but hints that this might be the case:
https://community.nxp.com/t5/LPC-Microcontrollers/Lpc-824-DMA-to-GPIO/m-p/650903

Can someone please confirm?

Re: LPC845 DMA write to GPIO fails

Hello @phatpaul 

Thanks for your question.

Yes, the LPC845 DMA controller cannot write directly to the GPIO register space at address 0xA0000000. The GPIO peripheral is connected through the Cortex-M0+ I/O bus for fast CPU access, whereas the DMA controller accesses memories and supported peripherals through the AHB/APB bus infrastructure.

In addition, the LPC845 datasheet states that:

"The DMA controller can access all memories and the USART, SPI, I2C, DAC, and Capacitive Touch."

GPIO is not listed among the peripherals accessible by DMA. Therefore, DMA transfers to the GPIO register space are not supported and will generate a transfer error (ERRINT), which is consistent with the behavior you observed.

Alice_Yang_0-1783237995511.png


Thank you.


BR

Alice


タグ(1)
評価なし
バージョン履歴
最終更新日:
1ヶ月前
更新者: