Mục lục:

Chuông cửa Arduino: 5 bước
Chuông cửa Arduino: 5 bước

Video: Chuông cửa Arduino: 5 bước

Video: Chuông cửa Arduino: 5 bước
Video: Tự học lập trình Arduino Tập 14 | Lập trình Arduino điều khiển 8 led sáng dần tắt dần 2024, Tháng bảy
Anonim
Chuông cửa Arduino
Chuông cửa Arduino

QUÂN NHU

-2 bảng bánh mì

-buzzer

-cảm ứng dây

-2 arduino / genuino với cáp nguồn

-rf phát và nhận

-push nút

-100 ohm điện trở

Bước 1: Chức năng

Dự án này là một chiếc chuông cửa đang hoạt động mà chức năng chính là sử dụng mã để lập trình arduino theo cách mà nút nhấn với bộ phát gửi tín hiệu đến đầu nhận bằng bộ rung và bộ thu sẽ bắt đầu âm thanh buzz của chuông cửa bằng kết nối không dây.

Bước 2: Bước 1: Bảng phát

Bước 1: Bảng phát
Bước 1: Bảng phát

Cách dự án này hoạt động là có 2 bảng mạch bánh mì và 2 arduiono / genuinos được kết nối với chúng. đối với bảng mạch máy phát, chúng tôi kết nối nút nhấn với điện trở 100 ohm được nối với đất và một dây kết nối với nguồn trên bảng mạch. Sau đó kết nối bộ phát với breadboard và đấu dây nút vào cả bộ phát và arduino như trong hình.

Bước 3: Bước 2: Bảng nhận

Bước 2: Bảng nhận
Bước 2: Bảng nhận

Trên bo mạch bộ thu là nơi bộ rung đi đến. Kết nối một dây với mặt đất thông qua bộ thu và kết nối dây với một chân bạn chọn mà sau này bạn có thể tùy chỉnh trong mã của mình. Kết nối đầu thu với breadboard và đấu dây vào arduino như trong hình.

Bước 4: Bước 3: Mã máy phát

// ask_transmitter.pde

// - * - mode: C ++ - * -

// Ví dụ đơn giản về cách sử dụng RadioHead để truyền tin nhắn

// với bộ phát ASK một cách rất đơn giản.

// Triển khai bộ phát simplex (một chiều) với mô-đun TX-C1

#bao gồm

#include // Không thực sự được sử dụng nhưng cần để biên dịch

Trình điều khiển RH_ASK;

// Trình điều khiển RH_ASK (2000, 2, 4, 5); // ESP8266 hoặc ESP32: không sử dụng chân 11

void setup ()

{

Serial.begin (9600); // Chỉ gỡ lỗi

pinMode (5, INPUT);

if (! driver.init ())

Serial.println ("init bị lỗi");

}

void loop ()

}

if (digitalRead (5) == HIGH) {

const char * msg = "a";

driver.send ((uint8_t *) msg, strlen (msg));

driver.waitPacketSent ();

chậm trễ (200);

}

}

Bước 5: Bước 4: Mã người nhận

#bao gồm

#include // Không thực sự được sử dụng nhưng cần biên dịch

#include "pitchhes.h" // thêm Tần số tương đương cho nốt nhạc

#include "themes.h" // thêm phiên bản và thời lượng của Ghi chú

Trình điều khiển RH_ASK;

void setup ()

{

Serial.begin (9600); // Chỉ gỡ lỗi

if (! driver.init ())

Serial.println ("init bị lỗi");

khác

Serial.println ("xong");

Trình điều khiển RH_ASK;

void setup ()

{

Serial.begin (9600); // Chỉ gỡ lỗi

if (! driver.init ())

Serial.println ("init bị lỗi");

khác

Serial.println ("xong");

}

void Play_Pirates ()

{

for (int thisNote = 0; thisNote <(sizeof (Pirates_note) / sizeof (int)); thisNote ++) {

int noteDuration = 1000 / Pirates_duration [thisNote]; // chuyển đổi thời lượng thành độ trễ thời gian

tone (8, Pirates_note [thisNote], noteDuration);

int pauseBetweenNotes = noteDuration * 1.05; // Đây là nhịp độ 1.05, hãy tăng để chơi chậm hơn

trì hoãn (pauseBetweenNotes);

noTone (8); // dừng nhạc trên pin 8

}

}

void loop ()

{

uint8_t buf [1];

uint8_t buflen = sizeof (buf);

if (driver.recv (buf, & buflen)) // Không chặn

{

Serial.println ("Đã chọn -> 'Anh ta là một tên cướp biển'");

Play_Pirates ();

Serial.println ("dừng");

}

}

Đề xuất: