Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


Ответ
Опции темы
Непрочитано 02.05.2009, 22:43   #591
wasp
Временная регистрация
 
Регистрация: 22.07.2006
Сообщений: 54
Сказал спасибо: 7
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
wasp на пути к лучшему
По умолчанию

dosikus спасибо, много интересного.

varostov спасибо, завтра попробую подправить.
Реклама:
wasp вне форума   Ответить с цитированием
Непрочитано 03.05.2009, 15:24   #592
movlost
Прохожий
 
Регистрация: 03.05.2009
Сообщений: 3
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
movlost на пути к лучшему
По умолчанию

товарищи радиолюбители, помогите начинающему. Кто-нибудь из вас мерил с помощью модуля CCP микроконтроллера pic12f683(да вообще любого микроконтроллера pic) размеры импульсов? Если да, то киньте прогу пожалуйста (можно на почту movlost@rambler.ru).
movlost вне форума   Ответить с цитированием
Непрочитано 23.05.2009, 18:04   #593
Gladkih
Гражданин KAZUS.RU
 
Регистрация: 06.08.2006
Сообщений: 694
Сказал спасибо: 24
Сказали Спасибо 38 раз(а) в 31 сообщении(ях)
Gladkih на пути к лучшему
По умолчанию

здравствуйте форумчане подскажите такой вопрос:я прочитал по поводу адресации шины И2с и увидел что она поддерживает общий вызов. это адрес 0х00. так вот при этом я должен работать с этим аресом как с обычным? меня интересует что будет с битом подтвержднения? и еще вопрос немного не в тему.подскажите пожалуйста как лучше поступить в такой ситуации. имеется система из трех контроллеров общающихся по И2С. в реальности бываетт что шина подвисает, для того что бы дальше шла работа я ввел сторожевой теймер и возник вопрос как правильно засинхронизировать начало отсчета всех трех таймеров. даже если это начало самой программы то у меня возникает проблема что программы на всех трех контроллерах начинают работать в разное время(контроллеры находятся на разных платах со своими стабилизаторами питания и из-за этого напряжение питания достигает необходимого уровня за разное время).
Gladkih вне форума   Ответить с цитированием
Непрочитано 24.05.2009, 14:15   #594
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию

Сообщение от Gladkih
проблема что программы на всех трех контроллерах начинают работать в разное время.
а как у тебя организован обмен? один мастер или мульти?

По идее, кто то должен инициировать обмен...
и что значит зависает шина?... SCL или SDA остаётся = 0?
picavr вне форума   Ответить с цитированием
Непрочитано 24.05.2009, 14:50   #595
Gladkih
Гражданин KAZUS.RU
 
Регистрация: 06.08.2006
Сообщений: 694
Сказал спасибо: 24
Сказали Спасибо 38 раз(а) в 31 сообщении(ях)
Gladkih на пути к лучшему
По умолчанию

Сообщение от picavr
Сообщение от Gladkih
проблема что программы на всех трех контроллерах начинают работать в разное время.
а как у тебя организован обмен? один мастер или мульти?

По идее, кто то должен инициировать обмен...
и что значит зависает шина?... SCL или SDA остаётся = 0?
обмен один мастер, а че именно зависает в и2с точно не знаю но ориентировачно при запросе нескольких байт с подтвержением. т.е. мастер спрашивает данные а слейв в это время чтото делает и не знает что его спрашивают и получается что мастер висит.
Gladkih вне форума   Ответить с цитированием
Непрочитано 24.05.2009, 16:04   #596
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию

Сообщение от Gladkih
обмен один мастер, а че именно зависает в и2с точно не знаю но ориентировачно при запросе нескольких байт с подтвержением. т.е. мастер спрашивает данные а слейв в это время чтото делает и не знает что его спрашивают и получается что мастер висит.
посмотреть осцилографом на шине... или сканером I2C, что бы понять что творится.
А как же у тебя код написан, что слейв может и не ответить?... используй тогда I2C модуль что бы мог отвечать в любое время...

Введи TIMEOUT запроса МАСТЕРа, т.е. если СЛЕЙВ не ответил, МАСТЕР ждёт некоторое время и повторяет запрос (отсчитывать попытки установки связи) если за некоторое количество попыток СЛЕЙВ не ответил, значит СЛЕЙВ или отсуствует или неисправность шины...

или сложно додуматся?
picavr вне форума   Ответить с цитированием
Непрочитано 24.05.2009, 16:27   #597
Gladkih
Гражданин KAZUS.RU
 
Регистрация: 06.08.2006
Сообщений: 694
Сказал спасибо: 24
Сказали Спасибо 38 раз(а) в 31 сообщении(ях)
Gladkih на пути к лучшему
По умолчанию

Сообщение от picavr
Сообщение от Gladkih
обмен один мастер, а че именно зависает в и2с точно не знаю но ориентировачно при запросе нескольких байт с подтвержением. т.е. мастер спрашивает данные а слейв в это время чтото делает и не знает что его спрашивают и получается что мастер висит.
посмотреть осцилографом на шине... или сканером I2C, что бы понять что творится.

Введи TIMEOUT запроса МАСТЕРа, т.е. если СЛЕЙВ не ответил, МАСТЕР ждёт некоторое время и повторяет запрос (отсчитывать попытки установки связи) если за некоторое количество попыток СЛЕЙВ не ответил, значит СЛЕЙВ или отсуствует или неисправность шины...

или сложно додуматся?
да додуматся не сложно, но по твоему получается необходимо отказаться от битов подтверждения?!дело в том что модуля обмена уже написаны и они используют бит подтверждения. по модулям у меня сначала мастер проверяет наличие интересующего слейва(причем если такового нет при 10 попытка взводится флаг и выход из модуля) потом передает команду потом принимает или передает данные и затем передает или принимает контрольную сумму(тоже 10 раз если не совпала КС и взводится флаг). при этом для каждой команды у меня не фиксированная длина данных, она зависит от номера команды.дело в том что по шине идут данные от 1-го до 4-х байт и терять время на фиксированную длину нет возможности.
Gladkih вне форума   Ответить с цитированием
Непрочитано 24.05.2009, 17:53   #598
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию

Сообщение от Gladkih
по твоему получается необходимо отказаться от битов подтверждения?
Это почему отказатся от битов подтверждения? как раз по битам подтверждения и определяется есть ли ответ от СЛЕЙВА... а после ПОСЛЕДНЕГО байта запроса МАСТЕР отсчиывает TIMEOUT и если нет ответа то соответствено повтор запроса...
Я бы сделал так...
На каждую посылку от МАСТЕРА, СЛЕЙВ должен ответить подтверждающей посылкой...(например если СЛЕЙВ принял правильно и КС совпадает, то он отсылает только принятую КС, если не правильно, то отправляет байт ОШИБКА и КС) тогда МАСТЕР всегда будет знать.. принял СЛЕЙВ или нет... и правильно ли...
А у тебя наверное этого нет...
Продумывай правильно протокол...

В шине МДБ например 9 битовые посылки, и посылки разной длинны от 2-3 байта до десятков байт. 9 бит от МАСТЕРА показывает это передача для СЛЕЙВА данных или МАСТЕР запрашивает данные у СЛЕЙВА.
А ответе СЛЕЙВА этот бит показывает правильность приёма СЛЕЙВОМ данных, и МАСТЕР всегда знает правильно ли СЛЕЙВ его понял..
picavr вне форума   Ответить с цитированием
Непрочитано 24.05.2009, 18:06   #599
Gladkih
Гражданин KAZUS.RU
 
Регистрация: 06.08.2006
Сообщений: 694
Сказал спасибо: 24
Сказали Спасибо 38 раз(а) в 31 сообщении(ях)
Gladkih на пути к лучшему
По умолчанию

спасибо за совет.я подумаю и попробую.вопрос закрыт.
Gladkih вне форума   Ответить с цитированием
Непрочитано 24.05.2009, 18:20   #600
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

На шину I2C неплохо бы снифер иметь
http://en.radzio.dxp.pl/i2c-sniffer/ , жаль что пиккит сериал анализер этого не может .
__________________
Осторожно , злой кот
dosikus вне форума   Ответить с цитированием
Ответ

Закладки


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
i2c+ccs pic Gladkih Микроконтроллеры, АЦП, память и т.д 9 18.04.2016 22:17
PIC BASIC PRO Compiler 2.47 dosikus Proteus, KiCAD и другие ECAD 27 05.12.2009 05:48
изучение IAR AVR C compiler granel Микроконтроллеры, АЦП, память и т.д 0 10.10.2008 20:45
PIC C Compiler PCWH458 sergxxx Микроконтроллеры, АЦП, память и т.д 9 23.09.2008 18:25
Не включается дебаггер в CCS C Compiler BigMazzi Микроконтроллеры, АЦП, память и т.д 4 19.09.2008 13:34


Часовой пояс GMT +4, время: 16:13.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot