Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: PIC16F677 && I2C
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
mungo
Кто пробовал запустить аппаратный I2C в слейв-режиме?
До этого писал код для 16F73. Там I2C работал молча и надежно. Запустил с полоборота. Здесь же вроде и сконфигурировал как надо, но не видит ни старта, ни стопа...
В 73-м была фишка, что надо указывать скорость работы канала. Здесь вообще не нашел никаких упоминаний, на какой скорости все работает.
Люди добрые, помогите, кто смог запустить! help.gif
volodya
Цитата(mungo @ Nov 19 2007, 15:55) *
Кто пробовал запустить аппаратный I2C в слейв-режиме?
До этого писал код для 16F73. Там I2C работал молча и надежно. Запустил с полоборота. Здесь же вроде и сконфигурировал как надо, но не видит ни старта, ни стопа...
В 73-м была фишка, что надо указывать скорость работы канала. Здесь вообще не нашел никаких упоминаний, на какой скорости все работает.
Люди добрые, помогите, кто смог запустить! help.gif


Давно это было... фсе строго по рекомендациям даташита с мониторингом прерываний и жжжужал как пичелка 07.gif . Даже понравилось! biggrin.gif
Однако не совсем понял sad.gif - в чистом слайве интерапт генериться при приеме байта (адреса, инфы) старт - стоп обрабатывался на уровне железа, скорость устанавливает мастер, поэтому у слайва ее нет. А мониторинг старт-стоп это мультимастер или сингл-мастер? если я ошибаюсь - поправте twak.gif . В MPLAB AplicationMaestro посмотрите библиотечные модули.
mungo
Чисто чтобы проверить, повесил триггер на ножку, чтобы при приходе прерывания по и2ц ножка дергалась. Нифига не дергается. Значит прерывания нет.
Запуск:
Код
SSPCON=00111001b; SSPADR=0xFE; SSPSTAT=0; SSPCON=0x36; SSPADR=0xA8;

Может ещё что надо запускать?
mungo
Сэры, ну если вы с ним уже работали, то почему не подсказали ламеру, что SDA и ADC совмещены на одной ножке и что АЦП ПО УМОЛЧАНИЮ включен в отличие от других устройств? Плюс что он такой задумчивый?
Разобрался сам, отключил АЦП, ввел более долгие циклы ожидания для мастера и все заработало...
dac
Цитата(mungo @ Nov 28 2007, 18:16) *
Сэры, ну если вы с ним уже работали, то почему не подсказали ламеру, что SDA и ADC совмещены на одной ножке и что АЦП ПО УМОЛЧАНИЮ включен в отличие от других устройств? Плюс что он такой задумчивый?
Разобрался сам, отключил АЦП, ввел более долгие циклы ожидания для мастера и все заработало...


поздравляю, кому-то будет наука wink.gif

конкретно с указанными не работал, а вообще ни одного PICа из тех с которыми работал, не было с автоматически вЫключенным АЦП, хотя первый раз тоже на эти грабли наступал, только давно это было... а в некоторых еще компаратор есть, и тоже автоматически включен, учтите на будущее smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.