CCS3.3 调试错误 error:this declaration has no storage class or type specifier
在用CCS3.3编译程序时出现如下错误:error: this declaration has no storage class or type specifier
error: declaration is incompatible with "volatile struct PIE_CTRL_REGS PieCtrl" (declared at line 122 of "C:\CCStudio_v3.3\MyProjects\130823 copy copy seam track1111 6 11th\include\DSP28_PieCtrl.h")
error: expected a ";"
该错误提示发生在:PieCtrl.PIEIER1.bit.INTx7=1;
跪求大神指点,谢谢! 不贴出代码,表示无能为力 是不是缺少头文件? NWPU_CHEN 发表于 2014-10-11 11:22 static/image/common/back.gif
不贴出代码,表示无能为力
你说的是全部代码吗?这个代码好长的,有两三千行呢 ndt126 发表于 2014-10-11 12:13 static/image/common/back.gif
你说的是全部代码吗?这个代码好长的,有两三千行呢
相关代码 NWPU_CHEN 发表于 2014-10-11 13:02 static/image/common/back.gif
相关代码
void main ( )
{
enum key_val
{Forward=1,Back,Track,Fix,Light,Spot,PosiNeg,VerHeriz,
StartP,EndP,Needle,Gun
};
InitSysCtrl( ); // 初始化系统初始化 禁狗 sysclkout=60hspclk=30 lspclk=15
DINT;
InitPieCtrl();
IER=0x0000;
IFR=0x0000;
InitPieVectTable(); //初始化pie中断向量
InitParameter( ); //标志位
Initperipheral( ); //ADC,EV,SPI,SCIB,TIMER0,GPIO,MAX7219,CAP1,2,4,5,T1PWM,T2PWM,T3PWM,T4PWM,
//启动CPU定时器0
First_Initial_MAX7219( );
InitProcess( );
for(i = 0; i < 8; i++)//初始化数据变量
{
Sci_VarRx = 0;
}
i = 0;
j = 1;
Send_Flag = 0;
PieCtrl.PIEIER9.bit.INTx1=1;//使能PIE模块中的SCI接收中断
PieCtrl.PIEIER9.bit.INTx2=1;//使能PIE模块中的SCI发送中断
IER|=M_INT9;//开CPU中断
EINT;//开全局中断
ERTM;//开全局实时中断
for(;;)
{
//等待中断
}
}
PieCtrl.PIEIER1.bit.INTx7=1;
PieCtrl.PIEIER9.bit.INTx3=1;
// 调试CAP中断用
PieCtrl.PIEIER5.bit.INTx5=1;
PieCtrl.PIEIER5.bit.INTx6=1;
PieCtrl.PIEIER3.bit.INTx5=1;
PieCtrl.PIEIER3.bit.INTx6=1;
// 调试cap中断时,使用,定时开始,存数。。
EvaRegs.T1CON.bit.TENABLE=1;
EvbRegs.T3CON.bit.TENABLE=1;
EvbRegs.T4CON.bit.TENABLE=1;
EvaRegs.T2CON.bit.TENABLE=1;
问题就显示出现在后面中断那几句 本帖最后由 ndt126 于 2014-10-11 13:18 编辑
void main ( )
{ //(一): 定义枚举
enum key_val
{Forward=1,Back,Track,Fix,Light,Spot,PosiNeg,VerHeriz,
StartP,EndP,Needle,Gun
};
InitSysCtrl( ); // 初始化系统初始化 禁狗 sysclkout=60hspclk=30 lspclk=15
DINT;
InitPieCtrl();
IER=0x0000;
IFR=0x0000;
InitPieVectTable(); //初始化pie中断向量
InitParameter( );
Initperipheral( );
First_Initial_MAX7219( );
InitProcess( );
for(i = 0; i < 8; i++)//初始化数据变量
{
Sci_VarRx = 0;
}
i = 0;
j = 1;
Send_Flag = 0;
PieCtrl.PIEIER9.bit.INTx1=1;//使能PIE模块中的SCI接收中断
PieCtrl.PIEIER9.bit.INTx2=1;//使能PIE模块中的SCI发送中断
IER|=M_INT9;//开CPU中断
EINT;//开全局中断
ERTM;//开全局实时中断
for(;;)
{
//等待中断
}
}
PieCtrl.PIEIER1.bit.INTx7=1;
PieCtrl.PIEIER9.bit.INTx3=1; // 调试CAP中断用
PieCtrl.PIEIER5.bit.INTx5=1;
PieCtrl.PIEIER5.bit.INTx6=1;
PieCtrl.PIEIER3.bit.INTx5=1;
PieCtrl.PIEIER3.bit.INTx6=1; // 调试cap中断时,使用,定时开始,存数。。
EvaRegs.T1CON.bit.TENABLE=1;
EvbRegs.T3CON.bit.TENABLE=1;
EvbRegs.T4CON.bit.TENABLE=1;
EvaRegs.T2CON.bit.TENABLE=1; ndt126 发表于 2014-10-11 13:15 static/image/common/back.gif
void main ( )
{ //(一): 定义枚举
enum ke ...
上边说的3个错误你问的是哪个错误?中间的那个还是最后那个少分号的错误?这段代码没发现错误 NWPU_CHEN 发表于 2014-10-11 14:17 static/image/common/back.gif
上边说的3个错误你问的是哪个错误?中间的那个还是最后那个少分号的错误?这段代码没发现错误 ...
第一个错误,这段程序之前运行都是正常的,隔了三个月没动它,今天一运行就这样了 ndt126 发表于 2014-10-11 16:31 static/image/common/back.gif
第一个错误,这段程序之前运行都是正常的,隔了三个月没动它,今天一运行就这样了 ...
error: this declaration has no storage class or type specifier这个错误在提示在中断使能那几行?这几行都没有声明,就这一个错误?其它错误都解决了?三个月没运行,今天一编译就成这样了?建议你两点:1:如果还有其他错误,这个错误还提示在这几行,那绝对是由于其它错误引起的这个错误,明显这几行代码没有错误,第二个错误引起的可能性极大,重新查看工程文件,主要是你DSP28_PIEctrl.h中的东西,查看头文件完整性,2:换个电脑重新打开试试。目前看来也只能给你这点建议了 本帖最后由 aresc 于 2014-10-11 21:33 编辑
那个main的结束大括号外面怎么还有程序?还是两段不同的程序只是被你贴在了一起?
之前是好的,那有没有版本控制,比如使用svn, git之类的,有的话,把以前的版本源代码取一个出来,和现在的来个目录比较,应该很容易找出来不同吧。
另外有个建议,以后别用中文注释,万一不小心你敲了一个中文的";",那查起来估计很困难。
页:
[1]