EEPROM-programowanie
 Masz problem? Zapytaj na forum elektroda.pl z bramk± pl.misc.elektronika! 
    From: Piotr Solecki <solpe_at_nospam_polbox.com>
 Subject: EEPROM-programowanie
 Date: Thu, 10 Sep 1998 20:18:36 GMT
 
 Interesuje mnie zapis i czytanie EEPROMU (24c02) z szeregowa transmisja
 danych.Prosil bym o informacje lub gdzie takowom moge zdobyc.
   From: "Juliusz" <juliusz_at_nospam_wyscigi.multi-ip.com.pl>
 Subject: Re: EEPROM-programowanie
 Date: Thu, 10 Sep 1998 21:09:41 GMT
 
 Piotr Solecki wrote in message <35F832EF.1A1153D9_at_nospam_polbox.com>...
  Interesuje mnie zapis i czytanie EEPROMU (24c02) z szeregowa transmisja
 danych.Prosil bym o informacje lub gdzie takowom moge zdobyc.
 
 Klopotu nie widze - to jest I2C. Mam swoje biblioteki na 51-ke
 Juliusz
   From: Marek Tarnowski <taunus_at_nospam_zt.krakow.tpsa.pl>
 Subject: Re: EEPROM-programowanie
 Date: Fri, 11 Sep 1998 05:22:33 GMT
 
 Piotr Solecki wrote:
  Interesuje mnie zapis i czytanie EEPROMU (24c02) z szeregowa transmisja
 danych.Prosil bym o informacje lub gdzie takowom moge zdobyc.
 
 Zobacz:
 http://www.euatmel.ac.psiweb.com/atmel/products/prod72.htm
 Pozdrawiam
 Marek Tarnowski
   From: Piotr Solecki <solpe_at_nospam_polbox.com>
 Subject: Re: EEPROM-programowanie
 Date: Fri, 11 Sep 1998 15:16:47 GMT
 
 Dzieki za ciekawa strone, jesli znasz jeszcze jakies o 51-ce to chetnie bym
 zerknol
 Marek Tarnowski wrote:
  Piotr Solecki wrote:
  Interesuje mnie zapis i czytanie EEPROMU (24c02) z szeregowa transmisja
 danych.Prosil bym o informacje lub gdzie takowom moge zdobyc.
 
 Zobacz:
 http://www.euatmel.ac.psiweb.com/atmel/products/prod72.htm
 Pozdrawiam
 Marek Tarnowski
 
   From: "Juliusz" <juliusz_at_nospam_wyscigi.multi-ip.com.pl>
 Subject: Re: EEPROM-programowanie
 Date: Fri, 11 Sep 1998 22:09:36 GMT
 
    Interesuje mnie zapis i czytanie EEPROMU (24c02) z szeregowa transmisja
 danych.Prosil bym o informacje lub gdzie takowom moge zdobyc.
 
 
 
 ;  ***************************************************
 ;  ******************* I2C BY JULIUSZ  *********
 ;  ***************************************************
 X24C04_WR equ 10100000b
 X24C04_RD equ 10100001b
 ;SCLHigh: setb SCL ;Set SCL from our end.
 ; jnb SCL,$ ;Wait for pin to actually go high.
 ; ret
 ;  ***************************************************
 ; Warunek START dla rozpoczecia transmicji po I2C
 ; Zweryfikowano
 I2C_START: setb SCL
 setb SDA
 call I2C_TIMING
 clr SDA
 call I2C_TIMING
 clr SCL
 call I2C_TIMING ;?
 ret
 ;  ***************************************************
 ; Warunek STOP dla konca transmicji I2C
 ; Werifird le inaczej niz K
 I2C_STOP: clr SDA
 ; call SCLHigh ; UWAGA
 setb SCL ; TUUUUUU
 call I2C_TIMING
 setb SDA
 call I2C_TIMING
 ret
 ;  ***************************************************
 ; Wyslanie bajtu z akumulatora w i2c poprzez obroty  *
 ; Nie potrzeba ustalac C bo nie krecimy do okola ale 8 razy i koniec
 ; Verified
 SEND_BYTE: mov R2,#08h
 SEND_LOOP: rlc A
 mov SDA,C
 ; call SCLHigh; TUUUUU
 setb SCL; TUUUUU
 call I2C_TIMING
 clr SCL
 call I2C_TIMING
 djnz R2,SEND_LOOP
 ret
 ;  ***************************************************
 ; czytanie bajtu z I2C poprzez akumulator
 ; Verified ?
 READ_BYTE: mov R2,#08h
 READ_LOOP:
 ; call SCLHigh; TUUUUUUUUUUU
 setb SCL; TUUUUUUU
 call I2C_TIMING
 mov C,SDA
 rlc A
 clr SCL
 call I2C_TIMING
 djnz R2,READ_LOOP
 ret
 ;  ***************************************************
 ; NO ACK
 NO_ACK:
 ; call SCLHigh; TUUUUUUUU
 setb SCL
 call I2C_TIMING
 clr SCL
 setb SDA
 call I2C_TIMING
 ret
 ;  ***************************************************
 ; Czekaj na ACK
 ; brak ACK >> 1 > I2C_ERR
 REC_ACK: setb SDA
 ; call SCLHigh; TUUUUUUUUUUUUUUU
 setb SCL; TUUUUUUUUU
 call I2C_TIMING
 mov R3,#020h
 ACK_LOOP: jnb SDA,REC_ACK_OK
 djnz R3,ACK_LOOP
 setb I2C_ERR
 REC_ACK_OK: clr SCL
 call I2C_TIMING
 ret
 ;  ***************************************************
 ; Zapis bajtu kompletnego z adresami w EEPROM i sprzetowym
 I2C_BYTE_WRITE: clr I2C_ERR
 mov A,#X24C04_WR
 call I2C_START
 call SEND_BYTE
 call REC_ACK
 jb I2C_ERR,L_PAGE_BYTE
 mov A,R1 ;Adres gdzie zapisac
 call SEND_BYTE
 call REC_ACK
 jb I2C_ERR,L_PAGE_BYTE
 mov A,_at_nospam_R0 ;Dane
 call SEND_BYTE
 call REC_ACK
 L_PAGE_BYTE: call I2C_STOP
 clr A
 pcf_pierdol: nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 call I2C_TIMING
 djnz ACC,pcf_pierdol
 PAGE_END: ret
 ;  ***************************************************
 ; odczyt kompletnego bajtu z EEPROM
 ; I2C_ERR=1 blad ACK
 I2C_BYTE_READ: clr I2C_ERR
 mov A,#X24C04_WR
 call I2C_START
 call SEND_BYTE
 call REC_ACK
 jb I2C_ERR,K_PAGE_BYTE
 mov A,R1
 call SEND_BYTE
 call REC_ACK
 jb I2C_ERR,K_PAGE_BYTE
 call I2C_START
 mov A,#X24C04_RD
 call SEND_BYTE
 call REC_ACK
 jb I2C_ERR,K_PAGE_BYTE
 call READ_BYTE
 mov _at_nospam_R0,A
 call NO_ACK
 K_PAGE_BYTE: call I2C_STOP
 clr A
 pcf_pierdol1: nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 call I2C_TIMING
 djnz ACC,pcf_pierdol1
 READ_END: ret
 ;  ***********************************************
 ; Porcedura odpowiedzialna za taktowanie SCL - zmniejszanie szybkosci
 ; transmicji do i z EEPROM-u !!!
 I2C_TIMING: cpl WDGI
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 nop
 ret
 ; =================================================
   From: Piotr Solecki <solpe_at_nospam_polbox.com>
 Subject: Re: EEPROM-programowanie
 Date: Sun, 13 Sep 1998 16:07:25 GMT
 
 Dzieki za przejzysty listing , lecz mam pytanie czy nie brakuje deklaracji do :
 I2C_err
 Wdgi
   From: "Juliusz" <juliusz_at_nospam_wyscigi.multi-ip.com.pl>
 Subject: Re: EEPROM-programowanie
 Date: Sun, 13 Sep 1998 16:16:12 GMT
 
 Piotr Solecki wrote in message <35FBEC7F.CBB055AD_at_nospam_polbox.com>...
  Dzieki za przejzysty listing , lecz mam pytanie czy nie brakuje deklaracji
 
 do :
  I2C_err
 Wdgi
 
 WDGI - to wywal - to moja obsluga watchdoga - zapomnij o tym a
 I2C_err to sobie jakis bit zadeklaruj - nadaj mu taka wlasnie nazwe i tyle
 Timingi sa dla kwarcu 20MHz i nieco podlych pamieci co nie chcialy sie
 zapisywac bez odczekania kilkuset cykli po poprzednim zapisie. Odpal tak jak
 jest a pozniej przyspiesz wywalajac te nop-y
 Juliusz
   From: "MAJER" <majerp_at_nospam_kki.net.pl>
 Subject: Re: EEPROM-programowanie
 Date: Fri, 11 Sep 1998 15:29:07 GMT
 
 Sprzedam ci tani programator
 majerp_at_nospam_kki.net.pl
 Piotr Solecki napisał(a) w wiadomości: <35F832EF.1A1153D9_at_nospam_polbox.com>...
  Interesuje mnie zapis i czytanie EEPROMU (24c02) z szeregowa transmisja
 danych.Prosil bym o informacje lub gdzie takowom moge zdobyc.
 
   From: "Tomekk" <tkozak_at_nospam_polbox.com>
 Subject: Re: EEPROM-programowanie
 Date: Sat, 12 Sep 1998 11:20:19 GMT
 
 Mam programator szeregowych eepromow zI2C.
 Jesli jestes zainteresowany moge sprzedac - cena 65 zl.
 Tomek.
 Piotr Solecki <solpe_at_nospam_polbox.com> napisał(a) w artykule
 <35F832EF.1A1153D9_at_nospam_polbox.com>...
  Interesuje mnie zapis i czytanie EEPROMU (24c02) z szeregowa transmisja
 danych.Prosil bym o informacje lub gdzie takowom moge zdobyc.