[elektro] STM32F4 (ARM Cortex M4) Interrupt prioritasok

Pal Lukacs ekegep at yahoo.com
Fri Nov 29 17:29:45 CET 2013


Sziasztok !

Koszonom a valaszokat.

Van ennek nehany lehetosege,... Ha egy preemtion-hoz tartozik ket IT, akkor sem minden esetben igaz, hogy nem szakitjak meg egymast. 
Elolvasgattam az ide tartozo CMSIS fileokat, de nem sokkal lettem okosabb sajnos.

  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;

  
Udv.
Szabi





On Friday, November 29, 2013 8:38 AM, hg12345 <hg12345 at freemail.hu> wrote:
 
Szia,

A CORTEX magok esetén a IT a processzor része, így az ARM doksikban is benne
 van.

Amúgy pont olyan mint más ilyen eszköz. Elvileg 256 szintű piorítási lehetőség van, de ebből csak a felső 4 bitet használják a M3/M4 kivitelben, vagyis csak 16 szintű lehetséges, plusz a hardware-ben fixen  definiáltak, ök a negativ piorítással rendelkezők. A nem negativ IT pioritásuak mind programozhatóak.
A legnagyobb piorítás a 0-s és a legkisebb a 15.

pl.: a két I2S modul pioritását (azonos)  5-re állítod és a SYSTICK-t 7 akkor már nem fogja megszakítani az I2S IT-ket.
  





Pal Lukacs <ekegep at yahoo.com> írta:
>Sziasztok !
>
>STM32F407 uC-n szeretnek 2 darab I2S modul IT-t olyan prioritassal beallitani, hogy egymas utan fussanak le, es egymast ne szakithassak meg, viszont a SysTick IT-t szakitsak meg ha szukseges ( - ez alapbol alacsony prioritasu, csak eppen a csoport konfigokkal vagyok elakadva, nem egeszen ertem hogy mukodik).
>Ha valaki ebben jartas, es tudna egy ket tippet adni,..
>
>Koszonettel
>Szabi
>-----------------------------------------
>          elektro[-flame|-etc]
>

-----------------------------------------
          elektro[-flame|-etc]


More information about the Elektro mailing list