Hola compañeros!!! Quería pedirles una mano con la memoria sram del uC lpc1769.
Estoy tomando datos con el adc y los guardo en memoria ( por DMA ) en parte de la sram.
El adc funciona y el dma tambien, he logrado que escriba sobre un vector de la cantidad de posiciones de la transferencia.
Ahora que quiero guardar estos datos en la memoria :
:::::::::::::::::::::::::::::::::::::::::::::::::::::::
AHB SRAM ::::::::::::::::::::::::::::::::::::::::::::::
AHB SRAM 0 : 0x2007 C000
AHB SRAM 1 : 0x2008 0000
RAM :::::::::::::::::::::::::::::::::::::::::::::::::::
RAM 0 : 0x1000 0000
RAM 1 : 0x1000 2000
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--- datos sacados del user manual lpc1769 ---
Lo que pase a solo declarar una variable:
#define AHBSRAM0_BASE (uint32_t *) 0x2007C000
#define MEM_PER_ORIGEN GPDMA_CONN_ADC
#define MEM_PER_DEST AHBSRAM0_BASE
Y paso estos datos al DMA cuando configuro la transferencia.
Luego de probarlo, siendo que el adc es de 12 bits..obtengo valores muy altos, a continuación les escribo qué obtuve:
AHBSRAM0_BASE (type: uint32_t*) Value: 1073741824(decima) 40000000 (hexa)
AHBSRAM0_BASE +1 (type: uint32_t*) Value: 1073741824(decima) 40000000 (hexa)
O me falta entender algo más? ...
Estoy tomando datos con el adc y los guardo en memoria ( por DMA ) en parte de la sram.
El adc funciona y el dma tambien, he logrado que escriba sobre un vector de la cantidad de posiciones de la transferencia.
Ahora que quiero guardar estos datos en la memoria :
:::::::::::::::::::::::::::::::::::::::::::::::::::::::
AHB SRAM ::::::::::::::::::::::::::::::::::::::::::::::
AHB SRAM 0 : 0x2007 C000
AHB SRAM 1 : 0x2008 0000
RAM :::::::::::::::::::::::::::::::::::::::::::::::::::
RAM 0 : 0x1000 0000
RAM 1 : 0x1000 2000
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
--- datos sacados del user manual lpc1769 ---
Lo que pase a solo declarar una variable:
#define AHBSRAM0_BASE (uint32_t *) 0x2007C000
#define MEM_PER_ORIGEN GPDMA_CONN_ADC
#define MEM_PER_DEST AHBSRAM0_BASE
Y paso estos datos al DMA cuando configuro la transferencia.
Luego de probarlo, siendo que el adc es de 12 bits..obtengo valores muy altos, a continuación les escribo qué obtuve:
AHBSRAM0_BASE (type: uint32_t*) Value: 1073741824(decima) 40000000 (hexa)
AHBSRAM0_BASE +1 (type: uint32_t*) Value: 1073741824(decima) 40000000 (hexa)
O me falta entender algo más? ...