Korzystam z kontrolera TM4C1230C3PMI z instrumentu Texas w jednym z moich projektów. Ma 32 KB wewnętrznej pamięci flash, co nie jest wystarczające dla mojej aplikacji. Na rynku dostępne są mikrokontrolery o wyższej wielkości pamięci flash, których można używać, ale chcę korzystać tylko z tego mikrokontrolera. Zgodnie z moją wiedzą zewnętrzną pamięć EEPROM można wykorzystać do zwiększenia całkowitego rozmiaru pamięci flash (pamięć programu).
Czy moje myślenie jest prawidłowe?
Jeśli nie, proszę zasugerować, jak mogę zwiększyć całkowity rozmiar pamięci flash kontrolera?
microcontroller
programming
memory
flash
eeprom
Sanjeev Kumar
źródło
źródło
Odpowiedzi:
Nie można rozszerzyć pamięci programu (flash). TI produkuje ten sam układ z podwójną pamięcią flash i pamięcią RAM, ale nic innego się nie zmieniło: TM4C1230D5PMI .
Jeśli nie możesz użyć układu z większą pamięcią flash, musisz zmniejszyć rozmiar kodu:
printf
funkcja. A,printf
który obsługuje dane zmiennoprzecinkowe, zwykle spowoduje powrót do około 5 KB-10 KB.-Os
.-flto
. Musisz przejść-flto
do etapu kompilacji i odsyłacza, dla wszystkich plików. Zwykle zmniejsza to rozmiar produkowanego kodu o 30% -50%.źródło
Możesz uzyskać najmniejszy ślad oprogramowania, używając asemblera i języka podobnego do Fortha, zaprojektowanego do Twoich celów. Kolejnym jest skompresowany kod maszynowy, jeśli jest dużo prawie identyczny kod.
źródło