[寄存器] GPIO设置问题

[复制链接]
 楼主| 李召昭 发表于 2013-11-24 23:51 | 显示全部楼层 |阅读模式
“置位寄存器GPxSET是一个只写寄存器,读为0。如果对应的引脚配置为输出,则向置位寄存器的该位写1,将对应引脚的电平拉高,写0则无效”
这句话是说,如果GPxSET写入1的话,那么引脚将输出1即高电平,这就是个置位操作,我可以这么理解吗?进入中断后我要在判断ncount与60的大小,重新定义输出,然而红色部分代码不大明白,难道进入中断后要重新对引脚置位?
interrupt void cpu_timer0_isr(void)
{  
   CpuTimer0.InterruptCount++;

   // Acknowledge this interrupt to receive more interrupts from group 1
   PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
   CpuTimer0Regs.TCR.bit.TIF = 1;//清除中断标识位
   CpuTimer0Regs.TCR.bit.TRB = 1;//重新装载计数初值
   GpioDataRegs.GPBSET.bit.GPIO52=1;//
   GpioDataRegs.GPBDAT.bit.GPIO52=( nCount1<60 )?1:0;//52口输出值
   nCount1++;
   if (nCount1==100)
   {f++;}
   nCount1%=100;
  
   
}
 楼主| 李召昭 发表于 2013-11-24 23:52 | 显示全部楼层
求指导
zhangmangui 发表于 2013-11-25 09:17 | 显示全部楼层
GPxSET是置位的意思  也就是将对应的寄存器置位为1
与之对应有个清除寄存器  也就是清零
那就是在判断条件是否成立之前将IO先置位  也就是默认在条件判断之前
都是nCount1是小于60的
 楼主| 李召昭 发表于 2013-11-25 09:56 | 显示全部楼层
感谢版主!
还有一个问题想请教。现在在编一个PWM控制直流电机的程序,这里中断计时器计数0x3000后进入中断,中断程序中Nount1计数100次后f+1,f计满122正好是1s,此时会改变pwm占空比。这里我不大懂的事,进入中断后,为什么需要这句置位操作呢?在判断ncount1之前,让它保持原来的状态不行吗?
 楼主| 李召昭 发表于 2013-11-25 09:57 | 显示全部楼层
zhangmangui 发表于 2013-11-25 09:17
GPxSET是置位的意思  也就是将对应的寄存器置位为1
与之对应有个清除寄存器  也就是清零
那就是在判断条件 ...

感谢版主!
还有一个问题想请教。现在在编一个PWM控制直流电机的程序,这里中断计时器计数0x3000后进入中断,中断程序中Nount1计数100次后f+1,f计满122正好是1s,此时会改变pwm占空比。这里我不大懂的事,进入中断后,为什么需要这句置位操作呢?在判断ncount1之前,让它保持原来的状态不行吗?
zhangmangui 发表于 2013-11-25 13:12 | 显示全部楼层
李召昭 发表于 2013-11-25 09:57
感谢版主!
还有一个问题想请教。现在在编一个PWM控制直流电机的程序,这里中断计时器计数0x3000后进入中 ...

GPIO的状态如果你不去改变肯定是保持原来状态的  可能只是对第一次有用
PWM输出你可以用响应的事件管理器  你用的是哪款DSP?
 楼主| 李召昭 发表于 2013-11-25 15:00 | 显示全部楼层
TMS28335。是吧,这句应该在初始化操作里吧。在这里的话,每次进中断都会有一次置位,在PWM波低电平时会出现毛刺,实验测得的结果是这样,现在在分析为什么有毛刺。我觉得是这里的原因。这个程序是现成的例程,不是自己写的。有待回去实验验证。
zhangmangui 发表于 2013-11-25 18:16 | 显示全部楼层
李召昭 发表于 2013-11-25 15:00
TMS28335。是吧,这句应该在初始化操作里吧。在这里的话,每次进中断都会有一次置位,在PWM波低电平时会出 ...

28335的事件管理器是很强大的  必须好好利用起来
在运动控制  电源产品   逆变等里面
 楼主| 李召昭 发表于 2013-11-26 09:46 | 显示全部楼层
嗯,感谢版主。正在学习中。
 楼主| 李召昭 发表于 2013-11-26 09:47 | 显示全部楼层
zhangmangui 发表于 2013-11-25 18:16
28335的事件管理器是很强大的  必须好好利用起来
在运动控制  电源产品   逆变等里面 ...

嗯,感谢版主。正在学习中。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

8

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部