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

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

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

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

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

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

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

Закрытая тема
Опции темы
Непрочитано 02.12.2008, 12:03   #1
_Stealth_
Частый гость
 
Регистрация: 12.11.2007
Сообщений: 24
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
_Stealth_ на пути к лучшему
По умолчанию DS1307 и глюки при чтении

Народ, помогите разобраться пожалуйста.
Имеем в связке mega32, DS1307 и граф. дисплей. Мега пашет на 16 мегагерцах, на кварце.
Проблема в том, что данные из RTC читаются не всегда корректно. DS подключен по мануалу, с батарейкой. Но после включения всего девайса на дисплей вместо времени выводится какая-то ерунда, например 65:65:65. То же самое с датой. Иногда, после включения все пашет корректно и время с датой выводится правильно. Причем, DS данные не сбрасывает. Такое ощущение, что контроллер неправильно читает по i2c.
Читал ветку по DS-у в этом форуме, все перепробовал. Не помогает.

void main(void)
{
delay_ms(2000);

// I2C Bus initialization
i2c_init();
rtc_init(0,0,0);
/*
rtc_write(0,0);
rtc_set_date(2,2,2);
rtc_set_time(1,1,1);
*/
rtc_get_time(&hour, &minute, &sec);
LCD_PUTSF_(1, 1, hour, font);
......................

Вот так вывожу время. Код слегка урезал, чтобы не был громоздким.

-- Прилагается рисунок: --
Реклама:
_Stealth_ вне форума  
Непрочитано 02.12.2008, 15:28   #2
ua_gruzin
Вид на жительство
 
Регистрация: 11.12.2006
Сообщений: 317
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
ua_gruzin на пути к лучшему
По умолчанию

Проверь протокол чтения и записи.
Такие глюки были в меня при неверной посылке последнего бита (или кана там называют - конца чтения).
При неверном формировании конца пакета - таймер выдает непонятно что, тем более после записи даты. Убери запись даты и запусти только чтение часов.
ua_gruzin вне форума  
Непрочитано 02.12.2008, 17:36   #3
_Stealth_
Частый гость
 
Регистрация: 12.11.2007
Сообщений: 24
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
_Stealth_ на пути к лучшему
По умолчанию

ua_gruzin, в последней версии прошивки нет строчки установки датывремени. DS-ка тикает от батарейки. Контроллер только читает.
Софт пишу в CVAVR. Как там можно проверить куда чего передается, если библиотеки так сказать "заводские"?
_Stealth_ вне форума  
Непрочитано 02.12.2008, 18:27   #4
ua_gruzin
Вид на жительство
 
Регистрация: 11.12.2006
Сообщений: 317
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
ua_gruzin на пути к лучшему
По умолчанию

Я писал на асме.
Точно такая была проблема при неверном формировании пакета.
Не факт что "заводские" библиотеки подходят, поскольку чипы могут изменятся.
Поставь запрет на пирывание, возможно что-то ребутит чип или влазит в прогу. Отмени ватчдог.

Как проверить...
Собери все в проеусе.... если нет осцилографа.
В протеусе есть и мега, есть и осцил. Бальше просто пошагово посмотриш что и как идет на ДС-ку и что идет в ответ. Правда, в меня в протеусе работало, а на железе пришлось переделать немного, но тож пошло.
ua_gruzin вне форума  
Непрочитано 02.12.2008, 19:13   #5
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Что ставил на подтяжку шины ?
Должны стоять pullup...
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 02.12.2008, 20:29   #6
Zemlyanov
Гражданин KAZUS.RU
 
Регистрация: 17.09.2006
Сообщений: 633
Сказал спасибо: 78
Сказали Спасибо 69 раз(а) в 57 сообщении(ях)
Zemlyanov на пути к лучшему
По умолчанию

Тоже столкнулся с похожей проблемой. Возникает только при включении МК и после запроса времени (использовал стандартную библиотеку от Code Vision)от DS приходит значение 165 и для часов и для минут постоянно. Помогает перезагрузка МК, и то не всегда. Обидно то, что может работать несколько дней нормально, а потом начинает сбиваться именно при включении МК (если МК включился, и пришло правильное время, то он будет работать нормально до выключения). Менял несколько DS 1307 – результат один и тот же.
Zemlyanov вне форума  
Непрочитано 02.12.2008, 21:55   #7
worldmasters
Гражданин KAZUS.RU
 
Регистрация: 21.02.2007
Сообщений: 553
Сказал спасибо: 38
Сказали Спасибо 17 раз(а) в 16 сообщении(ях)
worldmasters на пути к лучшему
По умолчанию

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

P.S. ... вот и ответил на свой же вопрос...
для чего нужно знать ASM ...
worldmasters вне форума  
Непрочитано 02.12.2008, 22:12   #8
ra9mig
Прописка
 
Регистрация: 24.09.2008
Сообщений: 116
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
ra9mig на пути к лучшему
По умолчанию

Согласен с worldmasters на 100%!!!
Применял готовые процедуры и... в итоге переделывал под свои нужды (и аппаратные и программные и с прерываниями...).
Напиши ОДИН РАЗ свою на асме и вставляй ее потом куда хочешь ( прикольный коламбур получился).
P.S. Вот нате на растерзание...

Прикрепленный файл: 8115885.rar
__________________
Если мы вам не подходим, вы нам вовсе не нужны!
Услышал и забыл, увидел и запомнил, сделал и понял!
Нейрон - штука тонкая!
Чудес на свете не бывает!
ra9mig вне форума  
Непрочитано 02.12.2008, 23:50   #9
_Stealth_
Частый гость
 
Регистрация: 12.11.2007
Сообщений: 24
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
_Stealth_ на пути к лучшему
По умолчанию

ra9mig, разбираюсь. Спасибо большое. Написать свое, да еще и на асме - это идеальный вариант конечно. Но думал, что в CVAVR нормально все пашет... Кстати, не нашел там библиотеку реализации i2c. Заголовочный файл валяется, а где коды процедур искать, кто знает?

Zemlyanov, проблема один-в-один. Надо победить.

dosikus, пулап поставил. Все по мануалу.

Мда... В протеусе все пашет замечательно и без глюков, но девайс, похоже, живет своей жизнью и на протеус плевать хотел...
_Stealth_ вне форума  
Непрочитано 03.12.2008, 12:28   #10
ra9mig
Прописка
 
Регистрация: 24.09.2008
Сообщений: 116
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
ra9mig на пути к лучшему
По умолчанию

Вот еще ссылочка http://www.gaw.ru/html.cgi/txt/app/m...avr/AVR315.htm, может поможет...
__________________
Если мы вам не подходим, вы нам вовсе не нужны!
Услышал и забыл, увидел и запомнил, сделал и понял!
Нейрон - штука тонкая!
Чудес на свете не бывает!
ra9mig вне форума  
Закрытая тема

Закладки


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
DS1307 спешит disist Микроконтроллеры, АЦП, память и т.д 43 25.04.2018 16:57
Проблема при чтении аудио данных c SD карты IgorAVR2 Микроконтроллеры, АЦП, память и т.д 13 11.08.2008 01:31
глючит DS1307! stri Микроконтроллеры, АЦП, память и т.д 3 28.09.2007 08:13
Проблемы с ds1307 droom Микроконтроллеры, АЦП, память и т.д 1 13.12.2006 07:36
При чтении CD диска выдаёт 00 треков 00:00 минут axle Аудиотехника 3 10.04.2006 11:06


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


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