roboforum.ru

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

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




Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 19 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 15:55 
Не в сети
Аватара пользователя

Зарегистрирован: 10 мар 2009, 22:31
Сообщения: 29
Откуда: Odessa
Добрый день всем!
Помогите начинающему.

Хочу собрать первые часы на микропроцессоре. В инете есть куча готовых схем, в которых часы реального времени (RTC) обмениваются данными с мегой по I2C протоколу.

У меня есть RTC72423. это очень древняя микросхема и в даташите на нее упоминается сигнад ALE. Сам протокол здорово смахивает на параллельную передачу данных.

ВОПРОС: каким образом можно ее подключить к mega8, чтобы использовались все параметры часов (секунды-минуты...годы).

P.S. Я понимаю, что часть ответов будет типа: "...не парься - купи на I2C".
1. Такой возможности нет (по крайней мере в Одессе).
2. Указанная мной микросхема у меня есть (аж 2).

Буду признателен за любые комментарии.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 16:09 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
возможность есть всегда )

если там АЛЕ то и правда паралельнай передача данных... берем 1 порт меги и через него передаем байт.. еще несколько линий с другого порта используем для управления... ну и ищем ДШ на свою МС..

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 16:16 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
вообще-то в самих мегах уже есть часы!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 16:26 
Не в сети
Аватара пользователя

Зарегистрирован: 10 мар 2009, 22:31
Сообщения: 29
Откуда: Odessa
Часы в меге есть, но хочется получить:
1. точность хода
2. все данные о времени-дате в "удобном" виде без программных извратов (я только начинаю программировать на СИ)
3. базовую схему, которую можно будет использовать для последующих разработок подобного типа

По поводу параллельного интерфейса: сколько линий нужно для управления (я так понимаю 3: строб, разрешение записи, разрешение чтения?)

Добавлено спустя 3 минуты 44 секунды:
Duhas писал(а):
возможность есть всегда )

если там АЛЕ то и правда паралельнай передача данных... берем 1 порт меги и через него передаем байт.. еще несколько линий с другого порта используем для управления... ну и ищем ДШ на свою МС..


даташит нашел, но "толку мало".
Я так понял, что первых четыре бита задают адресс, а последние 4 бита - биты данных (непосредственно время-дата и 3 контрольных регистра)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 16:31 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
если планируете использовать где-то эти часы если не в часах - то зря.. достать И2Ц или СПИ микру можно.. нет в городе - почтой...

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 16:54 
Не в сети
Аватара пользователя

Зарегистрирован: 10 мар 2009, 22:31
Сообщения: 29
Откуда: Odessa
По предыдущему посту: что-то до меня слабо доходит (устал наверное)...
Я эти RTC хочу использовать в часах (с будильниками, таймерами, и коммутируемыми нагрузками).

ОСНОВНАЯ ЦЕЛЬ: поднатаскаться на проектировании и программировании устройств на AVR.
По поводу достать: ВСЕ продавцы смотрят на меня как на умалишенного и заваливают советами: "сделай на меге (без RTC) и не парься. RTC товар не ходовой и мы его не возим".

Про почту... Дык дороговастенько будет 1 микруху почтой слать и долговастенько.

А вообще - начинаю сомневаться. Может и вправду не заморачиваться, а для начала сделать просто на меге?...
Еще пару часов подумаю и приму РЕШЕНИЕ :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 18:13 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
если ради 1 конкретной конструкции - то мона и их поюзать... курите ДШ... там все должно быть крайне просто...

я подумал что вы хотите отработать работу с ними чтобы потом неоднократно применять )

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 22:18 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Человек просто хочет поднатаскаться в программировании, потому и пытается юзать RTC

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 22:43 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
до меня уже дошло.. кста мона суда ДШ выложить )

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 23:03 
Не в сети
Аватара пользователя

Зарегистрирован: 21 дек 2006, 19:56
Сообщения: 4468
Откуда: Украина, г.Одесса
прог. языки: Delphi и С
Цитата:
Такой возможности нет (по крайней мере в Одессе).

Ну если уж и в Моссовете..... (с)
На 2-й Водопроводный переулок, магазин К-206 спрашивал?
Вот щас в ихнем прайсе посмотрел.
PCF 8583 soic Real Time Clock I2C
U 4221 Приемник сигналов точного времени

А вообще чтобы в МК поднатаскаться сделай сам часы на меге, с использованием 7-сегм индикаторов, плюс кнопки для выставления времени.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 24 авг 2009, 23:43 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Выкладываю даташит на RTC72423


Вложения:
RTC72423.pdf [212.5 КиБ]
Скачиваний: 39

_________________
if(!Operate) Read(pDatasheet);
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 25 авг 2009, 04:18 
Не в сети
Аватара пользователя

Зарегистрирован: 10 мар 2009, 22:31
Сообщения: 29
Откуда: Odessa
За даташит - спасибо, но он у меня уже был.
По поводу Моссовета :) У них (к-206) и спрашивал (правда без наименования). Завтра еще спрошу.

По поводу причины всей этой затеи - верно подмечено: хочу понять КАК?

Уже есть идейка:
стр.177 глава9 рис.2.19 по Евстифееву "Микроконтроллеры AVR семейств ..."

Подключение внешнего ОЗУ к микроконтроллеру

А это случайно не то что мне нужно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 25 авг 2009, 13:52 
Не в сети
Мастер Самоделкин
Аватара пользователя

Зарегистрирован: 11 окт 2004, 19:20
Сообщения: 3678
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич
В даташите же все нарисовано:
Запись
1)Поднять CS1
2)Выдать адрес
3)Поднять ALE (зафиксировать адрес) и поднять ~CS0
4)Опустить ALE, затем опустить ~CS0
5)Выдать в шину данные и дернуть WR
6)Отпустить CS

Чтение
Аналогично по диаграмме
Вложение:
_4.jpg
_4.jpg [ 72.91 КиБ | Просмотров: 4127 ]


Добавлено спустя 3 минуты 40 секунд:
Кстати ALE - это защелка адреса. Она нужна когда и адрес и данные идут по одним и тем-же проводам. Тоесть на шине адрес - дергаем ALE - микруха адрес запомнила и на шину идут данные. В данном случае шина 4-битная и мы без проблем можем кормить ее адресом и данными отдельно по 8 проводам. В этом случае (как написано в даташите) ALE запаивается на +5В, а все операции проводятся только с помощью CS и WR-RD. Тоесть подняли CS - записали в младшую тетраду адрес, а в старшую данные и дернули WR. Или записали адрес, дернули RD и прочитали данные. Главное не забывать переключать порты на ввод или на вывод, а то можно что-нить сломать...

Добавлено спустя 5 минут 31 секунду:
Примерно так:

Подняли CS1 (и наверно CS0 тоже)
Настроили весь порт на выход
Выдали адрес и данные
Дернули WR
Отпустили CS



Подняли CS
Настроили на вход ту часть порта, где шина данных
Выдали адрес
Дернули RD
Прочитали данные
Отпустили CS

_________________
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 26 авг 2009, 00:20 
Не в сети
Аватара пользователя

Зарегистрирован: 10 мар 2009, 22:31
Сообщения: 29
Откуда: Odessa
Александр, спасибо за такой полный ответ!

Я еще на той стадии, когда даташит можно курить, есть, пить и.т.д., но очевидных вещей при этом не догонять (все мое систематизированное теоретическое знакомство с электроникой - 7 лет назад у нас на факультете 3-4 семестра были основы микроэлектроники).

Сейчас пытаюсь снова вкуриться, но пока туго (+ еще и работать нужно).
Была у нас в универе книжечка по основам микроэлектроники... ЖЕЛТАЯ (ни автора не названия не помню). Так вот ее бы вспомнить - был бы толк (все-таки нам по ней все разжевывали, а жевательная память, она ТАКАЯ...). Будет повод после 1 сентября проведать преподов.

По ходу пьесы возник вопрос. Это я у меги 1,5 порта полностью забираю только на обмен с RTC. Еще столько-же (8+4) - на индикацию (LED7x4). Даже в таком варианте у меня 1 ноги не хватает. А КНОПОЧКИ, ДАТЧИКИ температуры, освещенности, выход на пищалку, выход на исполнительный механизм... Получается - нужно еще поизвращаться. По индикации - видел вариант вывода индикации через 74HC595 (DATA, SHIFT, STORAGE на сегменты и 4 сигнала на разряды). Так вот вопрос: а с RTC нельзя так же поступить (через какую-нибудь ходовую мелкосхему)?

P.S. Блин, тема начинает усложняться...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Часы на ATmega8+RTC72423. Как сигнал с часов завести в мегу?
СообщениеДобавлено: 26 авг 2009, 10:45 
Не в сети

Зарегистрирован: 27 авг 2008, 10:45
Сообщения: 1981
Откуда: Харьков
прог. языки: С/С++
Там внимательно надо посмотреть - вроде как можно совместить 8 линий светодиодов с линиями данных и адреса RTC. И обращаться по очереди - сначала гасим все 4 разряда, выдаем управляющие сигналы на RTC и проводим коротенький сеанс общения. Светодиоды при этом не мигают, потому что разрядные сигналы неактивны. А затем пробегаем по разрядам 1-4 и выдаем на те же 8 линий управление сегментами, у часов при этом CS убран и они эти сигналы игнорируют. Экономия 8 линий. При должном умении на эти же линии вешается и клавиатура 8x1, занимая всего 1 ногу. Либо вешается 4х1 (4х2) на разрядные линии и 1 (2) ноги, это удобнее с точки зрения опроса - он идет одновременно с индикацией. Кнопки обязательно через диоды, чтоб при одновременном нажатии не попалить порт вывода.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 19 ]  На страницу 1, 2  След.

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 68


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

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