Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
07.07.2008, 03:15
|
|
Вид на жительство
Регистрация: 11.12.2006
Сообщений: 317
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
|
У меня подобная задача решена на ATmega64 + DS1307.
В EEPROM загнал таблицу:
день 0-31 (1 байт)
часы 0-24 (1 байт)
секунды 0-60 (1 байт)
код действия 0-12 (1 байт)
Контроллер бросает запрос каждую секунду на проверку - нет ли совпадения текущей даты с таймера в значениях дня. (сканит память с шагом 4).Если есть совпадение - смотрит часы и т.д.
Весьма просто, до сих пор работает.
|
|
|
|
07.07.2008, 10:49
|
|
Вид на жительство
Регистрация: 17.07.2007
Сообщений: 384
Сказал спасибо: 65
Сказали Спасибо 156 раз(а) в 84 сообщении(ях)
|
ua_gruzin
а на чем Вы писали? не на си случайно? Можете показать кусок программы где он конектится к DS1307?
Сколько у вас было запланировано задач и на сколько дней?[/b]
|
|
|
|
07.07.2008, 11:45
|
|
Вид на жительство
Регистрация: 22.06.2006
Адрес: Украина
Сообщений: 308
Сказал спасибо: 19
Сказали Спасибо 32 раз(а) в 24 сообщении(ях)
|
суточный цикл с точностью до секунды.
расписание хранится в EEPROM проца (пару функций чтения/записи можно переопределить)
Реализован интерфейс с ПК для заливки/чтения расписания и подачи команд "в онлайне".
Завтра принесу с дома исходники ...
|
|
|
|
07.07.2008, 11:53
|
|
Вид на жительство
Регистрация: 11.12.2006
Сообщений: 317
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
|
Сорь, но писал на Асме.
Для работы с 1307 юзал код из
http://www.igsboekamp.nl/robotigs/do...GardenTest.asm
Чтения-записи ЕЕПРОМ - из даташита.
Алгоритм:
1. считал 4 бита с 1307
2. просканил память алгоритмом на совпадение
3. по совпадению сделал обработку ситуации по коду
Вот и все.
|
|
|
|
07.07.2008, 13:44
|
|
Гражданин KAZUS.RU
Регистрация: 30.04.2006
Сообщений: 984
Сказал спасибо: 5
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
|
Сообщение от alexgap
|
Уф! 14 байт это сильно круто. Можно то же самое поместить в 4 байта. Тогда в память поместится больше записей. Вот пример: для представления времени используйте количество секунд начиная, например, с 2000.01.01. Только для этого потребуется загнать календарные правила в прошивку, но это не сильно сложно, просто учитывать высокосные года, кол-во дней в месяце и т.д. В сети можете найти код, который это делает, самый яркий пример, реализация Си функций mktime и gmtime. Если у вас Си компилятор поддерживает эти функции, то будет достаточно ими воспользоваться (вызвать их). Если нет, то смотрите сюда:
Реализация:
http://www.raspberryginger.com/jbail...8c-source.html
http://www.raspberryginger.com/jbail...8c-source.html
Документация:
http://www.cplusplus.com/reference/c...me/gmtime.html
http://www.cplusplus.com/reference/c...me/mktime.html
|
Чего то эти кода не компилирует codevision, никто не знает в чем проблема?
|
|
|
|
07.07.2008, 15:55
|
|
Вид на жительство
Регистрация: 17.07.2007
Сообщений: 384
Сказал спасибо: 65
Сказали Спасибо 156 раз(а) в 84 сообщении(ях)
|
Цитата:
|
Добавлено: Пн Июл 07, 2008 10:45 am Заголовок сообщения:
суточный цикл с точностью до секунды.
расписание хранится в EEPROM проца (пару функций чтения/записи можно переопределить)
Реализован интерфейс с ПК для заливки/чтения расписания и подачи команд "в онлайне".
Завтра принесу с дома исходники ...
|
Жду с нетерпением!
|
|
|
|
09.07.2008, 10:37
|
|
Вид на жительство
Регистрация: 22.06.2006
Адрес: Украина
Сообщений: 308
Сказал спасибо: 19
Сказали Спасибо 32 раз(а) в 24 сообщении(ях)
|
|
|
|
|
09.07.2008, 12:24
|
|
Вид на жительство
Регистрация: 17.07.2007
Сообщений: 384
Сказал спасибо: 65
Сказали Спасибо 156 раз(а) в 84 сообщении(ях)
|
большое спасибо!!! буду пазбираться
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 10:19.
|
|