eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaAVR ATMEGA8 i2c moze ktos wyjasnic niejasnosc?AVR ATMEGA8 i2c moze ktos wyjasnic niejasnosc?
  • Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mail
    From: "roxy" <k...@o...pl>
    Newsgroups: pl.misc.elektronika
    Subject: AVR ATMEGA8 i2c moze ktos wyjasnic niejasnosc?
    Date: Fri, 25 Sep 2009 17:39:13 +0200
    Organization: http://onet.pl
    Lines: 58
    Message-ID: <h9io71$vme$1@news.onet.pl>
    NNTP-Posting-Host: 91.192.144.94
    X-Trace: news.onet.pl 1253893153 32462 91.192.144.94 (25 Sep 2009 15:39:13 GMT)
    X-Complaints-To: n...@o...pl
    NNTP-Posting-Date: Fri, 25 Sep 2009 15:39:13 +0000 (UTC)
    X-Priority: 3
    X-MSMail-Priority: Normal
    X-Newsreader: Microsoft Outlook Express 6.00.2900.5843
    X-RFC2646: Format=Flowed; Original
    X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579
    X-EsetScannerBuild: 5721
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:572001
    [ ukryj nagłówki ]

    Mam pytanie: czy na zamieszczonym ponizej fragmencie programu zasada
    generowania sygnalu potwierdzenia ACK jest taka ze po odebraniu wlasnego
    adresu uklad sleve generuje ACK po napotkaniu polecenia:

    "TWCR|=(1<<TWEA)|(1<<TWINT); // potwierdza to wygenerowaniem do mastera
    syg ACK"

    czy może zasada jest taka że slave odbiera swoj adres automatycznie generuje
    ACK a dzialanie polecenia:
    "TWCR|=(1<<TWEA)|(1<<TWINT); // potwierdza to wygenerowaniem do mastera
    syg ACK"
    jest takie aby po odebraniu nastepnego bajtu (ktory przychodzi po adresie)
    wygenerować ACK.

    sadze ze jasno sie wyrazilem.


    Oto fragment funkcji obslugi przerwan od twi
    ISR(TWI_vect)
    {
    switch (TW_STATUS) // sprawdzam status twi po zgloszeniu
    przerwania
    {
    case TW_BUS_ERROR: // blad na magistrali TWI - nieprawidlowy
    sygnal stopu/startu
    {
    TWCR|=(1<<TWSTO)|(1<<TWINT); // jezeli wystapil blad na mag.
    twi to ustaw SCL i SDA w HIZ

    break;
    }
    case TW_SR_SLA_ACK: // slave zostal wywolany przez odbior
    wlasnego adresu
    {
    TWCR|=(1<<TWEA)|(1<<TWINT); // potwierdza to
    wygenerowaniem do mastera syg ACK
    break;
    }
    ..... .
    ......
    ...

    } //end switch

    }




    __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow
    4457 (20090925) __________

    Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus.

    http://www.eset.pl lub http://www.eset.com




Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: