Question
How to map interrupt service routines if developing on VDK platform for
Blackfin processors?
Answer
You can map the interrupt service routine by choosing one of the following ways:
1. Using VDK services: You can use the VDK services to hook an interrupt
service routine. Go to the Kernal tab in the project window and right click on
"Interrupts" and then click on "New Interrupt" and add your code in the
generated C++/C/asm source file.
2. Just as standalone applications: One can map interrupts just as you
implement it in the standalone program. Please refer to the Program Sequencer
chapter (Chapter 4) of the ADSP-BF53x/56x processor programming reference
manual for more details or follow any
of the example included in the VisualDSP++ program folder (for e.g. C:\Program
Files\Analog Devices\VisualDSP 4.5\Blackfin\Examples\ADSP-BF533 EZ-Kit
Lite\Video Input (C) to hook an interrupt).
Also, be careful while using the IMASK register in VDK based applications.
Modify IMASK register in
critical regions only (disabling all interupts in the system).
3. Using System services: Using the system services API's (adi_int_CECHook())
or if implementing using the device driver model than one can use the Callback
service.