Chciałbym na moim leciwym CA80 (z procesorem Z80 i portem 8255) wykorzystać EEPROM 24LC16 jako pamięć podręczną na pisane programy. Przesyłanie danych wg I2C. Linie SDA i SCL podciągnięte do +5V poprzez rezystory 4,7 k. Program napisany w asemblerze Z80 niestety nie działa, wszystkie odczyty są równe 0. Linią SDA podłączona do PA0, linia SCL do PC4. Po ustawieniu portu PA / SDA/ na odczyt, pojawia się stan wysoki (rezystory podciągające). Nie znam na tyle angielskiego, aby z noty katalogowej 24LC16 wyciągnąć słuszne wnioski. Bazowałem na tym, co znalazłem w necie i na forach.
Czy mógłby mi ktoś podpowiedzieć, gdzie robię błąd ? (pamięć pod IC-PROG działa).
W skrócie procedura wygląda tak:
- start
- wpisz adres EEPROM (A0)
- wpisz adres komórki w EEPROM (01, druga komórka?)
- start
- wpisz adres EEPROM (A1) - odczyt
- czytaj bajty
- stop
Próbowałem też po starcie wysłać A1 i odczytywać pamięć ale wynik daje też 0.
Za każdą poradę będę wdzięczny.
Kod (asembler Z80):
Poprawiono prezentację składniową kodu, LordBlick
Czy mógłby mi ktoś podpowiedzieć, gdzie robię błąd ? (pamięć pod IC-PROG działa).
W skrócie procedura wygląda tak:
- start
- wpisz adres EEPROM (A0)
- wpisz adres komórki w EEPROM (01, druga komórka?)
- start
- wpisz adres EEPROM (A1) - odczyt
- czytaj bajty
- stop
Próbowałem też po starcie wysłać A1 i odczytywać pamięć ale wynik daje też 0.
Za każdą poradę będę wdzięczny.
Kod (asembler Z80):
Kod: text
Poprawiono prezentację składniową kodu, LordBlick