wangch_sh 发表于 2013-12-22 19:43

28335IO口的问题

我用28335IO口驱动LED灯,代码如下:
while (1)
{
   GpioDataRegs.GPBDAT.bit.GPIO58=0;
GpioDataRegs.GPBDAT.bit.GPIO59=0;
delay(10);
GpioDataRegs.GPBDAT.bit.GPIO58=1;
   GpioDataRegs.GPBDAT.bit.GPIO59=1;
delay(10);
仿真时,运行到第二个delay(10),GPIO58为0,GPIO59为1.
while (1)
{
   GpioDataRegs.GPBDAT.bit.GPIO58=0;
delay(1);
GpioDataRegs.GPBDAT.bit.GPIO59=0;
delay(10);
GpioDataRegs.GPBDAT.bit.GPIO58=1;
delay(1);
GpioDataRegs.GPBDAT.bit.GPIO59=1;
delay(10);
照上面改过之后,就好了。
这是什么原因?请高手指教,谢谢!

wangch_sh 发表于 2013-12-22 20:34

后来测试其他几个腿,发现有些腿置1时不受控,有的置1时为1,有的为0.
清零时没问题。

zhangmangui 发表于 2013-12-22 21:15

这就奇怪了   不加延时肯定是能够切换的
确保GPIO非特殊功能模式
你在找找问题

wangch_sh 发表于 2013-12-22 21:57

好!

TLZme 发表于 2013-12-23 08:54

操作28335的IO口DAT寄存器要加延时

wangch_sh 发表于 2013-12-23 09:36

谢谢!

zhangmangui 发表于 2013-12-23 09:52

TLZme 发表于 2013-12-23 08:54 static/image/common/back.gif
操作28335的IO口DAT寄存器要加延时

必须要加延时啊?SET寄存器需要加延时不?

TLZme 发表于 2013-12-23 10:14

zhangmangui 发表于 2013-12-23 09:52 static/image/common/back.gif
必须要加延时啊?SET寄存器需要加延时不?

SET不用加

zhangmangui 发表于 2013-12-23 10:39

TLZme 发表于 2013-12-23 10:14 static/image/common/back.gif
SET不用加

没想明白为什么要加延时?

TLZme 发表于 2013-12-23 10:58

zhangmangui 发表于 2013-12-23 10:39 static/image/common/back.gif
没想明白为什么要加延时?

这点我也没太明白,就是调试中发现的,不加延时的话只能执行最后一句。你用的是哪款DSP?不妨试一下,研究一下

zhangmangui 发表于 2013-12-23 12:03

TLZme 发表于 2013-12-23 10:58 static/image/common/back.gif
这点我也没太明白,就是调试中发现的,不加延时的话只能执行最后一句。你用的是哪款DSP?不妨试一下,研 ...

现在不用2000了下来看看

kingzlt 发表于 2013-12-25 08:45

此问题在2803系列上遇到过,在2812和28335上暂没发现

zhangmangui 发表于 2013-12-25 09:26

kingzlt 发表于 2013-12-25 08:45 static/image/common/back.gif
此问题在2803系列上遇到过,在2812和28335上暂没发现

2812上是不存在这个问题的   
页: [1]
查看完整版本: 28335IO口的问题