Werte über array speichern

Gast #1001760
Lesenswert?

Hallo Leute,
wie der Name verrät bin ich dabei die Welt der Programmierung zu 
entdecken.
Deswegen habe ich folgende Frage.
Kann man werte die man aus einem ADWandler liest über Array speichern.
Am ADWandler bekomme ich immer neue Werte, deswegen will z.B 50 Werte im 
SRAM speichern und nach Bedarf abrufen können. Gerne würde ich das mit 
ein Array tun.
Falls jemand ein Link zur Verfügung hat wäre ich sehr dankbar.
Danke
Gast #1001786
Lesenswert?

Warum sollte das nicht gehen? Bspw. so:
1
#define N 50
2

3
unsigned int array[N];
4

5
for(i=0; i<N; i++)
6
  array[i] = read_adc();

Oder soll das Schreiben der Werte in das Array ohne Softwareeingriff
erfolgen? Dann muss der ADC DMA-fähig sein. Bei einigen, aber lange
nicht bei allen Mikrocontrollern ist dies der Fall.
Gast #1005198
Lesenswert?

Danke leute für ihre Antwort.
bin immer noch dabei meine Werte durch ein Array abzuspeichern.
bin zum folgenden Code gekommen.
1
volatile uint16_t werte;
2
uint8_t i;
3
void ZMSpeichern(){
4
uint16_t speicherliste[N];
5
Berechnung();
6
for(i=0; i<N; i++)
7
speicherliste[i] = werte; // diese Werte werden zum display geschickt
8
}

nun würde ich gerne wissen wie die Werte mit ihren Index gezeigt werden 
können.

z.B
1 -wert- bei speicherliste[0]
2 -wert- bei speicherliste[1]
... usw
Danke für ihre Hilfe
Moderator (Firma: Titel) Persönliche Seite #1005306
Lesenswert?

> ... durch ein Array abzuspeichern.
Richtig ist: ... in ein Array abzuspeichern.

Das hier gibt den Output, den du willst:
1
for(i=0; i<N; i++) {
2
   printf("%d -%d- bei speicherliste[%d]\n\r", i+1,speicherliste[i],i);
3
}

Ein Tipp:
lern das C-Programmieren nicht am uC, sondern am PC. Das geht viel 
leichter. Und die Entwicklungsumgebung(en) gibts für lau.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren