TI中文支持网
TI专业的中文技术问题搜集分享网站

C2000 最多支持多少层数据结构?

您好:

我的案子定义了一个变量sHob[0].Vari.Flag.StartReadCurrHF。该变量在PWM中断中置位和清零。

通过示波器发现,有时,在主循环中有语句while (sHob[0].Vari.Flag.StartReadCurrHF){} 发现中断中执行了清零语句,但是没有跳出该while循环,第二次执行清零才跳出循环。

测试的方法是,用一个引脚设置高低电平观察中断的置位和清零,另一个引脚设置高低电平观察while语句运行。

如改为简单的变量uint16 tt替换sHob[0].Vari.Flag.StartReadCurrHF,则不会出现上述问题。

所以怀疑是这个变量的数据结构层级太深了,当主循环和中断都有调用时会访问失效。

请指教是否如此。谢谢。

min xiao1:

这个问题哪位兄弟能回复下不?

您好:

我的案子定义了一个变量sHob[0].Vari.Flag.StartReadCurrHF。该变量在PWM中断中置位和清零。

通过示波器发现,有时,在主循环中有语句while (sHob[0].Vari.Flag.StartReadCurrHF){} 发现中断中执行了清零语句,但是没有跳出该while循环,第二次执行清零才跳出循环。

测试的方法是,用一个引脚设置高低电平观察中断的置位和清零,另一个引脚设置高低电平观察while语句运行。

如改为简单的变量uint16 tt替换sHob[0].Vari.Flag.StartReadCurrHF,则不会出现上述问题。

所以怀疑是这个变量的数据结构层级太深了,当主循环和中断都有调用时会访问失效。

请指教是否如此。谢谢。

dony chen:

这个结构的其他成员有没有操作?会不会被其他成员的操作影响了?

赞(0)
未经允许不得转载:TI中文支持网 » C2000 最多支持多少层数据结构?
分享到: 更多 (0)