2、其次打开dsp以后在其主页面检查网络是否敏樱激能使用。
3、最后在dsp内点击重新连接即可解决中端冲突。桥袜
最简单的情况,拿溢出中断来说吧。当你设置的值超过计数值后,就会产生溢出中断,贴个程序你看一下。#include "DSP281x_Device.h"
Uint16 Number_10ms = 0
#pragma CODE_SECTION(User_T3PINT_Isr, "ramfuncs")
interrupt void User_T3PINT_Isr(void)// EV-A
{
Number_10ms = (Number_10ms + 1) % 188
if(Number_20ms==0)
{
/////此处写你自己想要在中断中执行的函数。因为这个时中弊候就会产生中断。
}
EvbRegs.EVBIFRA.bit.T3PINT=1
PieCtrlRegs.PIEACK.all |= PIEACK_GROUP4
PieCtrlRegs.PIEIER2.bit.INTx4=1
IER|=M_INT2
}
void main(void)
{
InitSysCtrl()
DINT
InitPieCtrl()
IER = 0x0000
IFR = 0x0000
InitPieVectTable()
EALLOW
PieVectTable.T3PINT = &User_T3PINT_Isr
EDIS
MemCopy(&RamfuncsLoadStart,&RamfuncsLoadEnd,&RamfuncsRunStart)
EnT3PINT()
EINT // Enable Global interrupt INTM
ERTM // Enable Global realtime interrupt DBGM
while(1)
{}//循环,等待中断
}
好了,大概就是老培拍这样了,中断有很多种的,还是需要自己去慢慢侍羡弄的哦
TI公司的DSP的中断机构 *** 作规则比较复杂,需具体查有关资料。因条件限制我现在只能查到240的资料,但据我所知240和2407很接近,可能是一样的。故我下面按240叙述。即使有细节不同,道理是一样的。然后您再查2407的资料对一下,如有不同的细节可自己更改。还有,240中“定时器3的周期中断”不是用int2而是用int3,故不符合您所述的问题了。或许2407有不同?或许您的笔误没橘森?不管如何,我下面按照假定您用到了另一个也用int2的中断源,来叙述。
具体您说的情况:
中断向量表中,int2的入口位置写一个跳转指令,跳到您所安排的“定时器1的周期中断”和“另一个int2中断”的共用中断服务程序入口处。
该共用中断服务程序入口处要做的 *** 作是:
(1)保护现场(下面的 *** 作中立即要用到的必须在这里保护,其余的,可以分别在分支中保护);
(2)读取EVIVRA(这是事件管理器专为区分各个中断源而设的代号的存放处。注意即使不需要区分伍游中断源,也应该读取一次EVIVRA,因为只有读了它,才会清除事件管理器中的该次中断的挂号信息);
(3)判断:如果读得的代号是0027h,说明是“定时器1的周期中断”,可跳转到该中断的分支程序去,否则,跳转到“另一个int2中断”的分枯亩支程序去。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)