Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.
  • #1
    mikmas
    Level 18  
    Próbuję zapisać coś do tej pamięci za pomocą pic16f84. Niestety zapisuje tylko pierwsze 32B. Dlaczego?

    PS. Żeby nie było, że nie szukałem: tak, szukałem :)
  • #2
    elektryk
    Level 42  
    A podajesz adres do zapisania danych?
  • #3
    mikmas
    Level 18  
    Nie wiem, picbasic za mnie to (chyba) robi
    DEVICE 16F84A
    DECLARE SCL_PIN=PORTB.2
    DECLARE SDA_PIN=PORTB.3
    DIM Loop AS WORD
    ' Transmit bytes to the I2C bus
    BSTART 				' Send a START condition
    BUSOUT %10100000 		' Target an eeprom, and send a WRITE command
    BUSOUT 0 			' Send the HIGHBYTE of the address
    BUSOUT 0 			' Send the LOWBYTE of the address 
    LAST=0
    FOR LOOP = 1 TO 1024
    	BUSOUT "M"		
    NEXT 				' Close the loop
    BSTOP 				' Send a STOP condition
    HIGH PORTB.6
    HIGH PORTB.4
    STOP
  • #4
    PiotrLotnik
    Level 15  
    bo po zapisie (chyba) 32 byte trzeba dać stopa i odczekac 10ms az sie dane zapisza w pamieci i dopiero wtedy mozna zapisac kolejny 32 byte.

    Popatrz w pdf.
  • #5
    mikmas
    Level 18  
    Uh, oh... to czas potrzebny na przetransferowanie 4096B zwiększa się kilka razy :|. Dzięki za pomoc!
  • #6
    elektryk
    Level 42  
    Może podpowiem sarkastycznie, ale co to za pamięć 24c32 która pracuje w trybie blokowym i ma bufor w rozmiarze 1024 bajtów?
  • #7
    mikmas
    Level 18  
    elektryk wrote:
    Może podpowiem sarkastycznie, ale co to za pamięć 24c32 która pracuje w trybie blokowym

    Nie wiem, jedyne co wiem na jej temat, to jak ją podłączyć
    elektryk wrote:
    ma bufor w rozmiarze 1024 bajtów?

    32B* :]
  • #8
    elektryk
    Level 42  
    mikmas wrote:
    elektryk wrote:
    Może podpowiem sarkastycznie, ale co to za pamięć 24c32 która pracuje w trybie blokowym
    Nie wiem, jedyne co wiem na jej temat, to jak ją podłączyć
    A kto ma więdzieć więcej jak nie Ty? Zajrzyj do specyfikacji, to będziesz wiedzieć więcej.
    mikmas wrote:
    elektryk wrote:
    ma bufor w rozmiarze 1024 bajtów?

    32B* :]
    W moim poprzedniej uwage wkradł się drobny błąd, chodziło o rozmiar bufora.
  • #9
    hunterhouse
    Level 26  
    skoro wiesz jak go podłaczyć to czemu nie czytasz noty katalogowej. przecież tam jest wszystko napisane i nawet narysowane.:D
  • #10
    mikmas
    Level 18  
    Bo z angielskim jest cienko. A ja jeszcze nie rozumiem jak oni to rozrysowują xD
    Quote:
    A kto ma więdzieć więcej jak nie Ty? Zajrzyj do specyfikacji, to będziesz wiedzieć więcej.

    Wiele osób wie więcej. Nie zaglądałem do niej, bo:
    1) jedyne, co tam jeszcze rozumiem to opis wyjść
    2) wszystko robi (chyba) za mnie picbasic.

    Temat zakończony. Spróbuję co 32B stopować, czekać 10ms, restartować, dalej przesyłać... Boże... ile to będzie trwać :|?
  • #11
    hunterhouse
    Level 26  
    ja kiedyś też potrzebowałem dużej pamięci do procka. najpierw exsperymentowałem z 24c256 ale zapisanie 4kb do tej pamięci to udęka.
    potem przeżusiłem się na karte mmc. 16Mb lub 32 dostaniesz za grosze (jak gdzies jeszcze będzie dostępna :) ) a ona jest duuuuzo szybsza. co prawda potrzeba do jej obsługi troche lepszy procek (512b buforu) ale ja ją polubiłem.
    ps. uzywałem jej do zapisywania obrazków do kolorowego wyświetlacza od noki.