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

 
 
> STM32L1xx... калибровка HSI. Непонятный глюк.
Budek
сообщение Oct 12 2012, 16:48
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 132
Регистрация: 17-02-08
Из: Уфа
Пользователь №: 35 116



Доброго времени всем!
Решил я замахнуться на STM и почти сразу же отказаться от кварца (оставив только часовой).
Вроде изучил AN3300, ее firmware (на основе чего и запускаю кусок в своем проекте).
Но тут заметил, что при записи калибровочных бит HSITRIM в регистр RCC_ICSCR почему то изменяются ReadOnly биты HSICAL.
Мои конкретные данные:
После сброса читаю регистр... - 0x006EB073
Пытаюсь записать (в биты 8-12) значение 0x0C (двумя вариантами):
а) буржуйской функцией RCC_AdjustHSICalibrationValue(0x0C);
б) просто строкой RCC->ICSCR = 0x006EAC73;
при любой попытке читаю регистр:... 0x006E0C6F
Как вообще такое возможно?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Fedor
сообщение Oct 13 2012, 18:45
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 26-10-05
Пользователь №: 10 125



Цитата(Budek @ Oct 12 2012, 22:48) *
Доброго времени всем!
Решил я замахнуться на STM и почти сразу же отказаться от кварца (оставив только часовой).
Вроде изучил AN3300, ее firmware (на основе чего и запускаю кусок в своем проекте).
Но тут заметил, что при записи калибровочных бит HSITRIM в регистр RCC_ICSCR почему то изменяются ReadOnly биты HSICAL.
Мои конкретные данные:
После сброса читаю регистр... - 0x006EB073
Пытаюсь записать (в биты 8-12) значение 0x0C (двумя вариантами):
а) буржуйской функцией RCC_AdjustHSICalibrationValue(0x0C);
б) просто строкой RCC->ICSCR = 0x006EAC73;
при любой попытке читаю регистр:... 0x006E0C6F
Как вообще такое возможно?

Привет
а ты дождался
The HSIRDY flag in the RCC_CR indicates wether the HSI oscillator is stable or not. At
startup, the HSI RC output clock is not released until this bit is set by hardware.
?
стр 88/809
Doc ID 15965 Rev 5
Go to the top of the page
 
+Quote Post
Budek
сообщение Oct 14 2012, 06:05
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 132
Регистрация: 17-02-08
Из: Уфа
Пользователь №: 35 116



Не совсем понял... Какая связь? Я просто читаю регистр, в котором есть биты только для чтения. Но они почему то изменились...
Go to the top of the page
 
+Quote Post
Fedor
сообщение Oct 14 2012, 07:05
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 26-10-05
Пользователь №: 10 125



Цитата(Budek @ Oct 14 2012, 12:05) *
Не совсем понял... Какая связь? Я просто читаю регистр, в котором есть биты только для чтения. Но они почему то изменились...

Было предположение, что не дождался процесса окончания калибровки, то бишь стабильной работы генератора от HSI.



Цитата(Budek @ Oct 14 2012, 12:05) *
Не совсем понял... Какая связь? Я просто читаю регистр, в котором есть биты только для чтения. Но они почему то изменились...

Еще как вариант из того же аппнота

For the MSI oscillator, the calibration value is loaded in the MSICAL[7:0] bits after reset.
Eight trimming bits MSITRIM[7:0] are used giving a wide tuning range. The calibration
is based on adding the default MSICAL[7:0] bits (reset value) to the MSITRIM[7:0] bits.
The result is stored in MSICAL[7:0]:



Гугл дает перевод следующий

ля MSI генератор, калибровки значение загружается в MSICAL [7:0] бита после сброса.
Восемь обрезки бит MSITRIM [7:0] используются предоставляя широкий диапазон перестройки.калибровка
основан на добавлении по умолчанию MSICAL [7:0] биты (сброс значения) MSITRIM [7:0] биты.
Результат сохраняется в MSICAL [7:0]:
Doc ID 18148 Rev 2
7/28


Т.е. вроде как бы логично, когда пишешь в калибровочный трим регистр число обрабатывается и перезаписывается в MSICAL.
Хотя по твоему примеру значение в MSICAL должно быть другим, поэтому как раз может и надо дождаться процесса окончания калибровки.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 19th August 2025 - 15:50
Рейтинг@Mail.ru


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