logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Płytka AVR ATMEGA-16 v2 - problem z EEPROM'em I2C

sebastianstepi 27 Lut 2010 12:45 2206 5
  • #1 7757744
    sebastianstepi
    Poziom 11  
    Witam.

    Mam taki problem - jakiś czas temu kupiłem płytkę AVR ATMEGA16 v2 w firmie Gotronik. Uczyłem się programowania tego mikrokontrolera i dotarłem do komunikacji z pamięcią EEPROM na magistrali I2C. W dokumentacji tej płytki brak konkretnego schematu podłączenia tej pamięci do wyprowadzeń na goldpinach. Nie mogłem się doprosić żadnej specyfikacji technicznej zamontowanej pamięci ani schematu połączeń. Napisałem program testujący szynę I2C i okazało się że odzywa się wyłącznie RTC. Okazało się że pamięć EEPROM posiada podciągnięcia szyny I2C, ale... brak fizycznego podłączenia gdziekolwiek dalej. Gdy podlączyłem układ TWI do wyprowadzeń SCL i SDA to mikrokontroler uzyskał dostęp do pamięci i potwierdził kolejne adresy stron pamięci. Dalej okazało się że goldpiny oznaczone A0, A1 i A2 są do niczego nie przydatne, ponieważ zamontowano pamięć typu FM24C16 zamiast AT24C164. Pamięć FM24C16 nie ma programowalnych górnych bitów adresu magistrali, a piny 1,2 i 3 tego układu nie są wewnętrznie podłączone. Z tego względu występuje stały konflikt adresowy jednej ze stron pamięci a układem RTC.
    Pisałem o tym do firmy Gotronik 4 razy w styczniu i 2 razy w poprzednim roku. Odpowiedzieli mi raz, że oni sprzedają te układy a nie je produkują. Prosiłem ich o zaproponowanie rozwiązania tego problemu, ale widać nie interesuje ich ten temat.

    Nie odradzam nikomu firmy Gotronik, ale radzę zastanowić się przed zakupem ich układów.

    Mam pytanie na koniec - czy któryś z kolegów trafił na płytkę z opisanym defektem?
  • #2 7758384
    tmf
    VIP Zasłużony dla elektroda
    To chyba najprosciej wymienic pamiec EEPROM na inna. Swoja droga pewnie dlatego fabrycznie nie jest ona podlaczona - wybierasz sobie albo RTC, albo pamiec. Jakiego rozwiazania sie spodziewasz?
  • #3 7758719
    sebastianstepi
    Poziom 11  
    Jestem ciekaw czy ktoś spotkał się z takim problemem i z milczeniem ze strony tej firmy.

    Nabywając tą płytkę czytałem kilka razy opis i instrukcję, i nie było wzmianki że trzeba coś sobie samemu lutować. Wyprowadzenie pinów A0, A1 i A2 świadczy że miała być tam inna pamięć, której adres można ustawić tak aby uniknąć kolizji z RTC.
  • #4 7759601
    tmf
    VIP Zasłużony dla elektroda
    Nie chce bronic tej firmy, ale to jest plyta rozwojowa, uklad polaczen zalezy od uzytkownika, wiec czego sie spodziewales? Naprawde nie rozumiem problemu. A0-A2 sa wyprowadzone bo pamieci I2C maja generycznie takie piny, czesc ma wykorzystane, a czesc nie. O niczym to nie musi swiadczyc. Calosc wyglada na calkiem fajny zestaw. Jesli masz konflikt to podlacz istniejaca pamiec pod inne piny na ktorych programowo zasymulujesz I2C. Albo jak pisalem wymien ja na inna. Tak to juz jest wsrod urzadzen I2C, ze czasami sa konflikty - gratis nauczyles sie zwracac na to uwage przy projektowaniu wlasnych ukladow wykorzystujacych I2C :)
  • #5 10380661
    Fedaykin86
    Poziom 1  
    Kolega który zakupił też tą płytę rozwojową miał problemy również poza eeprom z konwerterem USB-RS232

    Niestety ze swojego doświadczenia wiem że firma jest nierzetelna poza trudnościami z kontaktem (mailowym, telefonicznym) występują notoryczne problemy z samą realizacją zamówienia
  • #6 10833717
    sebastianstepi
    Poziom 11  
    Minęło troche czasu, ale wróce do tematu.
    Płytka jest rozwojowa, ale nie wszystkie połączenia na niej zależą od użytkownika - część płytki z układami I2C została po prostu źle zaprojektowana i wykonana. Układ RTC jest podłączony do goldpinów SCL i SDA ale nie jest podciągnięty do napięcia zasilania przez rezystory, a EEPROM ma podciągnięte linie do plusa zasilania, ale dalej brak połączenia do goldpinów SCL i SDA. Tego nie da się poprostu połączyć drucikami dostarczonymi w zestawie. Jest to ewidentny błąd producenta.
    Jeśli w zestawie jest zestaw goldpinów do ustawienia adresu I2C, to powinna być zamontowana prawidłowa pamięć, która daje możliwość wykorzystania tego, albo powinna być umieszczona informacja w specyfikacji o możliwości zmian układu scalonego na inny.
    Widziałem na Allegro te same płytki z nieco nowszą wersją AVRa i zmienionymi potencjometrami. Ciekawe czy poprawili błąd który tu opisałem. Mieli na to 3 lata i kilka moich mail.
REKLAMA