Witam.
Mam taki problem. Zaprojektowałem układ, w którym Atmega16 obsługuje 3 urządzenia poprzez magistralę i2c, wyświetlacz LCD 2x40, RS232 oraz klawiaturkę membranową 4x4. Wszystko śmiga jak należy. Problem pojawia się tylko, gdy chcę dołożyć obsługę karty SD. Po samym dołączeniu potrzebnych kodów umożliwiających komunikację z kartą SD zajęte jest 96% pamięci flash atmegi i nie wiem dlaczego pojawiają się krzaki na wyświetlaczu, rs nie działa jak należy i podczas komunikacji i2c również występują błędy. Gdy odłączę pliki wszystko wraca do normy.
Czy winą może być nadmierne przeciążenie atmegi? Czy błędy te mogą być spowodowane zbyt małym rozmiarem pamięci SRAM? Dodam, że oprócz samego dołączenia plików NIE wprowadzam żadnych zmian w kodzie. Czy zastosowanie Atmega32 mogłoby rozwiązać problem? Bardzo proszę o pomoc.
Z góry dziękuję.
Mam taki problem. Zaprojektowałem układ, w którym Atmega16 obsługuje 3 urządzenia poprzez magistralę i2c, wyświetlacz LCD 2x40, RS232 oraz klawiaturkę membranową 4x4. Wszystko śmiga jak należy. Problem pojawia się tylko, gdy chcę dołożyć obsługę karty SD. Po samym dołączeniu potrzebnych kodów umożliwiających komunikację z kartą SD zajęte jest 96% pamięci flash atmegi i nie wiem dlaczego pojawiają się krzaki na wyświetlaczu, rs nie działa jak należy i podczas komunikacji i2c również występują błędy. Gdy odłączę pliki wszystko wraca do normy.
Czy winą może być nadmierne przeciążenie atmegi? Czy błędy te mogą być spowodowane zbyt małym rozmiarem pamięci SRAM? Dodam, że oprócz samego dołączenia plików NIE wprowadzam żadnych zmian w kodzie. Czy zastosowanie Atmega32 mogłoby rozwiązać problem? Bardzo proszę o pomoc.
Z góry dziękuję.