PSOC中断

[复制链接]
884|13
 楼主| 小小猫咪 发表于 2016-6-22 21:31 | 显示全部楼层 |阅读模式
PSOC的中断和其他单片机一样的吧,就是只有一个中断,然后通过中断标志位,跳入相应定好的中断入口地址,没错吧
 楼主| 小小猫咪 发表于 2016-6-22 21:32 | 显示全部楼层
还有,也不能嵌入中断,也就是在一个中断程序运行时,其他一个更高级的中断来了,就会进入高级的中断(虽然经我查看来说,应该也没什么中断优先权)里面也是不行的吧。。。
kangzj 发表于 2016-6-22 21:33 | 显示全部楼层
理解不太对哦
zwll 发表于 2016-6-22 21:35 | 显示全部楼层
PSoC1 并非只有一个中断,每个中断源都对应一个独立的中断,这些中断信号最后被送到优先级编码器然后指向不同的中断向量。
juventus9554 发表于 2016-6-22 21:36 | 显示全部楼层
因为优先级编码器的存在,中断还是有优先级的。
司徒老鹰 发表于 2016-6-22 21:37 | 显示全部楼层
嗯,楼主可能看过 boot.sam 的源码。里面定义了所有中断向量的入口地址
llljh 发表于 2016-6-22 21:37 | 显示全部楼层
是的,中断向量越靠前终端的优先级越高。
dingy 发表于 2016-6-22 21:38 | 显示全部楼层
楼主第一下 PSoC1 TRM 中的中断那一章,TRM讲的挺详细的
 楼主| 小小猫咪 发表于 2016-6-22 21:39 | 显示全部楼层
谢谢啊,我技术手册都有看的,可能我英文不好吧,我没看到中断优先权可以在哪个寄存器修改,还有按这理论,我从BOOT.ASM修改其中断向量入口地址,就可以改变优先权了是吗?
pengf 发表于 2016-6-22 21:40 | 显示全部楼层

没有修改中断优先级的寄存器。
这么说吧, PSoC1 里面的中断是有优先级的,但是这个优先级是固定的,客户不可以更改。每个中断在哪个优先级是由中断控制器里面的硬件(优先编码器模块)决定的,没有办法通过寄存器修改。
supernan 发表于 2016-6-22 21:42 | 显示全部楼层
虽然各个中断的中断优先级是固定的,比如在 CY8C22545 中 Reset>LVD>Analog Column 0>Analog Column 1>Analog Column 2>Analog Column 3>GPIO>DBC00>DBC01>DCC02>DCC03>DBC10 >DBC11>DCC12>DCC13.... 但是在一定范围内我们可以通过调整数字/模拟模块的放置位置来调整中断优先级。
 楼主| 小小猫咪 发表于 2016-6-22 21:43 | 显示全部楼层
啥意思啊
栩栩如生 发表于 2016-6-22 21:45 | 显示全部楼层
比如我有两个PWM8 模块, 我希望 PWM8_1 的中断优先级高于 PWM8_2. 因为 DBC00 的中断优先级高于DBC01, 那么我可以选择将PWM8_1 放置在 DBC00, PWM8_2 放置在 DBC01。
 楼主| 小小猫咪 发表于 2016-6-22 21:46 | 显示全部楼层
哦,我知道了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

313

主题

3014

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部