roz Napisano 17 lutego Udostępnij Napisano 17 lutego Hej. Cytat 4-Kbit ferroelectric random access memory (F-RAM) logically organized as 512 × 8 To z noty katalogowej do FM24C04B. Jak rozumieć zapis 512 x 8? Osiem stron po 512 bajtów na każdej stronie? Dziękuję. Link do komentarza Share on other sites More sharing options...
ethanak 17 lutego Udostępnij 17 lutego 1 minutę temu, roz napisał: Jak rozumieć zapis 512 x 8? 512 * 8 bitów 1 Link do komentarza Share on other sites More sharing options...
roz 18 lutego Autor tematu Udostępnij 18 lutego @ethanak ok, ale nie rozumiem nadal.. Cytat When accessing the FM24C04B, the user addresses 512 locations of eight data bits each. These eight data bits are shifted in or out serially. The addresses are accessed using the I2C protocol, which includes a slave address (to distinguish other non-memory devices), a page address bit, and a word address. The word address consists of 8-bits that specify one of the 256 addresses. The page address is 1-bit and so there are 2 pages of 256 locations. The complete address of 9-bits specifies each byte address uniquely. Czyli w sytuacji gdy robię zapis: framSet.writeByte(0, X, data); //0 - strona, X - adres, data - dane do zapisu wiedząc, że jeden bajt to 8 bitów i jedna strona to 256 adresów, to na jednej stronie mogę zapisać 32 bajty? Nie potrafię w wyobrażenie tego. Link do komentarza Share on other sites More sharing options...
H1M4W4R1 18 lutego Udostępnij 18 lutego (edytowany) 5 minut temu, roz napisał: Czyli w sytuacji gdy robię zapis: framSet.writeByte(0, X, data); //0 - strona, X - adres, data - dane do zapisu wiedząc, że jeden bajt to 8 bitów i jedna strona to 256 adresów, to na jednej stronie mogę zapisać 32 bajty? Nie potrafię w wyobrażenie tego. Jedna strona to 256 adresów, a każdy adres zawiera 1B. Masz wiec 2 strony, każda po 256B, co daje 512B - 4Kib Wielkość B ma znaczenie 😉 Poza tym dostęp do konkretnego bitu w pamięci nie ma sensu, bo układy i tak maja przynajmniej 8-bitowy osprzęt obliczeniowy. Edytowano 18 lutego przez H1M4W4R1 1 Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay
roz 18 lutego Autor tematu Udostępnij 18 lutego @H1M4W4R1 No powiedzmy, że rozświetlasz. Czyli zapisując bool do powyższej pamięci i tak przepada jeden bajt, tak? framSet.writeByte(0, 0, BOOL); //jeden bajt zajęty framSet.writeByte(0, 1, BYTE); //też jeden bajt zajęty framSet.writeByte(0, 2, INTEGER); //zajmie tyle, ile maksymalnie może pomieścić integer czy tyle, ile cyfr zapisuję? I w przypadku integera, skąd wiem, która komórka następna może zostać zajęta nie uszkadzając danych od integera? Wiem, przedszkole jakby 😉 Link do komentarza Share on other sites More sharing options...
ethanak 18 lutego Udostępnij 18 lutego Zacznijmy od tego, że FRAM to nie EEPROM. Przy EEPROM-ie po zapisie strony musisz odczekać 5 msec (to robi biblioteka i nie musisz się o to martwić). Tu tego nie ma. Tak samo jak nie musisz trzymać się adresowania w obrębie strony. Link do komentarza Share on other sites More sharing options...
H1M4W4R1 18 lutego Udostępnij 18 lutego 1 godzinę temu, roz napisał: framSet.writeByte(0, 2, INTEGER); //zajmie tyle, ile maksymalnie może pomieścić integer czy tyle, ile cyfr zapisuję? Nazwa metody jest dokumentacją - ta metoda zapisuje tylko jeden bajt. W przypadku chęci zapisania integer'a najpewniej jest metoda typu writeData albo coś podobnego (nie wiem z jakiej biblioteki korzystasz). 1 Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »