作者ast9869 (甘愿为你~)
看板ASM
标题Re: [问题] 超音波程式问题
时间Tue Aug 12 03:21:07 2008
※ 引述《aa706045 (小呆榕)》之铭言:
: 要如何从8051 把超音波发射和接收的时间差
: 用来运算
: EX 假设 时间差为 100US
: 然後我要把他抓出来除以58US
: 从8051 用c语言 这部分 程式如何写
: 谢谢~
//--------------------------------------------
// Timer 的用法一般都有Example可以看才对。
//--------------------------------------------
void main()
{
InitTimer2(); //要算一下,多久中断一次,可以设成 1us
InitSystemClock();
yourProgram();
}
DWORD gdwCostTime=0;
void Timer2ISR() interrupt 5
{
gdwCostTime++;
}
void yourProgram()
{
超音波发射();
EnableTimer2();
while(!超音波接收());
DisableTimer2();
你要的值 = gdwCostTime / 58 US;
}
--
█████████████████
█ ████████████████
█████████████████
█ ████████████████
█████████████████
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.110.225.153
1F:→ aa706045:谢谢~你 08/12 10:36