Éppen átestem az összes kódomon. Maximálisan 60 bájtot használok. Mindent megtettem annak érdekében, hogy minimalizálja a használatát - még a booleant is bitként tárolom, nem bájtként! Mi történhet itt?
Csak a rendkívül nagy tömbök jutnak eszembe, például:
const uint8_t SBoxes [8] [4] [16 ] PROGMEM;
Ezeket azonban a program memóriájában tároljuk, amint láthatja. Hogyan ellenőrizhetem, hogy valóban vannak-e, és a memóriahasználatom? A kódom túl nagy ahhoz, hogy ide tegyem.
SZERKESZTÉS:
Az IDE elmondja nekem (bár úgy gondolom, hogy nagyon pontatlan):
Vázlat 7898 bájt (24%) program tárhelyet használ fel. Maximum 32 256 bájt. A globális változók 1023 bájtot (49%) használnak a dinamikus memóriából, 1025 bájtot hagyva a helyi változókra. A maximális érték 2048 bájt.
Az összes szó szerinti karakterláncom F () -t használ, és nem sok van belőlük.
EDIT2:
Kód a megfigyelőn. Csak egy rövid áttekintésre, valóban nagy.
EDIT3:
Saját soros
nyomatok
readysome számok (ez rendben van, megkérem, hogy nyomtasson ki egy tömböt) ENreadyainain numbursEnready ...
Megkérem, hogy nyomtasson ready
a programom legelején. Megkérem, hogy nyomtassa ki a setup
funkcióm vége felé a println encr végét
, de amint látja, soha nem fejezi be a nyomtatást.
Mindig viselkedik mint amikor elfogy az SRAM.