Dr.Alex
Dec 15 2014, 10:51
У меня часовой кварц генерит, частоту даже можно вывести на MCO1, но после установки бита INIT бит INITF никогда не встаёт, и проинициализировать часы соотвецно невозможно.
У разных по разному. Какой у вас проц из 4хх ?
Dr.Alex
Dec 15 2014, 10:59
439
у меня из старших 417, 427, 429, 446 в проектах. Так при перходе например с 417 на 427 работать с DMA пришлось по новому, писать заново весь код.
Много чего добавили в архитектуре проца 427. Читайте эраты на 439, проерьте вашу ревизию, мож там чего. С INIT, INITF там по другому против 407. Первые выпуски чипов с багами обычно и они суют в дешевые киты для приманки. Так в третьем выпуске 427, v1.0 USB2.0 не алё, а в последней v3.0 без проблем.
kolobok0
Dec 15 2014, 12:02
Цитата(Dr.Alex @ Dec 15 2014, 13:51)

...соотвецно невозможно.
417 - вроде как подводных камней не наблюдал.
какой ревизии 417, и потом что из периферии и как юзается ...
Dr.Alex
Dec 15 2014, 13:12
У меня на ките 429 рев Y и две своих платы 439 рев 1 нихрена не работает.
adnega
Dec 15 2014, 13:58
Все работает.
CODE
void init_RTC(void)
{
PWR->CR |= (1 << PWR_CR_DPB);
RTC->WPR = 0xCA;
RTC->WPR = 0x53;
RCC->BDCR =
(1 << RCC_BDCR_LSEON)
| (RCC_RTC_LSE_CLOCK << RCC_BDCR_RTCSEL)
| (1 << RCC_BDCR_RTCEN);
RTC->ISR |= (1 << RTC_ISR_INIT);
con_str("\n\r{1}\n\r"); con_start();
while(~RTC->ISR & (1 << RTC_ISR_INITF));
con_str("\n\r{2}\n\r"); con_start();
RTC->PRER = (0x7F << RTC_PRER_PREDIV_A) | (0xFF << RTC_PRER_PREDIV_S);
RTC->PRER = (0x7F << RTC_PRER_PREDIV_A) | (0xFF << RTC_PRER_PREDIV_S);
RTC->TR = 0;
RTC->DR = 0;
RTC->ALRMAR = (1UL << 31) | (1 << 24) | (2 << 4);
RTC->CR = (0 << RTC_CR_FMT) | (1 << 21) | (1 << 8);
RTC->TAFCR = (1 << 18);
RTC->ISR &= ~((1 << RTC_ISR_INIT) | (1 << RTC_ISR_ALRAF));
con_str("\n\r{3}\n\r"); con_start();
while(~RTC->ISR & (1 << RTC_ISR_RSF));
con_str("\n\r{4}\n\r"); con_start();
RTC->WPR = 0xFF;
}
а перед этим
RCC->APB1ENR = 0
| (0 << RCC_APB1_TIM12)
| (1 << RCC_APB1_PWR);
так, да. Но rev.Y я бы выбросил.
Dr.Alex
Dec 15 2014, 14:04
Разобралсо, оказуется их HAL нигде не ставил бит RTCEN. Заработало.
Вот так вот чужим пользоваться, вроде и помогает иногда, а другой раз ищи-свищи где там чё происходит.. :-о
Цитата(Aner @ Dec 15 2014, 16:01)

у меня из старших 417, 427, 429, 446 в проектах.
446 еще у ST не появился ...
ps извиняюсь, не так искал - есть такой .
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.