程序就是简单的GPIO电平翻转,用XDS100 仿真,在registers里面查看GPADAT.all,我使能了输出的低8位GPA 0~7寄存器值没有任何变化,但我用万用表量却是有电平翻转的(电平值正常),而且我用软件模拟仿真时可以看到寄存器是变化的。这是为嘛呢?求解释。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
程序就是简单的GPIO电平翻转,用XDS100 仿真,在registers里面查看GPADAT.all,我使能了输出的低8位GPA 0~7寄存器值没有任何变化,但我用万用表量却是有电平翻转的(电平值正常),而且我用软件模拟仿真时可以看到寄存器是变化的。这是为嘛呢?求解释。
davi,
你用什么指令翻转GPIO,还有你在CCS上是怎么来查看这个寄存器的。
按下面的程序操作是可以看到GPADAT发生变化的:
在InitGpio()函数内将GPIO1(以它为例)配置方向为输出,注意GPADIR寄存器是EALLOW保护的。然后再在main中添加一句GpioDataRegs.GPATOGGLE.bit.GPIO1 = 1; ,编译加载程序,将GpioDataRegs复制到Expressions观察窗,在GPIO1翻转指令处设断点,运行到断点处,单步执行,可以看到GPADAT.bit.GPIO1是发生翻转的。另外可以查看Register观察窗中的GPIODATA寄存器,也是有发生变化的。
不知道你的操作跟上面的操作有什么不一样的地方,看能否找到问题。