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

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

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

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

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

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

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 17.02.2009, 13:13  
rubel
Гражданин KAZUS.RU
 
Аватар для rubel
 
Регистрация: 24.11.2006
Адрес: ДНР
Сообщений: 612
Сказал спасибо: 553
Сказали Спасибо 314 раз(а) в 142 сообщении(ях)
rubel на пути к лучшему
По умолчанию

Сообщение от kison
... Достаточно в конце пакета передать "холостой" байт, и по подтверждению от слейва на него судить о том, прошла передача или нет. ACK - передаем следующий пакет, NACK - повтор предыдущего. Ошибки на I2C - редкость и вводить большой "оверхед" для борьбы с ними ИМХО не стоит.
можно и так,- но для приложения,где длина посылок фиксирована и вы точно знаете сколько времени займет подсчет КС слэйвом. а если длина переменная? и к тому же неизвестно каким алгоритмом пользуется автор при подсчете КС. может он полиномы склоняет...
А насчет коррекции ошибок типо "стоит -не стоит"-решать автору.ему виднее, сколько буит "стоить" эта "редкая ошибочка". Если малого время отклика на команду не требуется, Возвращать CRC - самое оно.
Реклама:
rubel вне форума  
Непрочитано 17.02.2009, 13:35  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию

Сообщение от BigMazzi
Сообщение от kison
Просто ждать можно очень долго.
Это завист от установки таймера и количества попыток, а эти величины зависят от задачи. После превышения количества попыток мастер понимает, что связи нет.
В варианте мастер‹-›слейв ни от какого таймера ничего не зависит. Для чтения нужны условия - старт/адресация+R и т.д. Если мастер этого не сделает, то ничего и не получит. А если сделает, то и ждать не надо. Но на это уйдет время, причем довольно большое.
Сообщение от BigMazzi
Используйте арбитраж.
А смысл сего действия? Создать себе лишние проблемы на ровном месте? Были бы при этом какие нибудь преимущества. А так одни минусы.
kison вне форума  
Непрочитано 17.02.2009, 13:46  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию

Сообщение от rubel
можно и так,- но для приложения,где длина посылок фиксирована и вы точно знаете сколько времени займет подсчет КС слэйвом. а если длина переменная? и к тому же неизвестно каким алгоритмом пользуется автор при подсчете КС. может он полиномы склоняет...
Мне все равно сколько. В стандарте шины оговорено, что слейв может "попридержать" мастера удерживая SCL в низком уровне. И время этого не оговаривается. Мне вполне хватает времени посчитать CRC. Именно так релизована шина в интеллектуальных слейвах - микроконтроллерах. Ведь система может быть занята и отработает прерывание от модуля I2C с большим запозданием. Но данные потеряны не будут - мастер подождет
Сообщение от rubel
А насчет коррекции ошибок типо "стоит -не стоит"-решать автору.ему виднее, сколько буит "стоить" эта "редкая ошибочка". Если малого время отклика на команду не требуется, Возвращать CRC - самое оно.
Ну, от самой идеи ввести в протокол КС я автора не отговариваю. А вот в передаче ее назад смысла не вижу. Достаточно дать понять мастеру, что посылка вполне валидна. В принципе, если шина не загружена, то можно ( но нужно ли?) и назад передавать. Все от конкретики зависит.
kison вне форума  
 

Закладки
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите по Си, программа обмена данными по 232 russo_turisto Микроконтроллеры, АЦП, память и т.д 4 25.03.2009 16:40
Ищу программу для работы с буфером обмена Don_Ambrosio Информация по радиокомпонентам 0 23.04.2008 11:02
Вопрос по протоколам обмена данными в ATmegaAVR vikpol Микроконтроллеры, АЦП, память и т.д 12 17.04.2008 10:58
Скопировать и расшифровать протокол обмена georg222 Делимся опытом 1 05.03.2008 08:03


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


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