📄 isr.c
字号:
//////////////////////////////////////////////////////////////////////////
// Copyright (C) 2004, Eyoka @ Microunit
// All Rights Reserved
//________________________________________________________________________
//
// FILENAME: isr.c
// PROJECT: High-Resolution Video System On OMAP
// MODULE: DSP System
// DESCRIPTION: Interrupt Service Routines.
// TARGET CPU: DSP-C55xx of OMAP5910
// VERSION: 0.1
//________________________________________________________________________
//
// REVISE HISTORY
// DATE VERSION AUTHOR DESCRIPTION
// 2004-11-09 0.1 Eyoka Created.
//////////////////////////////////////////////////////////////////////////
#include "dspsys.h"
#include "armdsp.h"
/////////////////////////////////////////////////////////////////////
// GLOBAL VARIABLES
/////////////////////////////////////////////////////////////////////
extern volatile BOOL g_bBusy;
extern volatile BOOL g_bStop;
extern volatile WORD g_Task;
/////////////////////////////////////////////////////////////////////
// Interrupt Service Routines
/////////////////////////////////////////////////////////////////////
//___________________________________________________________________
//
// Mailbox1 ISR
//___________________________________________________________________
//
interrupt void ISR_Mailbox1()
{
WORD data, cmd;
MBX_Read1(&data, &cmd);
if(g_bBusy)
{
// DSP is busy.
puts("dsp busy");
MBX_Write1(0, MBX1CMD_BUSY);
return;
}
switch(cmd)
{
case MBX1CMD_ECHO:
MBX_Write1(data, MBX1CMD_ECHO);
return;
case MBX1CMD_CONVERT:
g_Task = TASK_CONVERT;
return;
case MBX1CMD_FILTER:
g_Task = TASK_FILTER;
return;
case MBX1CMD_JPG_ENCODE:
g_Task = TASK_JPG_ENCODE;
return;
case MBX1CMD_JPG_STOP:
g_bStop = TRUE;
//@@@@@@@@@@@@@@@@@@
// TO DO: check g_bStop flag during encoding
//@@@@@@@@@@@@@@@@@@
return;
case MBX1CMD_JPG_RESET:
g_Task = TASK_JPG_RESET;
return;
case MBX1CMD_JPG_UPDATE_SIZE:
g_Task = TASK_JPG_UPDATE_SIZE;
return;
case MBX1CMD_JPG_UPDATE_QUALITY:
g_Task = TASK_JPG_UPDATE_QUALITY;
return;
case MBX1CMD_JPG_UPDATE_SRCMODE:
g_Task = TASK_JPG_UPDATE_SRCMODE;
return;
default:
MBX_Write1(0, MBX1CMD_ERROR);
}
}
// the end
//////////////////////////////////////////////////////////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -