I2C inaczej

To forum jest dla wszystkich pasjonatów mikrokontrolerów AVR Atmela. Wymiana doświadczeń i pomoc dla początkujących w pisaniu programów zarówno w C, Asemblerze jak i BASCOM. Zapraszam znawców tematu, aby pomogli wszystkim początkującym!
ODPOWIEDZ
Awatar użytkownika
haterkmp
Użytkownik
Posty: 652
Rejestracja: 08 sie 2008, 11:47
Lokalizacja: Wałbrzych

I2C inaczej

Post autor: haterkmp » 08 cze 2009, 6:39

jako "zielony" mam pytanie:
czy mozna w bascomie ustawić linie SDA i SCL dla I2C na innych nóżkach? np. do portu A w attiny2313? niejako programowo? bo w specyfikacji atmel podaje SDA na PB5 a SCL na PB7...

K_o_n_r_a_d
Użytkownik
Posty: 123
Rejestracja: 29 lip 2005, 10:21
Lokalizacja: Lublin

Post autor: K_o_n_r_a_d » 08 cze 2009, 8:19

Wykorzystując programowe I2C można zmienić dowolnie.
Jak... zajrzyj do pomocy.

Awatar użytkownika
Ertew
Użytkownik
Posty: 1418
Rejestracja: 03 lip 2005, 10:36
Lokalizacja: Leszno
Kontakt:

Post autor: Ertew » 08 cze 2009, 15:11

Dla mikroprocesorów AVR są dwie możliwości.
Użycie sprzętowego interfejsu przypisanego do odpowiednich pinów zapewni komunikacje przy małym obciążeniu procesora (przesyłanie bitów w trakcie innych operacji), warunkiem jest posiadanie odpowiednich peryferiów.
Użycie interfejsu programowego przypisanego do dowolnych pinów (a czasem nawet do jakiś modułów rozszerzeń) daje pełną swobodę jak np. obsługa w przerwaniach czy jednoczesna kontrola kilku magistral (wielu układów o tym samym adresie). Niestety bascom standardowo obsługuje interfejs programowy, a każde polecenia i2c wykonuje dość wolno.

Awatar użytkownika
RcTomek
Moderator
Posty: 243
Rejestracja: 27 wrz 2007, 21:15
Lokalizacja: Głogów / Wrocław

Post autor: RcTomek » 08 cze 2009, 22:55

Do obsługi sprzętowego I2C (TWI) potrzebna jest odpowiednia biblioteka, niestety nie pamiętam nazwy i tego czy jest płatna. Zajrzyj do pliku pomocy Bascom'a. Zdaje się jest tam wzmianka na ten temat.

Przy obsłudze programowej można wybrać dowolne końcówki.

Awatar użytkownika
haterkmp
Użytkownik
Posty: 652
Rejestracja: 08 sie 2008, 11:47
Lokalizacja: Wałbrzych

Post autor: haterkmp » 09 cze 2009, 5:57

dziękuję właśnie o taką odpowiedź mi chodziło. czyli jeżeli włącze sobie wewnętrzny oscylator to mogę wykorzystać PORT.A (bez resetu) w attiny2313 na I2C

Awatar użytkownika
RcTomek
Moderator
Posty: 243
Rejestracja: 27 wrz 2007, 21:15
Lokalizacja: Głogów / Wrocław

Post autor: RcTomek » 09 cze 2009, 14:03

Tak.

ODPOWIEDZ