LPC1769 single burst ADC conversion with DMA

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

LPC1769 single burst ADC conversion with DMA

1,239 次查看
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by Gobi on Thu Dec 22 07:47:17 MST 2011
I'd like to make a timer triggered burst conversion. The results should be transferred via DMA channel.
Burst conversion will be started with timer interrupt and stopped with DMA interrupt. Only first conversion will work in right way.

Before conversion will be stopped in DMA interrupt, a new conversion will be started. This conversion will disturb the DMA channel. I found no possibility for "single burst conversion"
0 项奖励
回复
2 回复数

1,031 次查看
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by Gobi on Thu Dec 22 22:56:30 MST 2011
I already used these examples.

At the end of DMA_IRQHandler I added following lines:
    LPC_GPDMACH0->DMACCSrcAddr = DMA_SRC;
    LPC_GPDMACH0->DMACCDestAddr = DMA_DST;
    LPC_GPDMACH1->DMACCControl = (DMA_SIZE & 0x0FFF)|(0x00<<12) |(0x00<<15)|(0x02<<18)|(0x02<<21)|(1<<26)|(1<<27)|0x80000000;

In timer interrupt I added:
ADCBurstRead()

After writing to DMACCControl, DMA channel will make one transfer because of already converted ADC0.
0 项奖励
回复

1,031 次查看
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by NXP_Europe on Thu Dec 22 16:48:53 MST 2011
hello Gobi,

see for examples:

http://ics.nxp.com/support/documents/microcontrollers/zip/mcb1700.code.bundle.lpc1769.lpcxpresso.zip

A matter of combining 3 example codes: ADC, DMA and Timer.
0 项奖励
回复