LPC845 DMA write to GPIO fails

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

LPC845 DMA write to GPIO fails

ソリューションへジャンプ
204件の閲覧回数
phatpaul
Contributor III

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?

0 件の賞賛
返信
1 解決策
89件の閲覧回数
Alice_Yang
NXP TechSupport
NXP TechSupport

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

 

元の投稿で解決策を見る

0 件の賞賛
返信
1 返信
90件の閲覧回数
Alice_Yang
NXP TechSupport
NXP TechSupport

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

 

0 件の賞賛
返信
%3CLINGO-SUB%20id%3D%22lingo-sub-2389301%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ELPC845%20%E3%81%AE%20GPIO%20%E3%81%B8%E3%81%AE%20DMA%20%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%81%8C%E5%A4%B1%E6%95%97%E3%81%97%E3%81%BE%E3%81%99%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2389301%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3ELPC845%20DMA%E3%81%AFGPIO%E3%82%920xA0000000%E3%81%A7%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%81%E3%81%AA%E3%81%84%E3%82%88%E3%81%86%E3%81%A7%E3%81%99%3C%2FP%3E%3CP%3EGPIO%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%97%E3%82%88%E3%81%86%E3%81%A8%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81DMA0%20-%26gt%3BERRINT%3D1%20%E3%81%A8%E3%81%84%E3%81%86%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%8C%E7%99%BA%E7%94%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E%E3%83%88%E3%83%A9%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%E3%81%AE%E6%89%8B%E9%A0%86%E3%81%A8%E3%81%97%E3%81%A6%E3%80%81%E5%AE%9B%E5%85%88%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%82%92RAM%E3%81%AB%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%9F%E3%81%A8%E3%81%93%E3%82%8D%E3%80%81ERRINT%E3%83%95%E3%83%A9%E3%82%B0%E3%81%AF%E7%99%BA%E7%94%9F%E3%81%97%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%3C%2FP%3E%3CP%3E%E3%81%93%E3%82%8C%E3%81%8C%E6%9C%AC%E5%BD%93%E3%81%AB%E4%B8%8D%E5%8F%AF%E8%83%BD%E3%81%AA%E3%81%AE%E3%81%8B%E3%81%A9%E3%81%86%E3%81%8B%E3%82%92%E6%96%AD%E5%AE%9A%E3%81%A7%E3%81%8D%E3%82%8B%E6%83%85%E5%A0%B1%E6%BA%90%E3%81%AF%E8%A6%8B%E3%81%A4%E3%81%8B%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%81%A7%E3%81%97%E3%81%9F%E3%80%82%3C%2FP%3E%3CP%3E%E6%B1%BA%E5%AE%9A%E7%9A%84%E3%81%A7%E3%81%AF%E3%81%AA%E3%81%84%E3%82%82%E3%81%AE%E3%81%AE%E3%80%81%E3%81%9D%E3%81%AE%E5%8F%AF%E8%83%BD%E6%80%A7%E3%82%92%E7%A4%BA%E5%94%86%E3%81%99%E3%82%8B%E5%8F%82%E8%80%83%E6%96%87%E7%8C%AE%E3%82%92%E8%A6%8B%E3%81%A4%E3%81%91%E3%81%BE%E3%81%97%E3%81%9F%3A%3CBR%20%2F%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2FLPC-Microcontrollers%2FLpc-824-DMA-to-GPIO%2Fm-p%2F650903%22%20target%3D%22_blank%22%3Ehttps%3A%2F%2Fcommunity.nxp.com%2Ft5%2FLPC-Microcontrollers%2FLpc-824-DMA-to-GPIO%2Fm-p%2F650903%3C%2FA%3E%3C%2FP%3E%3CP%3E%E3%81%A9%E3%81%AA%E3%81%9F%E3%81%8B%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%A6%E3%82%82%E3%82%89%E3%81%88%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2390738%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20LPC845%20DMA%20write%20to%20GPIO%20fails%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2390738%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%81%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F104815%22%20target%3D%22_blank%22%3E%40phatpaul%3C%2FA%3E%3C%2FP%3E%0A%3CDIV%3E%0A%3CP%3E%E3%81%94%E8%B3%AA%E5%95%8F%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%E3%81%AF%E3%81%84%E3%80%81LPC845%20DMA%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%A9%E3%81%AF%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B90xA0000000%E3%81%AEGPIO%E3%83%AC%E3%82%B8%E3%82%B9%E3%82%BF%E7%A9%BA%E9%96%93%E3%81%AB%E7%9B%B4%E6%8E%A5%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82The%20GPIO%20%E3%83%9A%E3%83%AA%E3%83%95%E3%82%A7%E3%83%A9%E3%83%AB%20is%20%E3%82%B3%E3%83%8D%E3%82%AF%E3%83%86%E3%83%83%E3%83%89%20through%20the%20Cortex-M0%2B%20I%2FO%20bus%20for%20fast%20CPU%20%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%2C%20whereas%20the%20DMA%20%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%A9%20%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%20memories%20and%20supported%20%E3%83%9A%E3%83%AA%E3%83%95%E3%82%A7%E3%83%A9%E3%83%AB%20through%20the%20AHB%2FAPB%20bus%20%E3%82%A4%E3%83%B3%E3%83%95%E3%83%A9.%3C%2FP%3E%0A%3CP%3E%E3%81%95%E3%82%89%E3%81%AB%E3%80%81LPC845%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E3%82%B7%E3%83%BC%E3%83%88%E3%81%AB%E3%81%AF%E6%AC%A1%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E8%A8%98%E8%BC%89%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CBLOCKQUOTE%3E%0A%3CP%3E%E3%80%8CDMA%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%A9%E3%83%BC%E3%81%AF%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E3%83%A1%E3%83%A2%E3%83%AA%E3%81%A8USART%E3%80%81SPI%E3%80%81I2C%E3%80%81DAC%E3%80%81%E3%81%9D%E3%81%97%E3%81%A6%E3%82%AD%E3%83%A3%E3%83%91%E3%82%B7%E3%83%86%E3%82%A3%E3%83%96%E3%82%BF%E3%83%83%E3%83%81%E3%81%AB%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%E3%80%8D%3C%2FP%3E%0A%3C%2FBLOCKQUOTE%3E%0A%3CP%3EGPIO%E3%81%AFDMA%E3%81%8C%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E5%8F%AF%E8%83%BD%E3%81%AA%E3%83%9A%E3%83%AA%E3%83%95%E3%82%A7%E3%83%A9%E3%83%AB%E3%81%AB%E3%81%AF%E5%90%AB%E3%81%BE%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%E3%81%97%E3%81%9F%E3%81%8C%E3%81%A3%E3%81%A6%E3%80%81GPIO%E3%83%AC%E3%82%B8%E3%82%B9%E3%82%BF%E7%A9%BA%E9%96%93%E3%81%B8%E3%81%AEDMA%E8%BB%A2%E9%80%81%E3%81%AF%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%E3%81%95%E3%82%8C%E3%81%A6%E3%81%8A%E3%82%89%E3%81%9A%E3%80%81%E8%BB%A2%E9%80%81%E3%82%A8%E3%83%A9%E3%83%BC%EF%BC%88ERRINT%EF%BC%89%E3%81%8C%E7%99%BA%E7%94%9F%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%E3%81%93%E3%82%8C%E3%81%AF%E3%80%81%E3%81%8A%E5%AE%A2%E6%A7%98%E3%81%8C%E8%A6%B3%E5%AF%9F%E3%81%95%E3%82%8C%E3%81%9F%E5%8B%95%E4%BD%9C%E3%81%A8%E4%B8%80%E8%87%B4%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3C%2FDIV%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Alice_Yang_0-1783237995511.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Alice_Yang_0-1783237995511.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F391246i878D588FCD40A736%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Alice_Yang_0-1783237995511.png%22%20alt%3D%22Alice_Yang_0-1783237995511.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3EBR%3C%2FP%3E%0A%3CP%3E%E3%82%A2%E3%83%AA%E3%82%B9%3C%2FP%3E%0A%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E