Перейти к блогу GetChip.net - блог        JilTE[1] - в разработке     Модификации устройств - модификации

 
Текущее время: 28 мар 2024, 22:50

Часовой пояс: UTC + 3 часа [ Летнее время ]



Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЁН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Анти-спам
Анти-спам:
Выполните задание
   

Обзор темы - Библиотека DS1302
Автор Сообщение
  Заголовок сообщения:  Re: Библиотека DS1302  
Цитата
Сохранение регистров зависит от того, что делает какая либо подпрограмма в случае ее вызова при работе основной программы.
"Круто сказал"... В данном случае надо учитывать встроеные в Алгоритм Билдер макросы и такую штуку как библиотека задержек Waiting, которая может использовать r16, r17, r18 и r19. Встроеные макросы, обычно обходятся r16, r17. Сохранение
SREG важнО при использовании Waiting. Так что ничего дополнительно сохранять не надо. Если будут использоваться прерывания, то там уж не надо забывать "правила поведения" :)
Сообщение Добавлено: 15 апр 2015, 19:24
  Заголовок сообщения:  Re: Библиотека DS1302  
Цитата
добрый час!
Спасибо за библиотеку, но для полноты понимания хотелось бы уточнить:
в программе в нескольких местах используется подпрограммы
Push Pop достаточно ли сохранять SREGr16 r17 или нужно еще что-то вставить
Сообщение Добавлено: 15 апр 2015, 16:29
  Заголовок сообщения:  Re: Библиотека DS1302  
Цитата
Отлично! :OK:
Сообщение Добавлено: 31 мар 2015, 20:23
  Заголовок сообщения:  Библиотека DS1302  
Цитата
Библиотека предназначена для работы с микросхемой часов реального времени DS1302. НЕ ПУТАТЬ С DS1307 !
DS1302 удобна для постановки отметок времени при контроле за изменяющимися процессами.
В тестовой программе используется просто как часы с выводом времени по запросу.
Тактовая частота микроконтроллера 8000000 Гц.
Схема для тестирования в файле Test_PCF8574.spl7.
Подпрогрфммы библиотеки:
ds1302_init - Инициализация битов портов для работы с МС DS1302
ds1302_STOP - остановка тактового генератора DS1302
ds1302_START - запуск тактового генератора DS1302
ds1302_Protection_ON - Запись бита защиты от записи в МС DS1302
ds1302_Protection_OFF - Снятие бита защиты от записи в МС DS1302
ds1302_wtite_clock_RAM (addr,byte) - запись в DS1302 фиксированного байта(byte) по адресу(addr) регистра или памяти МС
ds1302_wtite_chip_RAM (addr,reg) - запись в DS1302 содержимого регистра байта(reg) по адресу(addr) регистра или памяти DS1302
ds1302_read_clock_RAM (addr) - чтение по адресу(addr) содержимого регистра или памяти DS1302. Результат в регистре WL (r26)
ds1302_read_clock_burst - Чтение всех регистров часов (8 байт) в выделенный буфер в SRAM микроконтроллера
ds1302_write_clock_burst - запись всех регистров часов (8 байт) из выделенного буфера в SRAM микроконтроллера
ds1302_read_ram_burst - Чтение всех ячеек памяти DS1302 (31 байт) в выделенный буфер в SRAM микроконтроллера
ds1302_write_ram_burst - запись всех ячеек памяти DS1302 (31 байт) из выделенного буфера в SRAM микроконтроллера

Для работы с тестовой программой рекомендую программу RH_COM_tester, есть в архиве.
Чтение времени и даты t или T - из МС часов получим ЧЧ:МИН:СЕК ДД/МЕС/ГГ День недели.
Пакетное чтение ОЗУ DS1302 s или S - из МС DS1302 получим содержимое тестовой записи 31 байт (программа при запуске кое что туда запишет :) )
Установка года - y15Y15 (15 год)
Установка месяца - p01p01 (январь - 01... декабрь -12)
Установка календарного дня - d01d01 (диапазон - 01... 31)
Установка часа - h01h01 (диапазон - 00... 23)
Установка минут - m00m00 (диапазон - 00... 59)
Установка дня недели - w01w01 (01-воскр, 02-понед, 03-среда....07-суббота)


Вложения:
LIB_DS1302.ZIP [293.74 КБ]
Скачиваний: 2154
Сообщение Добавлено: 31 мар 2015, 19:20

Часовой пояс: UTC + 3 часа [ Летнее время ]


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