微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > DSP学习交流 > DSP方式控制寄存器ACTRx使用问题

DSP方式控制寄存器ACTRx使用问题

时间:10-02 整理:3721RD 点击:
最近在编程时发现一个问题,以下面这个小程序为例,则在x=6000的情况下执行该程序,只有后面的EvaRegs.ACTRA.bit.CMP2ACT=2;EvbRegs.ACTRB.bit.CMP8ACT=0这两句会被执行,而上面两个bit位将保持初始化时的值不变,调换两者顺序后则变为只有  EvaRegs.ACTRA.bit.CMP1ACT=2;EvbRegs.ACTRB.bit.CMP7ACT=0被执行,即始终只有最后的赋值位被赋值,前面再多都不变。
注意:该程序在执行时由于变量i的限制,使得该程序仅能执行一次。
本人尝试从ACTRx带影子寄存器入手考虑,但对影子寄存器了解很少,恳请大侠出面相助,感激不尽!

if (i==0)
{
   if (x>2000)
  {
  EvaRegs.ACTRA.bit.CMP1ACT=2;
  EvbRegs.ACTRB.bit.CMP7ACT=0;
  }
  if(x>5000)
  {
  EvaRegs.ACTRA.bit.CMP2ACT=2;
  EvbRegs.ACTRB.bit.CMP8ACT=0;
  }
i++;
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top