智能车制作

标题: 定时器问题 [打印本页]

作者: fanfankaka123    时间: 2011-2-18 22:54
标题: 定时器问题
我用的超声波模块测距,其中必须知道返回高电平的时间,从而才能换算成距离。
请问怎样用定时器来记录返回的高电平的时间??
急求,卡在这个问题上很久了。
应该是用输入捕捉来实现,可只知道怎样捕捉脉冲个数,不知道怎样记录高电平时长。。。
作者: doramin    时间: 2011-2-18 22:54
脉冲累加器和输入比较功能都能记录高电平时间

脉冲累加器的话你看一下PACTL寄存器的PAMOD位的介绍就知道怎么用了

用输入捕捉的话,设定好捕捉下降沿,然后给超声波模块发出发射指令,等待电平变高,开定时器,中断读时间就行:

超声波模块发射;
while(引脚电平为低);
开定时器;
读PACNT的值记录为PACNT1;

中断:读PACNT记录为PACNT2,然后2-1就是时间

话说当年我用51编超声波程序的时候就是用的后一种方法

。。。另外问一句,你用超声波作甚?
作者: fanfankaka123    时间: 2011-2-19 10:17
求大侠帮忙
作者: fanfankaka123    时间: 2011-2-19 16:56
回复 3# doramin


    用51的话我也已经实现了,就是换到S12上不知道怎么弄。
超声波用于测距。
PS不是参加飞思卡尔的比赛,只是用S12做个东西。
你说的我试试,谢谢~
作者: fanfankaka123    时间: 2011-2-19 18:41
回复 3# doramin


    问一下PACNT是哪个寄存器??没找到。。。
    谢谢。
作者: doramin    时间: 2011-2-19 21:18
回复 5# fanfankaka123


    搜下datasheet,在脉冲累加器那里
作者: fanfankaka123    时间: 2011-2-20 16:41
回复 6# doramin


    还是没搞定,头疼。。。今天一不小心还把单片机烧了。。。
    分数给你吧,谢了哈~~
作者: doramin    时间: 2011-2-20 17:02
回复 7# fanfankaka123


    把单片机烧了?怎么烧的?
作者: fanfankaka123    时间: 2011-2-20 18:47
回复 8# doramin


    我同学把引脚接7.2V的电源上去了。。。然后就没有然后了。。。
作者: sswm    时间: 2011-10-14 12:32
呵呵 最近我也想用xs来做 也是时间上不知道怎么弄,,想用来做平衡小车




欢迎光临 智能车制作 (http://www.znczz.com/) Powered by Discuz! X3.2