stm32f4 DS1307

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

stm32f4 DS1307

Сообщение ivan dimir »

rtc_chasi.c
(945 байт) 181 скачивание
Как правильно запустить часы ds1307.?
Вложения
rts_chasi.h
(583 байт) 177 скачиваний
main.c
(20.73 КБ) 177 скачиваний
Реклама
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: stm32f4 DS1307

Сообщение BlackKilkennyCat »

По адресу 0x00 установить 7-ой бит в 0.
Реклама
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

Re: stm32f4 DS1307

Сообщение ivan dimir »

[uquote="BlackKilkennyCat",url="/forum/viewtopic.php?p=3945987#p3945987"]По адресу 0x00 установить 7-ой бит в 0.[/uquote]
Вы имеете ввду что пподпрограмма записи написана немного не верно?

Добавлено after 2 minutes 34 seconds:
а как это пишится и куда его приципить?
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: stm32f4 DS1307

Сообщение BlackKilkennyCat »

Я имею ввиду ответ на вопрос.
Вопрос звучит: "Как правильно запустить часы ds1307"
Мой ответ: "По адресу 0x00 установить 7-ой бит в 0." Полагаю, не нужно напоминать, что при этом к ним должно приходить питание.
Как написана подпрограмма я не увидел - подобную кашу читать сложно. Можно, но мне сегодня лениво, мож кто другой разберется...
а как это пишится и куда его приципить?
Вы можете сами ответить на этот вопрос (а также все следующие), если глянете документацию на RTC DS1307. Там будет сказано, что они управляются через интерфейс I2C. Прочитав про него (I2С), Вы поймете, что пишется это так: посылка на шину адреса устройства с битом записи, адреса регистра, данных регистра.
Обычно, программист использует готовый модуль работы с I2C.
Например, у меня бы это выглядело бы так: Error = I2C_Send(DS1307_Address, 0x00, 0x80);
При этом сбросились бы секунды.

http://easyelectronics.ru/interface-bus-iic-i2c.html
Реклама
Эиком - электронные компоненты и радиодетали
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

Re: stm32f4 DS1307

Сообщение ivan dimir »

Я понял.i2c настроил верно.Но вот этот момент упустил.0x00-адресс секунд.А 0x80?
Реклама
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: stm32f4 DS1307

Сообщение BlackKilkennyCat »

Вы можете сами ответить на этот вопрос (а также все следующие), если глянете документацию на RTC DS1307.

0x80 - это данные.
И, кстати, приведенным примером команды я не только сбросил секунды, но и выключил часы.
Реклама
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

Re: stm32f4 DS1307

Сообщение ivan dimir »

Спасибо.Буду разбиратся.С EEprom разоьрался.Правда нестандартно записывал 2байтовое число.Ну а как же адрес RTC DS1307 и 8бит в 0?
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: stm32f4 DS1307

Сообщение BlackKilkennyCat »

Изображение
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

Re: stm32f4 DS1307

Сообщение ivan dimir »

У меня к вам просьба.Вы не могли бы показать именно этот код в программе?
Аватара пользователя
240265
Электрический кот
Сообщения: 1029
Зарегистрирован: Сб мар 09, 2013 11:29:22
Откуда: 40RUS, Жуков

Re: stm32f4 DS1307

Сообщение 240265 »

А лучше написать программу полностью :)) :)) :facepalm:
IVL ex UA6PJ
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: stm32f4 DS1307

Сообщение BlackKilkennyCat »

В моей программе? Могу, отчего ж не мочь-то....

Код: Выделить всё

Error = I2C_Send(DS1307_Address, 0x00, 0x00); // Run DS1307  (clear bit CH) and clear seconds
if (Error)
{
  MessageShow("Incorrect start of the RTC");
  ErrorTimeOut(5); // Setting time (in seconds) to wait for retrying an operation 
}
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

Re: stm32f4 DS1307

Сообщение ivan dimir »

[uquote="240265",url="/forum/viewtopic.php?p=3946409#p3946409"]А лучше написать программу полностью :)) :)) :facepalm:[/uquote] самому .Потому что где этот 7 бит ?
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: stm32f4 DS1307

Сообщение BlackKilkennyCat »

Я выше выкладывал картинку. там написано BIT 7
Вам рано еще браться за подобное. Начните с самых-самых азов, для самых начинающих,где рассказывается про двоичную логику, про то, что такое бит и что такое байт, затем про шестнадцатеричную систему... и т.д.
ivan dimir
Мучитель микросхем
Сообщения: 440
Зарегистрирован: Вс дек 29, 2019 08:05:21

Re: stm32f4 DS1307

Сообщение ivan dimir »

0b00000000 вот двоичная логика .Я прочитал дата шит.Ds3231 лучше.

Добавлено after 44 seconds:
в байте 8 битов.

Добавлено after 4 minutes 23 seconds:
И про шестнадцатеричную систему я знал ещё с 18 лет.Вообщем спасибо вам и с наступающим Новым годом 2021 .Я вообще то преследую одну цель .СТМ только год занимаюсь.Сделать самодельный частотник.

Добавлено after 1 minute 2 seconds:
Задача для меня фантастическая.3 фазы уже знаю как произвести.
BlackKilkennyCat
Собутыльник Кота
Сообщения: 2905
Зарегистрирован: Ср ноя 29, 2017 06:58:50

Re: stm32f4 DS1307

Сообщение BlackKilkennyCat »

ivan dimir писал(а):b00000000 вот двоичная логика
Нет. Это всего лишь запись числа в неофициальном двоичном формате. Это не логика.
ivan dimir писал(а):в байте 8 битов.
Нет. Это справедливо только для 8-битных байтов. В байте может быть сколько угодно бит.
Ответить

Вернуться в «ARM»