无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

666

2023-02-22 10:49 作者:張鐵妞  | 我要投稿

硬件模塊:? ?樹莓派小車Arduino核心板+轉(zhuǎn)接板、超聲波測距傳感器、OLED顯示單元

??

? 硬件接線:? ?Arduino轉(zhuǎn)接板-----------OLED顯示單元

? ? ? ? ? ? ? ? ? ? ?P15----------------P1

? 實驗現(xiàn)象:? ? OLED屏幕顯示小車前后超聲波距離數(shù)據(jù)


? 更新時間:2019-09-06

********************************************************/


#include <Adafruit_GFX.h>

#include <Adafruit_SSD1306.h>

#define OLED_RESET 4? //設置OLED引腳

Adafruit_SSD1306 display(OLED_RESET);


//前置超聲波模塊引腳

#define Trig 32 //引腳Tring 連接 IO 32

#define Echo 33 //引腳Echo 連接 IO 33


//后置超聲波模塊引腳

#define Trig1 36 //引腳Tring 連接 IO 35

#define Echo1 37 //引腳Echo 連接 IO 37



void setup()? ?{

? Serial.begin(115200);

? delay(500);


? display.begin(SSD1306_SWITCHCAPVCC, 0x3C);? // 初始化OLED

? display.clearDisplay();? ?// 清屏

? display.setTextSize(1);

? display.setTextColor(WHITE);

? display.setCursor(0, 0);

? pinMode(Trig, OUTPUT);

? pinMode(Echo, INPUT);

? pinMode(Trig1, OUTPUT);

? pinMode(Echo1, INPUT);


}


void loop() {

? display.clearDisplay();? ?// 清屏

? display.setCursor(20, 0);

? display.print("Ultrasonic Test");

? ultrasonic_A();//調(diào)用前置超聲波測距函數(shù)

? delay(100);

? ultrasonic_B();//調(diào)用后置超聲波測距函數(shù)

? display.display();//OLED屏幕更新顯示數(shù)據(jù)

??

}


double? cm; //距離變量

int a;

double b;

float temp;

float cm1; //距離變量

float temp1; //

/**************************************************************

*功? 能:前置超聲波測距函數(shù)

*參? 數(shù): 無

*返回值: 無

**************************************************************/

void ultrasonic_A()

{

? //給Trig發(fā)送一個低高低的短時間脈沖,觸發(fā)測距

? digitalWrite(Trig, LOW); //給Trig發(fā)送一個低電平

? delayMicroseconds(2);? ? //等待 2微妙

? digitalWrite(Trig, HIGH); //給Trig發(fā)送一個高電平

? delayMicroseconds(10);? ? //等待 10微妙

? digitalWrite(Trig, LOW); //給Trig發(fā)送一個低電平

? temp = float(pulseIn(Echo, HIGH)); //存儲回波等待時間,pulseIn():用于檢測引腳輸出的高低電平的脈沖寬度。

? cm = (temp * 17 ) / 1000; //把回波時間換算成cm

? a = (int)cm;

? b = (cm - a) * 100;

? display.setCursor(0, 20);

? display.print("distance_A:");

? display.print(cm);

? display.print("cm");


}

/**************************************************************

*功? 能:后置超聲波測距函數(shù)

*參? 數(shù): 無

*返回值: 無

**************************************************************/

void ultrasonic_B()

{

? //給Trig發(fā)送一個低高低的短時間脈沖,觸發(fā)測距

? digitalWrite(Trig1, LOW); //給Trig發(fā)送一個低電平

? delayMicroseconds(2);? ? //等待 2微妙

? digitalWrite(Trig1, HIGH); //給Trig發(fā)送一個高電平

? delayMicroseconds(10);? ? //等待 10微妙

? digitalWrite(Trig1, LOW); //給Trig發(fā)送一個低電平

? temp1 = float(pulseIn(Echo1, HIGH)); //存儲回波等待時間,pulseIn():用于檢測引腳輸出的高低電平的脈沖寬度。

? cm1 = (temp1 * 17 ) / 1000; //把回波時間換算成cm

? display.setCursor(0, 40);

? display.print("distance_B:");

? display.print(cm1);

? display.print("cm");


}


666的評論 (共 條)

分享到微博請遵守國家法律
清丰县| 北安市| 渑池县| 绍兴县| 弋阳县| 海盐县| 天峨县| 宁陵县| 长垣县| 阿荣旗| 合作市| 雅江县| 广德县| 巩留县| 华蓥市| 肇源县| 日喀则市| 信丰县| 本溪| 鹤山市| 石林| 衡阳县| 巴林右旗| 什邡市| 海伦市| 宁都县| 云龙县| 肇州县| 双城市| 徐闻县| 叶城县| 黑河市| 瓦房店市| 六盘水市| 赤峰市| 宁远县| 新龙县| 宜州市| 樟树市| 东阿县| 五华县|