RE: Programování STM32 - přerušení

cizek.milan na seznam.cz cizek.milan na seznam.cz
Čtvrtek Říjen 10 11:54:14 CEST 2019


Ahoj,

ano už jsem se to dočetl v sheetu k nucleo, je tam protažený ten signál z 8MHz krystalu STLINKu a připojen k STM32.
Takže mi to funguje i s aktivním HSE.

Nicméně mám teď jiný problém. Myslel jsem, že to souvisí právě s HSE, ale ne.
Vypsani stringu do uartu, vypise mi to vždy jen část retezce...
https://snipboard.io/oKpLk7.jpg

Použíám tuto funkci z internetu, ale přijde mi OK...
void debugPrint(UART_HandleTypeDef *huart, char _out[]) {
  HAL_UART_Transmit(huart, (uint8_t *) _out, strlen(_out), 10);
}

Čím by to mohlo být?
M.

> -----Original Message-----
> Jestli mate nucleo, tak je bezne HSE oscilator napojen na STLINK
> hodinovy vystup 8MHz. Spravne je nastavit bypass jako typ oscilatoru.
> Pouzivat UART s RC oscilatorem myslim neni dobry napad, i kdyz to muze
> za nejakych podminek fungovat.
> S tim prerusenim je to obcas chaos, teoreticky k nemu asi behem
> krokovani muze s nejakou pravdepodobnosti dojit ale vsimnu si toho jen
> naprosto vyjimecne. Obsluha preruseni jde ale bez problemu krokovat,
> kdyz se do ni vlozi breakpoint. Vubec by se podle mne krokovani melo
> pouzivat spis v blizkem okoli breakpointu, jinak to dost muze rozhodit
> realnou funkci vsech moznych periferii. Tedy metoda vlozit breakpoint
> tam, kde me to zajima a po preruseni programu prozkoumat stav
> promennych, kousek treba popojet krokovanim a spustit program dal.
> 



Další informace o konferenci Hw-list