智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 9648|回复: 21
打印 上一主题 下一主题

LPTMR 野火

  [复制链接]

22

主题

1613

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6784
QQ
威望
2910
贡献
1540
兑换币
1579
注册时间
2012-3-17
在线时间
1167 小时
1#
发表于 2013-2-24 14:29:24 | 显示全部楼层
你好,请看例程注释:

    lptmr_counter_init(LPT0_ALT2,INT_COUNT,2,LPT_Rising);
                            //初始化脉冲计数器,用 LPT0_ALT2,即 PTC5输入
                            //每隔 INT_COUNT个脉冲产生中断,延时 2个时钟滤波,上升沿触发
回复 支持 反对

使用道具 举报

22

主题

1613

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6784
QQ
威望
2910
贡献
1540
兑换币
1579
注册时间
2012-3-17
在线时间
1167 小时
2#
发表于 2013-2-24 14:30:54 | 显示全部楼层
对代码进行搜索,看看工程里哪里调用的,就可以很快熟悉这个变量的作用。
你看其他的代码,也是用这种方法,比较容易学习的
回复 支持 反对

使用道具 举报

22

主题

1613

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6784
QQ
威望
2910
贡献
1540
兑换币
1579
注册时间
2012-3-17
在线时间
1167 小时
3#
发表于 2013-2-24 16:41:41 | 显示全部楼层
我是LGB191 发表于 2013-2-24 16:19
1、  "//每隔 INT_COUNT个脉冲产生中断,延时 2个时钟滤波,上升沿触发”这句话,用pit定时产生中断,干嘛 ...

假设你用lpt来累加脉冲。在一段时间内,中断 n 次,每次累加 C 就产生一次中断,然后重新计数,结束计数时, 计数到 L ,则在这段时间内 的计数为 n * C + L
这个是数学问题而已
回复 支持 反对

使用道具 举报

22

主题

1613

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6784
QQ
威望
2910
贡献
1540
兑换币
1579
注册时间
2012-3-17
在线时间
1167 小时
4#
发表于 2013-2-26 21:43:53 | 显示全部楼层
雪娃 发表于 2013-2-25 16:51
火哥  你这样用有什么特殊的好处么??为啥不禁止LPT的中断  直接在PIT中断里读计数值?

可能会溢出啊!
你能确保不溢出,就可以禁用LPT中断

回复 支持 反对

使用道具 举报

22

主题

1613

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6784
QQ
威望
2910
贡献
1540
兑换币
1579
注册时间
2012-3-17
在线时间
1167 小时
5#
发表于 2013-2-26 21:44:38 | 显示全部楼层
吢冇紷蒠 发表于 2013-2-25 13:31
能不能告诉我下 怎么样不让他产生中断啊

有个 disable_irq 函数

回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|亿加合和智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-5-20 10:49 , Processed in 0.058553 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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