Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Не работают подтягивающие резисторы TWI
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
SMaster
Контроллер ATMega32, PUD = 0.

Код
PORTC = (1<<PC0) | (1<<PC1);
DDRC  = (1<<DDC0) | (1<<DDC1); // Для проверки. Здесь резисторы включаются, на выводах 1
TWCR = 1<<TWEN; // Резисторы выключились :(


По мануалу все должно работать. Есть соображения?
Палыч
Цитата(SMaster @ Nov 14 2008, 07:21) *
По мануалу все должно работать. Есть соображения?
А, разве на рисунке в DS не нарисованы внешние pull-up резисторы?
Ivan A-R
Внешние резисторы надо ставить на подтяг. В обязательном порядке.

Палыч верно говорит, внимательно читаем DS
SMaster
Из даташита:
Цитата
Note that the internal pullups in the AVR pads can be enabled by setting the PORT bits corresponding to the SCL and SDA pins, as explained in the I/O Port section. The internal pull-ups can in some systems eliminate the need for external ones.
mempfis_
Цитата(SMaster @ Nov 14 2008, 11:47) *
Из даташита:


Но всёравно встроенных бывает недостаточно. На м8535 долго боролись с TWI пока не поставили внешние резисторы.
aaarrr
Цитата(SMaster @ Nov 14 2008, 07:21) *
Код
PORTC = (1<<PC0) | (1<<PC1);
DDRC  = (1<<DDC0) | (1<<DDC1); // Для проверки. Здесь резисторы включаются, на выводах 1

Здесь не резисторы включаются, а вывод в '1' переводится.

Цитата(SMaster @ Nov 14 2008, 07:21) *
По мануалу все должно работать. Есть соображения?

Снаружи-то что подключено?

Цитата(SMaster @ Nov 14 2008, 10:47) *
Из даташита:

In some systems - это с частотой I2C 10kHz и необязательной надежностью.
pavel-pervomaysk
Наверное 2 резистора стоят дороже чем время потраченное свое ... smile.gif
demiurg_spb
Цитата(aaarrr @ Nov 14 2008, 10:55) *
In some systems - это с частотой I2C 10kHz и необязательной надежностью.
Откуда такие данные? (просто интересуюсь).


Цитата(Павлик @ Nov 14 2008, 11:17) *
Наверное 2 резистора стоят дороже чем время потраченное свое ... smile.gif
Если система прекрасно работает с внутренними pullup'ами, то для чего городить огород?
aaarrr
Цитата(demiurg_spb @ Nov 14 2008, 12:09) *
Откуда такие данные? (просто интересуюсь).

Из раздела Electrical Characteristics DS: I/O Pin Pull-up Resistor 20-100 kΩ.
Со 100kΩ подтяжкой разогнаться трудно.

Цитата(demiurg_spb @ Nov 14 2008, 12:09) *
Если система прекрасно работает с внутренними pullup'ами, то для чего городить огород?

Хотя бы для соответствия спецификации I2C. И прекрасно работать оно не может, а может только на низкой скорости в определенном температурном диапазоне и т.д.
Nixon
400kHz - 2k pull-up
100kHz - 10k pull-up
SMaster
Цитата(demiurg_spb @ Nov 14 2008, 16:09) *
Откуда такие данные? (просто интересуюсь).
Если система прекрасно работает с внутренними pullup'ами, то для чего городить огород?


Согласен. Поэтому и хотел их подключить.
demiurg_spb
Цитата(aaarrr @ Nov 14 2008, 12:39) *
Из раздела Electrical Characteristics DS: I/O Pin Pull-up Resistor 20-100 kΩ.
Со 100kΩ подтяжкой разогнаться трудно.
Хотя бы для соответствия спецификации I2C. И прекрасно работать оно не может, а может только на низкой скорости в определенном температурном диапазоне и т.д.
Спасибо, Вашу мысль понял. Если используется всего 1-2 низкоскоростных девайса (датчики комнатной температуры) на коротких линях связи, то возможно обойтись и без дополнительной обвески...
Сергей Борщ
Цитата(demiurg_spb @ Nov 14 2008, 14:40) *
Если используется всего 1-2 низкоскоростных девайса (датчики комнатной температуры) на коротких линях связи, то возможно обойтись и без дополнительной обвески...
Как говорится, "если вас не интересует результат".
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.