Chyba STM v CUBE pro 32F1xx
Jaroslav Buchta
jaroslav.buchta na hascomp.cz
Sobota Leden 2 09:06:32 CET 2016
Potrabila me chybicka pri premapovani pinu - problem je v tom, ze bity
SWJ_CFG v AFIO_MAPR jsou v DS oznaceny jako WO!!! a u nekterych!!!
procesoru se z registru precte nesmysl, vysledkem je nemoznost ladeni a
programovani flash bez resetu (malem uz jsem sahal po pajce, ze procesor
vymenim...)
V cube je manipulace stylem AFIO_MAPR |= xxx coz samozrejme nefunguje
dobre. Uprava (zbytecne rozepsana) vypada treba takhle:
//__HAL_AFIO_REMAP_USART1_ENABLE(); // NEFUNGUJE
/* USER CODE BEGIN USART1_MspInit 1 */
uint32_t n = AFIO->MAPR;
n = (n & ~AFIO_MAPR_SWJ_CFG) | AFIO_MAPR_SWJ_CFG_JTAGDISABLE |
AFIO_MAPR_USART1_REMAP;
AFIO->MAPR = n;
/* USER CODE END USART1_MspInit 1 */
Uz mi prijde, ze tech chybicek v CUBE je nejak moc. Obsluha ethernetu a
SD karty u M4 a M7 je taky zprasena neskutecne. (M3 asi nebude jinak)
Ale furt lepsi nez arduino, tezil jsem zdrojaky pro obsluhu displeje a
tak zprasene kody jsem jeste nikde nevidel.
Další informace o konferenci Hw-list