注册 登录
查看: 662|回复: 27

[其他] kl26的脉冲技术问题

[复制链接]
发表于 2014-5-26 13:36:40 | 显示全部楼层 |阅读模式
用kl26的ptm2来计数,用延时来正常在液晶显示,为什么一放入中断中就不能显示了?
回复

使用道具 举报

发表于 2014-5-26 13:37:36 | 显示全部楼层
上代码吧。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-26 16:55:22 | 显示全部楼层
康锦 发表于 2014-5-26 13:37
上代码吧。

void PIT_IRQHandler()     ///1毫秒定时
{
    flag++;
   
   count   =  tpm_pulse_get(TPM2);
   tpm_pulse_clean(TPM2);                                  //清空脉冲计数器计算值(马上清空,这样才能保证计数值准确)
   
   if(flag==10)
  {
    flag=0;
    if(PIT_TFLG(PIT0) == 1 )        //判断是否 PIT0 进入中断
    {
        tsl1401_time_isr();
        get_blackline();
     
    }
  }
  
     PIT_Flag_Clear(PIT0);
}
这是中断服务函数,写进去怎么就不行呢?
回复 支持 反对

使用道具 举报

发表于 2014-5-26 22:29:01 | 显示全部楼层
我的战斧巡航 发表于 2014-5-26 16:55
void PIT_IRQHandler()     ///1毫秒定时
{
    flag++;

好像没了tpm脉冲开始累加吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-26 23:21:54 | 显示全部楼层
许亮 发表于 2014-5-26 22:29
好像没了tpm脉冲开始累加吧

有的,在主函数里呢。。 tpm_pulse_init(TPM2,TPM_CLKIN0,TPM_PS_1); //初始化 TPM2 为脉冲累加,输入管脚为 TPM_CLKIN0_PIN ,分频系数为 1    是这个吧?
回复 支持 反对

使用道具 举报

发表于 2014-5-27 22:24:37 | 显示全部楼层
我的战斧巡航 发表于 2014-5-26 16:55
void PIT_IRQHandler()     ///1毫秒定时
{
    flag++;

初始化PIT定时器后,加个tpm_pulse_clean看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-27 22:42:26 | 显示全部楼层
王清铭 发表于 2014-5-27 22:24
初始化PIT定时器后,加个tpm_pulse_clean看看

好像还是不行啊,请问你是怎么加的呢?
回复 支持 反对

使用道具 举报

发表于 2014-5-27 23:08:01 | 显示全部楼层
我的战斧巡航 发表于 2014-5-27 22:42
好像还是不行啊,请问你是怎么加的呢?

提供一下完整的代码,包括main函数
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-28 12:48:16 | 显示全部楼层
山外メ雲ジ 发表于 2014-5-27 23:08
提供一下完整的代码,包括main函数

山外哥。现在脉冲计数正常了,但是又有一个新的问题。。。。我原来用的128。输出的PWM给电机驱动,驱动正常。。。后来换了KL26后用的TPM0作PWM输出。。但是插在驱动上电机驱动没反应。。。输出的PWM是正常的。。已经测试过,电机驱动是好的。。。这是为什么?
回复 支持 反对

使用道具 举报

发表于 2014-5-28 18:31:29 | 显示全部楼层
我的战斧巡航 发表于 2014-5-28 12:48
山外哥。现在脉冲计数正常了,但是又有一个新的问题。。。。我原来用的128。输出的PWM给电机驱动,驱动正 ...

KL26是3.3V的,不能直接给电机驱动的,而是升压到5V给电机驱动。
你可以参考我们的电机驱动原理图
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-29 01:12:05 | 显示全部楼层
山外メ雲ジ 发表于 2014-5-28 18:31
KL26是3.3V的,不能直接给电机驱动的,而是升压到5V给电机驱动。
你可以参考我们的电机驱动原理图

恩恩,好的,我看看,谢谢。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-29 01:13:36 | 显示全部楼层
山外メ雲ジ 发表于 2014-5-28 18:31
KL26是3.3V的,不能直接给电机驱动的,而是升压到5V给电机驱动。
你可以参考我们的电机驱动原理图

3.3伏也行吧。。。为什么非要升压到5伏呢?我刚才改了一下频率好了可以驱动了。。
回复 支持 反对

使用道具 举报

发表于 2014-5-29 09:13:33 | 显示全部楼层
我的战斧巡航 发表于 2014-5-29 01:13
3.3伏也行吧。。。为什么非要升压到5伏呢?我刚才改了一下频率好了可以驱动了。。

3.3V 不稳定,有的可以,有的不可以。
回复 支持 反对

使用道具 举报

发表于 2014-6-1 11:25:59 | 显示全部楼层
我的战斧巡航 发表于 2014-5-29 01:13
3.3伏也行吧。。。为什么非要升压到5伏呢?我刚才改了一下频率好了可以驱动了。。

你的速度脉冲是方波还是三角波?谢谢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-1 22:31:52 | 显示全部楼层
时光 发表于 2014-6-1 11:25
你的速度脉冲是方波还是三角波?谢谢

是方波吧。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-2 09:04:06 | 显示全部楼层
时光 发表于 2014-6-1 11:25
你的速度脉冲是方波还是三角波?谢谢

问你一个问题,给的历程里面的PWM都是占空比的,怎么样才能改成PWM来控制舵机呢?
回复 支持 反对

使用道具 举报

发表于 2014-6-2 09:15:16 | 显示全部楼层
我的战斧巡航 发表于 2014-6-2 09:04
问你一个问题,给的历程里面的PWM都是占空比的,怎么样才能改成PWM来控制舵机呢?

初始化设置好频率后,后续调占空比就可以控制舵机啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-2 11:09:50 | 显示全部楼层
微粒子 发表于 2014-6-2 09:15
初始化设置好频率后,后续调占空比就可以控制舵机啊

对啊,调占空比是可以但是怎样把占空比转化成相应的PWM呢?直接通过改变PWM来控制舵机。。
回复 支持 反对

使用道具 举报

发表于 2014-6-23 17:08:54 | 显示全部楼层
我的战斧巡航 发表于 2014-5-28 12:48
山外哥。现在脉冲计数正常了,但是又有一个新的问题。。。。我原来用的128。输出的PWM给电机驱动,驱动正 ...

请问你的问题是怎么解决的啊??
回复 支持 反对

使用道具 举报

发表于 2014-6-23 17:09:53 | 显示全部楼层
山外メ雲ジ 发表于 2014-5-27 23:08
提供一下完整的代码,包括main函数

我的也是这个问题,计不了数,求救啊
回复 支持 反对

使用道具 举报

发表于 2014-6-26 21:17:04 | 显示全部楼层
我的战斧巡航 发表于 2014-5-28 12:48
山外哥。现在脉冲计数正常了,但是又有一个新的问题。。。。我原来用的128。输出的PWM给电机驱动,驱动正 ...

你好,问一下,你的脉冲计数放在中断中最后怎么解决的呀,我搞了好久都没搞出来,谢谢啦!!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-26 21:43:02 | 显示全部楼层
你并不懂我雪 发表于 2014-6-26 21:17
你好,问一下,你的脉冲计数放在中断中最后怎么解决的呀,我搞了好久都没搞出来,谢谢啦!!!

在主函数里开始初始化,中断里计数,然后清除计数。。。就好了,注意不要让他计数溢出了。。
回复 支持 反对

使用道具 举报

发表于 2014-6-27 09:30:41 | 显示全部楼层
我的战斧巡航 发表于 2014-6-26 21:43
在主函数里开始初始化,中断里计数,然后清除计数。。。就好了,注意不要让他计数溢出了。。

我写到中断里 可是计数一直为零,给他送脉冲,可是却不计数。单独的例程却可以正常计数
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-27 20:08:25 | 显示全部楼层
浮躁。 发表于 2014-6-27 09:30
我写到中断里 可是计数一直为零,给他送脉冲,可是却不计数。单独的例程却可以正常计数

那我也不知道了,要不发一下代码看看吧。
回复 支持 反对

使用道具 举报

发表于 2014-6-27 20:25:54 | 显示全部楼层
我的战斧巡航 发表于 2014-6-27 20:08
那我也不知道了,要不发一下代码看看吧。

http://www.vcan123.com/forum.php ... &extra=page%3D1
这里有我的代码,请指教
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-6-28 01:30:56 | 显示全部楼层
浮躁。 发表于 2014-6-27 20:25
http://www.vcan123.com/forum.php?mod=viewthread&tid=5180&extra=page%3D1
这里有我的代码,请指教

做的直立吗??做直立的都是大神啊。刚才看了你的代码,用着正交解码了啊。。我只是用的TPM2来的,所以,你的正交解码我看不懂。。
回复 支持 反对

使用道具 举报

发表于 2014-6-28 11:08:36 | 显示全部楼层
我的战斧巡航 发表于 2014-6-28 01:30
做的直立吗??做直立的都是大神啊。刚才看了你的代码,用着正交解码了啊。。我只是用的TPM2来的,所以, ...

我做直立的 ,我们之前用的是K60 校赛被刷了,不得已换KL26,之前K60可以用正交解码,现在KL25不能用了 代码我注释掉了
回复 支持 反对

使用道具 举报

发表于 2014-6-28 11:37:56 | 显示全部楼层
浮躁。 发表于 2014-6-28 11:08
我做直立的 ,我们之前用的是K60 校赛被刷了,不得已换KL26,之前K60可以用正交解码,现在KL25不能用了 代 ...

KL26 可以用脉冲计数的模块。

【KL26】有几路脉冲计数器啊, 双电机怎么测速呢?? - 智能车讨论区 - 山外-vcan123论坛 http://www.vcan123.com/forum.php ... tid=3020&ctid=9
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部