欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
STC12C5A60S2超聲波測距源程序
[打印本頁]
作者:
beibeixin
時間:
2017-10-13 00:21
標題:
STC12C5A60S2超聲波測距源程序
單片機源程序如下:
/*
超聲波測距原理:
本產品使用方法簡單,一個控制口發一個10US以上的高電平,
就可以在接收口等待高電平輸出.一有輸出就可以開定時器計時,
當此口變為低電平時就可以讀定時器的值,此時就為此次測距的時間,
方可算出距離.如此不斷的周期測,就可以達到你移動測量的值了~~
*/
// 操作方法一:在觸發口發過20us高電平脈沖后,接收口打開高電平檢測中斷,一旦進入檢測中斷就打開定時中斷和開定時器,開始計時,檢測中斷關閉,在定時中斷里需要判斷接收口是否為低電平
#include <STC12C5A60S2.h>
#include <string.h>
unsigned char abc;
sbit pulse=P2^5;
sbit RXD2_MCU=P4^2; //trig觸發信號
sbit TXD2_MCU=P4^3; //echo回應信號
void delay(void) //m給定多少,大致就是多少us延遲
{
unsigned int m;
for(m=1;m<=200;m++)
{;}
}
void delay2s(void) //m給定多少,大致就是多少us延遲
{
unsigned int m,n,k;
for(k=1;k<=40;k++)
for(m=1;m<=200;m++)
for(n=1;n<=200;n++);
}
void delay100us(void) //m給定多少,大致就是多少us延遲
{
unsigned int m;
for(m=1;m<=10;m++)
{;}
}
void main(void)
{
RXD2_MCU=0;
delay2s();
delay2s();
delay2s();
delay2s();
delay2s();
RXD2_MCU=1;
delay100us();
RXD2_MCU=0;
while(1)
{
#if 0
pulse=1;
delay();
pulse=0;
delay();
#endif
}
}
復制代碼
所有資料51hei提供下載:
http://www.raoushi.com/bbs/dpj-95918-1.html
作者:
mountain46
時間:
2017-10-14 11:51
樓主,你這是抄我的啊,。。。。算了,你展示吧。。。
作者:
舊城以西的故事
時間:
2018-3-5 11:08
代碼注釋明顯有問題,抄的時候注意。要對代碼理解完善。最好加上自己的想法。
作者:
黑大哥
時間:
2019-7-31 18:28
不行啊你這個,有一點坑,只有延時了,定時器清零還有計算公式呢?
作者:
duyes
時間:
2019-8-1 17:24
那這個原創帖在哪里呢?
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1