реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> STM32, backup registers, как бы поудобнее реализовать с ними работу
Serj78
сообщение Dec 14 2010, 06:55
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 966
Регистрация: 27-05-06
Из: СПб
Пользователь №: 17 499



А что включают ваши функции? (какие биты в каких регистрах)
RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP | RCC_APB1Periph_PWR,ENABLE); // вкл тактирование нужной периферии
PWR_BackupAccessCmd(ENABLE);// разрешаем доступ к BKP

Я включаю так:

RCC->APB1ENR|=(1<<27); // включили тактирование BKP
PWR->CR|=(1<<8); // разрешили запись в BKP

Включаю после включения всего тактирования и запуска PLL. Пробовал и до- не меняется ничего..

Но!! почему-то в отладчике я не вижу в этих регистрах установленных галочек.

А в PWR_CR бит PWR_CR_DBP вообще не выставляется из отладчика sad.gif пропадает сразу..
Go to the top of the page
 
+Quote Post
zoddy
сообщение Dec 14 2010, 07:32
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 4-12-05
Из: Екатеринбург
Пользователь №: 11 773



Цитата(Serj78 @ Dec 14 2010, 11:55) *
А что включают ваши функции? (какие биты в каких регистрах)


Это функции из ST-шной библиотеки. Я особо над ними не заморачивался, выдернул из примера и вставил в свою прогу.

а вообще в Reference Manual написано

Цитата
After reset, access to the Backup registers and RTC is disabled and the Backup domain
(BKP) is protected against possible parasitic write access. To enable access to the Backup
registers and the RTC, proceed as follows:
● enable the power and backup interface clocks by setting the PWREN and BKPEN bits
in the RCC_APB1ENR register
● set the DBP bit the Power Control Register (PWR_CR) to enable access to the Backup
registers and RTC.


Соответственно у Вас закралась ошибка и скорее всего должно быть так
RCC->APB1ENR|=(1<<27)|(1<<28); // включили тактирование BKP и PWR
Go to the top of the page
 
+Quote Post
Serj78
сообщение Dec 14 2010, 07:52
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 966
Регистрация: 27-05-06
Из: СПб
Пользователь №: 17 499



Да, спасибо! узел контроля питания ( 28-й бит) включить забыл sm.gif !

Go to the top of the page
 
+Quote Post
zoddy
сообщение Dec 14 2010, 07:57
Сообщение #19


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 4-12-05
Из: Екатеринбург
Пользователь №: 11 773



В общем, проверил на своей железяке вариант

RCC-> APB1ENR|=(1<<27)|(1<<28);
PWR-> CR |=(1<<8);

...работает


Цитата(Serj78 @ Dec 14 2010, 12:52) *
Да, спасибо! узел контроля питания ( 28-й бит) включить забыл sm.gif !


Вам тож спасибо, заодно свою программу чуток укоротил :-D... ато все руки не доходили!


Сообщение отредактировал zoddy - Dec 14 2010, 07:57
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Dec 14 2010, 15:53
Сообщение #20


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



А если немножко удлиннить программу, написав вместо
Цитата(zoddy @ Dec 14 2010, 12:57) *
RCC-> APB1ENR|=(1<<27)|(1<<28);
PWR-> CR |=(1<<8);

что-то типа
Код
    RCC->APB1ENR |= RCC_APB1ENR_PWREN | RCC_APB1ENR_BKPEN;
    PWR->CR |= PWR_CR_DBP;
, то работать будет так же, а разбираться через месяц или через год - легчеsm.gif
Да и остальным читателям в форуме будет понятнее.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
zoddy
сообщение Dec 15 2010, 04:36
Сообщение #21


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 4-12-05
Из: Екатеринбург
Пользователь №: 11 773



Цитата(AHTOXA @ Dec 14 2010, 23:53) *
А если немножко удлиннить программу, написав вместо


Ну вообще-то... чуть выше по тексту, были приведены комментарии к выполняемым действиям... а уж... в каком виде оформлять битовые маски - это дело вкуса... я в данном случае написал так, как удобно для понимания автору, который задал вопрос :-)
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 09:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01386 секунд с 7
ELECTRONIX ©2004-2016