Arm Community
Site
Search
User
Site
Search
User
Groups
Research Collaboration and Enablement
DesignStart
Education Hub
Innovation
Open Source Software and Platforms
Forums
AI and ML forum
Architectures and Processors forum
Arm Development Platforms forum
Arm Development Studio forum
Arm Virtual Hardware forum
Automotive forum
Compilers and Libraries forum
Graphics, Gaming, and VR forum
High Performance Computing (HPC) forum
Infrastructure Solutions forum
Internet of Things (IoT) forum
Keil forum
Morello Forum
Operating Systems forum
SoC Design and Simulation forum
中文社区论区
Blogs
AI and ML blog
Announcements
Architectures and Processors blog
Automotive blog
Graphics, Gaming, and VR blog
High Performance Computing (HPC) blog
Infrastructure Solutions blog
Innovation blog
Internet of Things (IoT) blog
Operating Systems blog
Research Articles
SoC Design and Simulation blog
Tools, Software and IDEs blog
中文社区博客
Support
Arm Support Services
Documentation
Downloads
Training
Arm Approved program
Arm Design Reviews
Community Help
More
Cancel
Support forums
Arm Development Studio forum
Interrupt not seen by M0 core
Jump...
Cancel
Locked
Locked
Replies
3 replies
Subscribers
121 subscribers
Views
2394 views
Users
0 members are here
Options
Share
More actions
Cancel
Related
How was your experience today?
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion
Interrupt not seen by M0 core
Offline
John Mount
over 9 years ago
Note: This was originally posted on 13th October 2011 at
http://forums.arm.com
I am sending an interrupt to the M0 from another processor. In the NVIC registers I can see the interrupt pending, and I also can see that the interrupt in question is enabled. The firmware never see's the interrupt. There must be another level of interrupt enable that I have missed. Any suggestions? I attached my vector table. I am asserting general interrupt 0.
Parents
Offline
Joseph Yiu
over 9 years ago
Note: This was originally posted on 17th October 2011 at
http://forums.arm.com
Hi John,
The most likely cause is that the processor has not been reset after the program memory updated.
When the emulator starts, the program memory might be invalid and the core enters hardfault, and then lockup if another fault occurred inside hardfault handler. After the program is updated, you might have changed the PC value and SP value, but not resetting the processor before starting the program execution. In this case, the priority in the NVIC still think that it is in hard fault (priority level -1) and therefore does not accept interrupts.
Also, please check the generated program image (disassembled listing / hex / binary). I know that you have attached the vector table source code, but whether the vector table is placed correctly in the compiled image is a slightly different question.
Which development tool chain do you use?
Also, as you are using Cadence Palladium, I guess your company is a ARM customer and maybe you are entitle to ARM support. In such case it might be useful if you can contact ARM support directly. If needed, our FAE can visit you and might help identify issues in your system setup.
regards,
Joseph
Cancel
Up
0
Down
Cancel
Reply
Offline
Joseph Yiu
over 9 years ago
Note: This was originally posted on 17th October 2011 at
http://forums.arm.com
Hi John,
The most likely cause is that the processor has not been reset after the program memory updated.
When the emulator starts, the program memory might be invalid and the core enters hardfault, and then lockup if another fault occurred inside hardfault handler. After the program is updated, you might have changed the PC value and SP value, but not resetting the processor before starting the program execution. In this case, the priority in the NVIC still think that it is in hard fault (priority level -1) and therefore does not accept interrupts.
Also, please check the generated program image (disassembled listing / hex / binary). I know that you have attached the vector table source code, but whether the vector table is placed correctly in the compiled image is a slightly different question.
Which development tool chain do you use?
Also, as you are using Cadence Palladium, I guess your company is a ARM customer and maybe you are entitle to ARM support. In such case it might be useful if you can contact ARM support directly. If needed, our FAE can visit you and might help identify issues in your system setup.
regards,
Joseph
Cancel
Up
0
Down
Cancel
Children
No data