roboforum.ru

Технический форум по робототехнике.
Текущее время: 18 фев 2025, 21:32

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Очень нужно подружить mega128 и ds1307
СообщениеДобавлено: 12 янв 2009, 12:07 
Не в сети
Аватара пользователя

Зарегистрирован: 27 мар 2007, 07:42
Сообщения: 68
Откуда: Екатеринбург
Друзья, убил уже довольно много времени, но никак не могу получить от ds1307 (RTC-микросхема с I2C-интерфейсом) подтверждение (ACK) в ответ на посылку адреса устройства (0xD0). В приложении к этому посту "драйвер" I2C для IAR-компилятора, написанный (не мною) на С. Вопрос ко всем заинтересованным разбирающимся людям, где тут может быть подвох? По какой причине ds1307 может не отвечать? Pull-up резисторы на 2.4 кОм имеют место быть; напряжение питания - 4,88 В, а напряжение на батарейке - 2,90 В (условие VCC > 1.25*Vbat выполняется). Единственный ньюанс - задающий кварц на 32768 Гц отпаян, но его отсутствие по идее не должно влиять на работу I2C-интерфейса. Ниже кусок кода из главной функции:

Код:
  unsigned char buffer = 1;
  unsigned char result = 1;
  tx_type data[2];
 
  data[0].slave_adr = 0xd0;
  data[0].size = 1;
  data[0].data_ptr = &buffer;
  data[1].slave_adr = OWN_ADR;
 
  __disable_interrupt();
 
  init();
  lcdClear();
 
  __enable_interrupt();


  result = Send_to_TWI( data ); 

  lcdDisplayInt( result, FALSE );


Извиняюсь за косноязычие, уже не знаю, куда копать :sorry:


Вложения:
i2c_driver.zip [3.18 КиБ]
Скачиваний: 44
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очень нужно подружить mega128 и ds1307
СообщениеДобавлено: 12 янв 2009, 12:21 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Попробуйте мастер конфигурации компилятора CVAVR - скачать 2 Мб там http://avr123.nm.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очень нужно подружить mega128 и ds1307
СообщениеДобавлено: 12 янв 2009, 13:09 
Не в сети
Аватара пользователя

Зарегистрирован: 27 мар 2007, 07:42
Сообщения: 68
Откуда: Екатеринбург
Первый раз пользуюсь CV-AVR, на выходе получил значения для 4-х регистров конфигурации TWI. С этим у меня вроде б проблем не было. Скажите, а где можно разжиться файлами <ds1307.h> и соответствующим объектным файлом для CV-AVR? Я не нашёл у себя в cvavr/inc. Спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очень нужно подружить mega128 и ds1307
СообщениеДобавлено: 12 янв 2009, 13:22 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Порфирий писал(а):
Первый раз пользуюсь CV-AVR, на выходе получил значения для 4-х регистров конфигурации TWI. С этим у меня вроде б проблем не было. Скажите, а где можно разжиться файлами <ds1307.h> и соответствующим объектным файлом для CV-AVR? Я не нашёл у себя в cvavr/inc. Спасибо!

У меня там - C:\CVAVR\inc

Добавлено спустя 1 минуту 57 секунд:
Порфирий писал(а):
где тут может быть подвох? По какой причине ds1307 может не отвечать?


в PROTEUS есть анализатоор i2c - сразу видно какие запросы и что почем и модель DS1307 есть.
http://oProteus.narod.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очень нужно подружить mega128 и ds1307
СообщениеДобавлено: 18 фев 2009, 15:09 
Файлика ds1307.lib там нет потому что у тебя скорее демо версия, надо полную скачать(уже не раз говорилось где полную найти, у демо версий СВ1 кроме ограничения кода в 2к не все файлы библиотек приложены, а только основные, у СВ2 не знаю), и для начал воспользуйся программным и2с, он проще для старта.
Без кварца она работает но как флэшка, а не как часы - и новые кварцы 32768 плохо запускаются, надо к ним что то лепить типа кондера по питанию или М. резюка., зато нет никаких проблем с запуском старых часовых - например от дохлой матер. платы...

Теперь у меня вопрос возник: при частом обращений(например считываний каждые 0,2с) к РТЦ 1307 в момент выключения МК в регистр 0 бит 7 пишется "1"(тоесть остановка кварца. и збой часов с их остановкой), ее можно свести к минимуму если обращаться к ним реже, но как всегда в нужный момент откажет (на 2х чипах ртц1307 такое). Может кто сталкивался. :O:


Вернуться к началу
  
 
 Заголовок сообщения: Re: Очень нужно подружить mega128 и ds1307
СообщениеДобавлено: 18 фев 2009, 15:39 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Я думаю в ДЕМО есть все библиотеки. в ДЕМО просто МАСТЕР кода не полнофункциональный.


Последний раз редактировалось avr123.nm.ru 18 фев 2009, 19:51, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Очень нужно подружить mega128 и ds1307
СообщениеДобавлено: 18 фев 2009, 16:09 
Та не спасибо АВР123, у меня полный КВ20309! (ну может автору этой темы нужен), а не поможете с вопросом о сбое дс1307
(т.е. когда "считываем" состояние ртц, и в момент стывания отключаем и2с - ну допустим потух контроллер, в переменную sec пишет например числа >60?

rtc_get_time(&h,&m,&s); // после повторного старта "s" выходит за рамки. регистр 0 бит 7 пишется "1" ,тоесть остановка кварца

тут было бы понятно если мы бы записывали что то в ртц, а тут при чтываний, ну данные не пойдут? а тут такое!


Вернуться к началу
  
 
 Заголовок сообщения: Re: Очень нужно подружить mega128 и ds1307
СообщениеДобавлено: 18 фев 2009, 19:30 
Не в сети
Аватара пользователя

Зарегистрирован: 05 июн 2007, 12:20
Сообщения: 196
Откуда: Киев
прог. языки: C/C++, ASSEMBLER
Помнится тоже когда-то маялся с этой микросхемой, тут даже на форуме проект лежит: ПРОЕКТ

_________________
Глюк по-немецки означает "счастье"...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 0


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

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO