STM32 eigenen Speicher einlesen

Gast #5106792
Lesenswert?

Liebes Forum,

ich benötige Hilfe, weil ich folgendes erreichen möchte:
Ein Mikrocontroller (STM32) soll seinen eigene Speicher (Flash memory) 
auslesen und diese Programmier-Daten an einen weiteren Mikrocontroller 
weiter geben.

Wie programmiere ich, dass ein Mikrocontroller Daten aus seinem eigenen 
Flash ausliest?
Vielen Dank im Voraus!
LG
#5106894
Lesenswert?

Mampf F. schrieb:
> uint32_t data = *((uint32_t*) 0x08000000);

Da war jemand schneller als ich, ich hab das gerade ausprobiert (und 
codiert):
1
void sendbyte(uint8_t ch)
2
{
3
  // hier muss die Sendefunktion implementiert werden, an
4
  // die ein Byte gesendet wird
5
}
6

7
void sendownflash(void)
8
{
9
  uint32_t  *flashmem = (uint32_t*)0x8000000;       // einen Zeiger auf die Flashspeicheradresse setzen
10
                                                    // bei STM32 IMHO ist das eben 0x8000000
11
  uint8_t   b;
12
  int       adr;
13
  int       fl_len = 0xffff;                        // 64 kByte
14

15
  for (adr= 0; adr< fl_len+1; adr++)
16
  {
17
     b= (*flashmem >> 24) & 0xff;
18
     sendbyte(b);
19
     b= (*flashmem >> 16) & 0xff;
20
     sendbyte(b);
21
     b= (*flashmem >> 8) & 0xff;
22
     sendbyte(b);
23
     b= *flashmem & 0xff ;
24
     sendbyte(b);
25
     flashmem++;
26
  }
27
}

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