如果出现下面的错误
undefined first referenced
symbol in file
--------- ----------------
_main C:tic2000cgtoolslibrts2800_ml.lib
>> error: symbol referencing errors - './Debug/sci7.out' not built
Build Complete,
1 Errors, 0 Warnings, 0 Remarks.
这是因为缺少main 这个文件,只要将它添加到工程文件里!
DSP外部中断
分类:默认栏目要使用外部中断要从两方面进行准备:首先,在硬件上必须将中断信号引到DSP的外部中断引脚上。比如:FPGA的一个output发出中断请求信号那么就将这个管脚与DSP的XINT1相连,XINT1可以通过一个4.7k的电阻上拉到3.3v,
也可以不拉。其次是在软件上的配置:1.初始外部中断寄存器
void Xint1_init(void)
{
DINT;
XIntruptRegs.XINT1CR.bit.ENABLE=1;//使能外部中断
XIntruptRegs.XINT1CR.bit.POLARITY=1;//中断产生在上升沿,若为0中断产生在下降沿
EINT;
}
由于这是一个函数,所以也要有函数声明,函数调用,函数定义。
2使能cpu INT1中断
PieCtrlRegs.PIEIER1.bit.INTx4 = 1; //Enable all XINT1 interrupt
IER |= 0x100; // Enable CPU INT
IER |= 0x0001; // enable PIEIER1, and INT1
3.编写中断服务程序,
interrupt void Xint1_ISR(void)
{
.......
PieCtrlRegs.PIEACK.all|=0x0001;
}
4将中断服务程序入口地址赋给中断向量表
PieVectTable.XINT1=&Xint1_ISR;
总结起来使用外部中断的步骤如下:
1声明外部中断服务程序和外部中断初始化函数
void Xint1_init(void);
interrupt void Xint1_ISR(void);
2将中断服务程序入口地址赋给中断向量表
PieVectTable.XINT1=&Xint1_ISR;
3使能cpu INT1中断
IER |= 0x0001; // enable PIEIER1, and INT1
PieCtrlRegs.PIEIER1.bit.INTx4 = 1; //Enable all XINT1 interrupt
4. 在主函数体外定义专断初始化函数和中断服务程序
ti2812中用C语言来实现中断的说明
分类:默认栏目F2812中用C语言来实现中断的说明:
1.首先在.cmd中定位系统中断表:
MEMORY
{
PAGE 0 :
......................................
PAGE 1 :
......................................
PIE_VECT : origin = 0x000D00, length = 0x000100
......................................
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-39167-15.html
何谈人人赚钱
还是忍
看完觉得好尴尬
只要不是严重疏忽和恶意