---
# System prepended metadata

title: '==9/19 Day1=='

---

# ==9/19 Day1==
:::spoiler
發材料+介紹:介紹材料、如何使用arduino寫程式、如何將程式上傳到nodeMCU
:::

## 材料
NodeMCU+電機驅動擴展板
![](https://i.imgur.com/pQ1IASV.jpg)
杜邦線
![](https://i.imgur.com/CmqrA6j.jpg)
NodeMCU
![](https://i.imgur.com/QtkMMGu.jpg)

### 介紹
![](https://i.imgur.com/hvDPk5t.jpg)
![](https://i.imgur.com/n75YZKH.jpg)
裝置管理員---連接埠
![](https://i.imgur.com/egSCdMt.jpg)

:::success
### 心得
雖然之前有學過，但是我還是聽得頭昏眼花。


:::





---
# ==9/26 Day2==
:::spoiler
介紹+動手實作(下載cp210驅動程式、arduino、程式)
:::
### 動手實作
![](https://i.imgur.com/4Pk2qzu.png)
用積木的方式寫程式
![](https://i.imgur.com/ILqqNKy.png)
```javascript
void setup()
{
  pinMode( D4 , OUTPUT);
}

void loop()
{
  digitalWrite(D4 , HIGH);
  delay( 3000 );
  digitalWrite(D4 , LOW);
  delay( 3000 );
}
```

讓nodeMCU上的光 亮3秒 暗3秒(錄影)
https://youtu.be/tTz8pS87MeY
:::success
### 心得
今天的程式不會太難，很容易上手。
:::




---
# ==10/3 Day3==
### 蜂鳴器
![](https://i.imgur.com/0kAhCds.jpg)
![](https://i.imgur.com/qrIHoTK.png)

```javascript
void setup()
{
}

void loop()
{
  tone(D8, 440);
  delay( 3000 );
  noTone(D8);
  delay( 3000 );
}
```
影片
https://youtube.com/shorts/pMVXsJbKNn4?feature=share

:::success
### 心得
這是我第一次使用蜂鳴器，我覺得有點擔心，因為怕腳位會插錯，導致蜂鳴器燒掉，所以我再三確認之後才安心的連接到電腦上。

:::



---
# ==10/17 Day4==
### 超音波感測器(可以偵測到距離)
![](https://i.imgur.com/5AiUuQC.jpg)
![](https://i.imgur.com/P9NOez3.png)
```javascript
int Range = 0 ;
int ardublockUltrasonicSensorCodeAutoGeneratedReturnCM(int trigPin, int echoPin)
{
  long duration;
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(20);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  duration = duration / 59;
  if ((duration < 2) || (duration > 300)) return false;
  return duration;
}


void setup()
{
  digitalWrite( D4 , LOW );

  Serial.begin(9600);
}

void loop()
{
  Range = 	ardublockUltrasonicSensorCodeAutoGeneratedReturnCM( D4 , D1 ) ;
  Serial.print("Distance=");
  Serial.print(Range);
  Serial.print(" ");
  Serial.println();
  delay( 200 );
}
```

影片
https://youtu.be/buAaBe_wxik

:::success
### 心得
相較於蜂鳴器，超音波感測器的程式比較多，也看不懂。很容易看錯杜邦線插在哪一個角位。

:::


---
# ==11/21 Day5==
### PIR(紅外線)感測器

![](https://i.imgur.com/CwdIpMw.png)
![](https://i.imgur.com/A6uaX7m.jpg)


```javascript
int Range = 0 ;
boolean __ardublockDigitalRead(int pinNumber)
{
  pinMode(pinNumber, INPUT);
  return digitalRead(pinNumber);
}


void setup()
{
  Serial.begin(9600);
}

void loop()
{
  Range = __ardublockDigitalRead(D5) ;
  Serial.print("message");
  Serial.print(Range);
  Serial.print(" ");
  Serial.println();
  delay( 200 );
}
```
影片
https://youtu.be/danbYG0TOGA

:::success
### 心得
我覺得也許可以結合前面上過的超音波感測器製作出新的東西。

:::
