Infineon XC16x Boards (using the Altium Compiler)

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
we have 2 Infineon Demo boards V202b for the XC164
and the XC161. In the meantime my application runs
well including correct speed and PLL but the thing
crashs if a NMI occurs. The correct vector location
(n+8) has been terminated by RETI and I assume this
is correct.

Now I tried to load the Altium example from the CD
what has been shipped as add-on with the demo board.  
The file is toggle_pin.hex what I load into flash.
This works fine and yellow LED is blinking with and
without debugger if board is in internal standalone
mode. If I press the NMI button the progam crashs and
yellow LED stops blinking.

2 boards, 2 applications, same behavior.
Any bugs known?

Re: Infineon XC16x Boards (using the Altium Compiler)
Quoted text here. Click to load it

I believe you assume wrong. Read up on NMI. For normal peripheral interrupts,
the interrupt flag is cleared by the CPU before entering the ISR. Not so for
NMI and traps.

Quoted text here. Click to load it

Does the code for toggle_pin show that it handles NMI? Don't assume that the
person who wrote the demo program handles every possible occurence. Many times,
the demo code is the bare minimum code.

Re: Infineon XC16x Boards (using the Altium Compiler)

Quoted text here. Click to load it

Make sure that you clear NMI (bit 15) in the TFR prior to return. If you
don't it will immediately interrupt again thus causing the system to hang.
All Class A & B Interrupts require this to function correctly.

Heath




Re: Infineon XC16x Boards (using the Altium Compiler)
Quoted text here. Click to load it

many thanks for this accurate hint. It works like expected. There
is no bouncing at the NMI and I can count the number of edges...

Site Timeline