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?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.