Forum: PC Hard- und Software Messwerte zwischenspeichern Größe berechnen


von Tom (Gast)


Lesenswert?

Hallo,

es sollen Messdaten

Sekunden: 10000
Temperatur 10.8
Spannung 12.3

in einem Array zwischengespeichert werden bevor sie verschickt werden 
über ein Funkmodul.
Momentan werden die Daten direkt nach Aufnahme übertragen. Ich möchte 
nun erst nach der 50. Aufnahme übertragen und als Zwischenspeicher den 
Ram ddes atmega328p mit Arduino IDE benutzen.


Wie lässt sich die Speichergröße berechnen?

von Teo D. (teoderix)


Lesenswert?

Tom schrieb:
> Sekunden: 10000 -> uint 16bit
> Temperatur 10.8 -> uchar 8bit
> Spannung 12.3   -> uchar 8bit

= 32bit -> 4Byte * 50 = 200Byte

Oder zB in C (Bitfeld genannt):
1
struct xyz{
2
    unsigned int sekunden_14bit : 14; // max 16384s
3
    unsigned char temp_5bit : 5;      // 0 bis 32°C
4
    unsigned char spannung_5bit : 5;  // 0 bis 32V
5
} foo_zum_senden[49];

24bit == 3Byte * 50 = 150Byte

"atmega328p mit Arduino IDE" -> Da hab ich hab NULL Plan von!-|
Angenommen -> char=8bit; int=16bit

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.