Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 17 mar 2025, o 05:57


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
    Autor Wiadomość
     Tytuł: 24c16 - odczyt
    PostNapisane: 9 sie 2015, o 12:49 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Witam serdecznie!
    Bawię się z kością EEpromu 24c16 Atmela. Załadowałem do kości trochę danych (wycinek):
    https://obrazkiforum.atnel.pl/4804/db84e637b92cb925f9b9746dfaebad56.PNG

    Gdy próbuje odczytać dane z adresu 16 i długości 7 dostaję "KWIATEK", adres 32 i długość 7 dostaję "PUDELKO". Idąc tym tropem, gdy próbuję odczytać z adresu 272 i długości 9 powinienem dostać "TROLOLOLO", ale dostaje "KWIATEK" i dwa puste znaki. Kiedy poproszę o dane z adresu 256 dostaje swoje imię.

    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Cóż na to poradzić? Z góry dziękuję wszystkim za pomoc.

    _________________
    :)



    Ostatnio edytowano 9 sie 2015, o 14:42 przez ShutDownSystem, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 sie 2015, o 13:28 
    Offline
    Użytkownik

    Dołączył(a): 24 kwi 2013
    Posty: 454
    Pomógł: 30

    Gdzieś ucina pierwszy bajt adresu i z 272, robi się 10, albo powyżej 256 trzeba jakoś inaczej adresować.
    Nie bawiłem się tym.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 sie 2015, o 15:26 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Nigdy nie można się poddawać i przejrzeć wszystko jeszcze od nowa :D

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 sie 2015, o 20:41 
    Offline
    Użytkownik

    Dołączył(a): 01 sty 2014
    Posty: 116
    Pomógł: 14

    Działa czy nie działa??

    Bardzo dziwnie wysyłasz adres?
    Możesz wytłumaczyć o co dokładnie chodzi w tej lini?
    ShutDownSystem napisał(a):
    TWI_write( device | ((subAddr>>8)<<1) );



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 sie 2015, o 22:20 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 15 cze 2014
    Posty: 76
    Pomógł: 10

    Tak, działa. Już tłumaczę panie kolego. Otóż jak wiadomo układ 24c16 to tak naprawdę kilka kości EEP w jednym scalaku. Gdybyśmy chcieli się odwołać do adresu komórki pamięci dec 340, czyli binarnie 101010100 przekroczymy 8bitowy adres o 1 bit. Dlatego aby odwołać się do tego adresu komórki musimy zapisać te 'wystające' bity do adresu scalaka ( 1010xxx0 ) , w miejsce x. W tej części (subAddr>>8), 101010100 przesuniemy o 8 , czyli zostanie nam 000000001. Teraz wystarczy przesunąć to znów o 1, do 000000010. Teraz gdy wykonamy operacje OR - 1010xxx0 | 000000010 = 10100010 otrzymamy adres jednej z wielu kości w tym scalaku. Jak wiadomo z noty, bit R w adresie scalaczka 1010xxxR oznacza tryb READ lub WRITE. W późniejszej linijce dodajemy do adresu 1, aby ustawić ten bit na 1, by dać wygnał kości, że będzie odczyt.

    Mam nadzieję, że jest to choć trochę zrozumiałe. Polecam wziąć kawałek kartki i sobie po kolei rozrysować wszystkie operacje. Szybciej się da zrozumieć.

    Polecam do lektury: Klik

    _________________
    :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 10 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO