eddy_em: (Default)
[personal profile] eddy_em
Начал ковыряться с RTC. В отличие от убогого F103, здесь все с регистрами почти нормально (разве что они в BCD формате, да еще и кривом, что добавляет немало хлопот с лишними вычислениями). Инициализация достаточно просто делается, нужно лишь почитать мануал: убираем защиту от чтения в регистре PWR->CR1, запускаем тактирование, запускаем LSE, настраиваем тактирование RTC от LSE, разблокируем от записи регистры конфигурации RTC (для этого последовательно пишем 0xCA и 0x53 в регистр RTC->WPR), входим в режим инициализации (RTC->ICSR |= RTC_ICSR_INIT), ждем установки флага инициализации, устанавливаем RTC->PRER (0x7f и 0xff), при необходимости выставляем дату, выходим из режима инициализации. Вуаля — RTC работает. Причем, работает он и в режиме отладки, и в процессе софтового сброса.
Со всякими будильниками заморачиваться не буду. Пока написал функцию представления времени в стандартном формате команды date. Потом еще сделаю установку заданных даты/времени и коррекцию частоты (регистром RTC->CALR).
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org

April 2025

S M T W T F S
  1 23 45
67 89101112
13141516171819
20212223242526
27282930   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 22nd, 2025 06:08 pm
Powered by Dreamwidth Studios