interrupts.c
来自「用于TM1300/PNX1300系列DSP(主要用于视频处理)的协处理器的源码。」· C语言 代码 · 共 68 行
C
68 行
#include <stdio.h>
#include <tm1/tmInterrupts.h>
extern UInt _node_number;
extern UInt _number_of_nodes;
#define INTERRUPT intAPP
volatile Bool got_it = False;
static void
notify(void)
{
#pragma TCS_interruptible_handler
got_it = True;
if (_node_number != 0) {
intRaise_M( (_node_number + 1) % _number_of_nodes, INTERRUPT );
}
}
void
wait_a_while()
{
int i;
for (i = 0; i < 100000; i++) {
}
}
main()
{
intInstanceSetup_t setup;
if (intOpen(INTERRUPT) != 0) {
exit(-1);
} else {
setup.enabled = True;
setup.handler = notify;
setup.priority = intPRIO_6;
setup.level_triggered = False;
intInstanceSetup(INTERRUPT, &setup);
wait_a_while();
if (_node_number == 0
&& _number_of_nodes > 1
) {
intRaise_M(1, INTERRUPT);
}
while (!got_it) {
}
printf("node %d: GOT IT!!!\n", _node_number);
}
exit(0);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?