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

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

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

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

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

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


 
Опции темы
Непрочитано 22.12.2011, 13:47  
mausUA
Прохожий
 
Регистрация: 17.12.2011
Сообщений: 8
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
mausUA на пути к лучшему
По умолчанию Re: PROTEUS+DS1307 помощь

по результатам курения даташита и всех исходников на протяжении 2х дней, обрисовалась следующая картина:

DS-ка живая и нормальная, при обращении к ней с по адресу 0х68, в результате побитового сдвига получаем на выход D0, т.е. схемка в режиме приема. в нее можно передать при желании все, что нравится, и реакция схемки нормальная. включение/выключение герератора тоже проходит на ура.

самое интересное начинается при желании перевести ее в режим передачи: при разборе i2c дебаггера получаем следущую картину: отправляется старт-бит S, потом сдвинутый адрес (т.е. D0), потом автоматом получаем бит А (acknowledge) и типа пакет передался. вопрос заключается в том, как всунуть перед А единичку, переводящую схему в режим передачи? перебрал все комбинации сдвинутых адресов D1 ну никак не получается, т.к. сдвинутое число полюбому четное, а передать надо нечетное. после А передать нельзя, тк передача уже приниматеся в 00Н регистр, т.е. секундный.

друзья, есть ли простое решение проблемы или таки придется потрошить twi библиотеку на предмет оптимизации на эту тему?

спасибо.
Реклама:
mausUA вне форума  
Непрочитано 22.12.2011, 19:21  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: PROTEUS+DS1307 помощь

Сообщение от mausUA Посмотреть сообщение
таки придется потрошить twi библиотеку
Угу, все ж таки промелькнуло, что аппаратный.
Ну так ее выпотрошил сам Atmel. Тут не даташит, свернутый в трубочку надо курить, а апнот, в частности AVR315. На Гаврюше есть в русском исполнении:
http://www.gaw.ru/html.cgi/txt/app/m...avr/AVR315.htm
Halex07 вне форума  
Непрочитано 22.12.2011, 19:32  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: PROTEUS+DS1307 помощь

Вам уже готовый код выложили. Нет там никакой передачи. Микросхема может работать только в режиме slave. То, что вы называете передачей есть ответ на запрос мастера. Адрес Д0 инитиализирует запись. Д1 - чтение. Тут какой-то тяжелый случай одурманивания даташитом.
Easyrider83 вне форума  
Непрочитано 23.12.2011, 01:37  
vitvp
Вид на жительство
 
Регистрация: 13.08.2007
Адрес: Kiev, UA
Сообщений: 431
Сказал спасибо: 423
Сказали Спасибо 214 раз(а) в 94 сообщении(ях)
vitvp на пути к лучшему
По умолчанию Re: PROTEUS+DS1307 помощь

Сообщение от Easyrider83 Посмотреть сообщение
А в чем такая категоричность использовать внешние часы? Средствами таймера1 с внешним резонатором можно запросто календарь соорудить.
Можно и не только календарь, но по включению питания каждый раз его выставлять в системном плане не всегда оптимально.

For examle, система с полным астрономическим временем работы до года и более, в активном режиме кушающая амперы, поэтому элементы питания силовухи раз в 1-2-3месяца менять-заряжать. На фоне этого нет смысла и в uPower MCU - Mega128, находящаяся большую часть времени в спячке, просыпающаяся по 1с прерываниям от DS1307, кушает 0.5-0.8мА вместе со всем устройством, мониторя контекст задачи, уровни питания и ведя логгинг в eeprom, выдавая управляющие воздействия.
Резервное питание DS1307 (SRAM, пока не задействована) позволяет без потери контекста задачи простым отключением питания блокировать управление или менять элем. питания силовухи.
vitvp вне форума  
Непрочитано 07.03.2012, 11:19  
mausUA
Прохожий
 
Регистрация: 17.12.2011
Сообщений: 8
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
mausUA на пути к лучшему
По умолчанию Re: PROTEUS+DS1307 помощь

народ, всем спасибо за посильную помощь ...
все заработало, во всем разобрался.
по итогу оказалось, что глючит протеус. в "металле" все работает и в одну и в другую сторону ...
mausUA вне форума  
Непрочитано 26.06.2012, 13:51  
Prime
Прописка
 
Регистрация: 11.06.2005
Сообщений: 266
Сказал спасибо: 9
Сказали Спасибо 13 раз(а) в 12 сообщении(ях)
Prime на пути к лучшему
По умолчанию Re: PROTEUS+DS1307 помощь

Кстати, не наступайте на следующие грабли с DS1307 - если создать SUBCIRCUIT и положить туда контроллер с часами - симуляция не запустится.
Видимо также происходит и с другими программными моделями, лежащими на дочерних листах.
__________________
Канал в Telegram об МК AVR @EasyAVR
Prime вне форума  
Непрочитано 26.06.2012, 18:51  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: PROTEUS+DS1307 помощь

Сообщение от Prime Посмотреть сообщение
Видимо также происходит и с другими программными моделями, лежащими на дочерних листах.
Не программными, а АКТИВНЫМИ. Как шутил очень-очень давно у нас в школе военрук -"Не путайте Гоголя с Гегелем...". DS1307 имеет всплывающее окно, показывающее дату и время, поэтому ее и невозможно засунуть на дочерний лист. Есть, например, программная модель HD44780 (именно контроллера, а не дисплея на нем) суньте ее на дочерний лист и она прекрасно будет работать. Именно так построены дисплеи с двумя контроллерами. Я об этом уже писал в FAQ.
Halex07 вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Proteus 7.2 SP2 Помощь Cap63 Proteus 1 04.12.2007 21:54
глючит DS1307! stri Микроконтроллеры, АЦП, память и т.д 3 28.09.2007 08:13
Proteus в помощь roog Proteus 3 14.06.2007 13:58
Проблемы с ds1307 droom Микроконтроллеры, АЦП, память и т.д 1 13.12.2006 07:36


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


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