mini板stm32外部stm32f103 脉冲计数数怎么写啊

后使用快捷导航没有帐号?
请完成以下验证码
查看: 1613|回复: 13
外部脉冲计数
在线时间82 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一个io口翻转产生脉冲,如果不开外部中断的话,可以对其进行计数和判断边沿极性吗
在线时间3678 小时
威望5175分
芯币12645枚
E金币387枚
TA的帖子TA的资源
一般是可以的,要看脉冲的频率
脉冲周期50us,频率不高,用什么方式啊&
生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
在线时间82 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一般是可以的,要看脉冲的频率
脉冲周期50us,频率不高,用什么方式啊
&&&&&&&&&&
在线时间559 小时
威望2549分
芯币8089枚
E金币3412枚
TA的帖子TA的资源
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
定时器中断里边判断电平可以吗?
可以啊,只要不开外部中断就OK,但是端口翻转产生的脉冲算外部脉冲吗,那如何用定时器呢&
这孩子,成熟的象征,理智的典范。
在线时间82 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
定时器中断里边判断电平可以吗?
可以啊,只要不开外部中断就OK,但是端口翻转产生的脉冲算外部脉冲吗,那如何用定时器呢
25us检测一次电平就可以了啊。&
在线时间559 小时
威望2549分
芯币8089枚
E金币3412枚
TA的帖子TA的资源
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
可以啊,只要不开外部中断就OK,但是端口翻转产生的脉冲算外部脉冲吗,那如何用定时器呢
25us检测一次电平就可以了啊。
是不是在中断里检测电平值再与主程序的电平值进行比较?&
这孩子,成熟的象征,理智的典范。
在线时间82 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
25us检测一次电平就可以了啊。
是不是在中断里检测电平值再与主程序的电平值进行比较?
定时器25us中断,检测一次外部电平,然后记录下来,遇到前一次和当前检测电平结果不一样,计数变量值就 +1。对于50us周期的脉冲应该可以检测到的。&
在线时间559 小时
威望2549分
芯币8089枚
E金币3412枚
TA的帖子TA的资源
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
是不是在中断里检测电平值再与主程序的电平值进行比较?
定时器25us中断,检测一次外部电平,然后记录下来,遇到前一次和当前检测电平结果不一样,计数变量值就 +1。对于50us周期的脉冲应该可以检测到的。
还有如果脉冲是PD2端口在定时器中断里产生的,怎么去检测啊,有点懵
#pragma vector=TIM1_OVR_UIF_vector
__interrupt void TIM1_OVR_UIF_IRQHandler(void)
TIM1_SR1=0X00;
count13++;
if(count13==3)&
懂了,我试试。&
这孩子,成熟的象征,理智的典范。
在线时间82 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
定时器25us中断,检测一次外部电平,然后记录下来,遇到前一次和当前检测电平结果不一样,计数变量值就 + ...
懂了,我试试。
在线时间82 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
定时器25us中断,检测一次外部电平,然后记录下来,遇到前一次和当前检测电平结果不一样,计数变量值就 + ...
还有如果脉冲是PD2端口在定时器中断里产生的,怎么去检测啊,有点懵
#pragma vector=TIM1_OVR_UIF_vector
__interrupt void TIM1_OVR_UIF_IRQHandler(void)
&&TIM1_SR1=0X00;
&&count13++;
&&if(count13==3)& && && && && && && && &//数3个脉冲后PD2置高
&&PD2=1;& && && && && && && && && && && && && &
&&if(count13==6)& && && && && && && &&&//数3个脉冲后PD2置低
等到下一个定时器中断到达能看到。比如t-1时刻电平为1,t时刻定时器中断判断电平还是1,但马上变成了0,到t+1时刻定时器中断中就会发现电平变成了0,此时记录一个新的脉冲个数。
这个方法最简单了。&
在线时间559 小时
威望2549分
芯币8089枚
E金币3412枚
TA的帖子TA的资源
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
还有如果脉冲是PD2端口在定时器中断里产生的,怎么去检测啊,有点懵
#pragma vector=TIM1_OVR_UIF_vecto ...
等到下一个定时器中断到达能看到。比如t-1时刻电平为1,t时刻定时器中断判断电平还是1,但马上变成了0,到t+1时刻定时器中断中就会发现电平变成了0,此时记录一个新的脉冲个数。
这个方法最简单了。
还是有点不懂啊,在我那个程序里怎样体现呢,肯定需要读取PD2_IDR的值吧&
这孩子,成熟的象征,理智的典范。
在线时间82 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
等到下一个定时器中断到达能看到。比如t-1时刻电平为1,t时刻定时器中断判断电平还是1,但马上变成了0, ...
还是有点不懂啊,在我那个程序里怎样体现呢,肯定需要读取PD2_IDR的值吧
你能告诉我你需要实现什么功能吗?我看你的标题就写了只需要外部脉冲计数就行了啊。&
在线时间559 小时
威望2549分
芯币8089枚
E金币3412枚
TA的帖子TA的资源
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
五彩晶圆(初级), 积分 2549, 距离下一级还需 951 积分
还是有点不懂啊,在我那个程序里怎样体现呢,肯定需要读取PD2_IDR的值吧
你能告诉我你需要实现什么功能吗?我看你的标题就写了只需要外部脉冲计数就行了啊。
现在PD2端口通过置高和置低产生类似方波的脉冲,我如果不开外部中断的话,怎样实现对这个脉冲计数和判断边沿极性。
#pragma vector=TIM1_OVR_UIF_vector
__interrupt void TIM1_OVR_UIF_IRQHandler(void)
这孩子,成熟的象征,理智的典范。
在线时间82 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
一粒金砂(中级), 积分 46, 距离下一级还需 154 积分
你能告诉我你需要实现什么功能吗?我看你的标题就写了只需要外部脉冲计数就行了啊。
现在PD2端口通过置高和置低产生类似方波的脉冲,我如果不开外部中断的话,怎样实现对这个脉冲计数和判断边沿极性。
#pragma vector=TIM1_OVR_UIF_vector
__interrupt void TIM1_OVR_UIF_IRQHandler(void)
&&TIM1_SR1=0X00;
&&count13++;
&&if(count13==3)& && && && && && && && &//数3个脉冲后PD2置高(3个脉冲25us)
&&PD2=1;& && && && && && && && && && && && && &
&&if(count13==6)& && && && && && && &&&//数3个脉冲后PD2置低
EEWORLD 官方微信
Powered by后使用快捷导航没有帐号?
请完成以下验证码
查看: 4947|回复: 9
请教一下关于stm32用于外部脉冲计数
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
最近想用STM32对脉冲计数
参考了前辈的一些经验
自己却弄不对,惭愧啊
请大侠点拨下
TIM_TimeBaseStructure.TIM_Period = 0x0400;
TIM_TimeBaseStructure.TIM_Prescaler = 0x00;
TIM_TimeBaseStructure.TIM_ClockDivision = 0x00;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure); // Time base configuration
就是设置这些对吗
TIM_ICInitStructure.TIM_Channel = TIM_Channel_1;
& &TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_R
& &TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;
& &TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;
& &TIM_ICInitStructure.TIM_ICFilter = 0x0;
& &TIM_PWMIConfig(TIM2, &TIM_ICInitStructure);
& &TIM_ICInit(TIM2, &TIM_ICInitStructure);
& & TIM_SelectInputTrigger(TIM2, TIM_TS_TI1FP1);& && && && && && &
这些也是设置外部输入捕获功能的,为什么有些前辈没有提 啊,是不是我理解错了,大家帮忙啊
在线时间2 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
& & & & & & & & & & & & & & & &&&先说说你的硬件配置和芯片型号,再说说你的配置思路,不要只写程序。
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 2, 距离下一级还需 3 积分
一粒金砂(初级), 积分 2, 距离下一级还需 3 积分
& & & & & & & & & & & & & & & &&&上来就是一堆代码,别人看了也不知道从何说起。
&&&&&&&&&&
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
& & & & & & & & & & & & & & & &&&的确是信息有点少了,给点硬件信息
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
用stm32做过对脉冲计数的
我现在对电机的位置编码器的输出脉冲进行计数
位置编码器一周360度出1024个脉冲,一周以后重新计数
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
用stm32做过对脉冲计数的
我现在对电机的位置编码器的输出脉冲进行计数
位置编码器一周360度出1024个脉冲,一周以后重新计数
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
之前在您的博客上看过类似功能内容
效仿你做了,可是结果无章可循,是不是我哪里理解错了
pa1 是不是应该是pa0
还有改过来之后,还是计数不对
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
stm32f103zet6
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
版主,最近见你在的时间少,真的帮帮我啊,我都快折磨不行了,真的没人讨论在学校,最近又找工作,头大了
在线时间11 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 20, 距离下一级还需 180 积分
一粒金砂(中级), 积分 20, 距离下一级还需 180 积分
终于找到了,thank you
EEWORLD 官方微信
Powered by21ic官方微信-->
ST MCU Finder
安装免费手机应用,
寻找理想的ST MCU
请教一下关于stm32用于外部脉冲计数
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
最近想用STM32对脉冲计数
参考了前辈的一些经验
自己却弄不对,惭愧啊
请大侠点拨下
TIM_TimeBaseStructure.TIM_Period = 0x0400;
TIM_TimeBaseStructure.TIM_Prescaler = 0x00;
TIM_TimeBaseStructure.TIM_ClockDivision = 0x00;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure); // Time base configuration
就是设置这些对吗
TIM_ICInitStructure.TIM_Channel = TIM_Channel_1;
& &TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_R
& &TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;
& &TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;
& &TIM_ICInitStructure.TIM_ICFilter = 0x0;
& &TIM_PWMIConfig(TIM2, &TIM_ICInitStructure);
& &TIM_ICInit(TIM2, &TIM_ICInitStructure);
& & TIM_SelectInputTrigger(TIM2, TIM_TS_TI1FP1);& && && && && && &
这些也是设置外部输入捕获功能的,为什么有些前辈没有提 啊,是不是我理解错了,大家帮忙啊
先说说你的硬件配置和芯片型号,再说说你的配置思路,不要只写程序。
初级技术员, 积分 92, 距离下一级还需 8 积分
初级技术员, 积分 92, 距离下一级还需 8 积分
初级技术员, 积分 92, 距离下一级还需 8 积分
初级技术员, 积分 92, 距离下一级还需 8 积分
上来就是一堆代码,别人看了也不知道从何说起。
高级工程师, 积分 7277, 距离下一级还需 723 积分
高级工程师, 积分 7277, 距离下一级还需 723 积分
高级工程师, 积分 7277, 距离下一级还需 723 积分
高级工程师, 积分 7277, 距离下一级还需 723 积分
的确是信息有点少了,给点硬件信息
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
用stm32做过对脉冲计数的
我现在对电机的位置编码器的输出脉冲进行计数
位置编码器一周360度出1024个脉冲,一周以后重新计数
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
用stm32做过对脉冲计数的
我现在对电机的位置编码器的输出脉冲进行计数
位置编码器一周360度出1024个脉冲,一周以后重新计数
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
之前在您的博客上看过类似功能内容
效仿你做了,可是结果无章可循,是不是我哪里理解错了
pa1 是不是应该是pa0
还有改过来之后,还是计数不对
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
stm32f103zet6
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
中级技术员, 积分 157, 距离下一级还需 143 积分
fanningjia
版主,最近见你在的时间少,真的帮帮我啊,我都快折磨不行了,真的没人讨论在学校,最近又找工作,头大了
实习生, 积分 3, 距离下一级还需 47 积分
实习生, 积分 3, 距离下一级还需 47 积分
实习生, 积分 3, 距离下一级还需 47 积分
实习生, 积分 3, 距离下一级还需 47 积分
7楼提到 的找了下资料好像是少了个外部时钟源的选定
扫描二维码,随时随地手机跟帖
荣誉元老奖章
等级类勋章
坚毅之洋流
发帖类勋章
时间类勋章
技术领袖奖章
人才类勋章
技术高手奖章
人才类勋章
技术新星奖章
人才类勋章
您需要登录后才可以回帖查看: 530|回复: 2
外部脉冲计数
主题帖子精华
新手入门, 积分 49, 距离下一级还需 -29 积分
在线时间98 小时
一个io口翻转产生脉冲,如果不开外部中断的话,还有其他办法对其计数和判断边沿极性吗
主题帖子精华
中级会员, 积分 299, 距离下一级还需 201 积分
在线时间195 小时
可以用定时器,设置为外部输入计数,具体操作看视频教程
主题帖子精华
新手入门, 积分 49, 距离下一级还需 -29 积分
在线时间98 小时
可以用定时器,设置为外部输入计数,具体操作看视频教程
如果脉冲是PD2端口通过在TIM1溢出中断里置高置低产生的呢:
#pragma vector=TIM1_OVR_UIF_vector
__interrupt void TIM1_OVR_UIF_IRQHandler(void)
&&TIM1_SR1=0X00;
&&count13++;
&&if(count13==3)& && && && && && && && &//数3个脉冲后PD2置高
&&PD2=1;& && && && && && && && && && && && && &
&&if(count13==6)& && && && && && && &&&//数3个脉冲后PD2置低
Powered bySTM32外部脉冲计数器的设计求助_百度知道
STM32外部脉冲计数器的设计求助
我有更好的答案
TIMx需要工作在从模式下,从外部触发计数。 通过TIM_SelectInputTrigger(TIMx, TIM_TI1F_ED)可以选择CH1管脚作为输入。也可以选择CH1或CH2的滤波输入。在从模式下,CH3和CH4不能作为外部触发管脚。
采纳率:73%
为您推荐:
其他类似问题
您可能关注的内容
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 stm32外部脉冲计数 的文章

 

随机推荐