Ngày 03/01/2017 My wedding:)- Du lịch Nikko tochigi

Ngày 03/01/2017 My wedding:)- Du lịch Nikko tochigi

Yêu là chết ở trong lòng một ít Vì mấy khi yêu mà chắc đã được yêu

Lần cuối Bố nhìn thấy biển

Lần cuối Bố nhìn thấy biển

Kỷ niệm sầm sơn 2015

Lễ Tốt Nghiệp Đại Học 02/07/2013

Lễ Tốt Nghiệp Đại Học 02/07/2013

Không bao giờ là bế tắc là tuyệt vọng Một khi bạn mong muốn nó tốt hơn Một khi bạn không bỏ cuộc Một khi bạn còn cố gắng!

Hành trình xanh và những người Bạn

Hành trình xanh và những người Bạn

Cuộc vui nào rồi cũng đến lúc tàn canh. Nỗi buồn nào rồi cũng vơi dần theo năm tháng. Chỉ có thời gian tấm lòng là Vô hạn. Dù ở phương trời nào,ta vẫn nhớ về nhau.

Đám cưới anh Trai

Đám cưới anh Trai

Hãy luôn tin tưởng ở con Mẹ nhé!

Nhảm Nhí Nhạt Nhẽo

Nhảm Nhí Nhạt Nhẽo

Ba hòn đá tảng của sự học là :quan sát nhiều từng trải nhiều và nghiên cứu nhiều

TP.HCM

TP.HCM

Đời người và những chuyến đi.

Sinh Nhật con gái

Sinh Nhật con gái

Sinh Nhật Gái Yêu

Automation 2G

Automation 2G

Nơi khơi dậy đam mê

Anh Em Thác Nôi

Anh Em Thác Nôi

Cách duy nhất để có bạn bè là chính bản thân mình phải là một người bạn

Kỉ niệm ae thân thiết

Kỉ niệm ae thân thiết

Vạn Sự Khởi đầu nan

"Hành trình vạn dặm bắt đầu từ những bước đi đầu tiên"

せんりのみちもいっぽから
Showing posts with label Tự học lập trình. Show all posts
Showing posts with label Tự học lập trình. Show all posts

Sep 29, 2023

PHÁT NHẠC RA MP3 DÙNG ARDUINO NANO + MODULE DFPLAYER+ RFID RC522

 SẢN PHẨM : 

Máy đọc thẻ thông minh




I. PHẦN CỨNG

  1. ARDUINO NANO
  2. LOA 5V
  3. MODULE GIẢI MÃ DFPLAYER MINI
  4. MẠCH ĐỌC RFID RC522
  5. THẺ NHỚ 8GB,...
  6. LED
  7. TRỞ 220KOM
II. SƠ ĐỒ ĐẤU NỐI


III. LẬP TRÌNH:

#include <SPI.h>
#include <MFRC522.h>
#include <SoftwareSerial.h>
#include <DFRobotDFPlayerMini.h>

#define RST_PIN 9
#define SS_PIN 10
#define LED_PIN 7
// đọc rfid
MFRC522 mfrc522(SS_PIN, RST_PIN);
String allowedRFIDCards[] = { "863f2c9e", "4c03c2a226f80","4d03c2a226f80" };
// khởi tạo dfplayermini
SoftwareSerial mySerial(2, 3);
DFRobotDFPlayerMini player;
// định thời gian tắt led
bool isPlaying = false;
unsigned long playbackStartTime = 0;
const unsigned long playbackDuration = 5000;

void setup() {
  mySerial.begin(9600);
  Serial.begin(9600);
  pinMode(LED_PIN, OUTPUT);
  SPI.begin();
  mfrc522.PCD_Init();
  Serial.println("Vui lòng đặt thẻ RFID lên đầu đọc...");
  if (!player.begin(mySerial)) {
    Serial.println(F("Lỗi! Không tìm thấy DFPlayer Mini."));
    while (true)
      ;
  }
  player.volume(30);
}

void loop() {
  if (mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial()) {
    Serial.println("Thẻ RFID được phát hiện!");
    String rfidCode = getRFIDCode();
    Serial.println(rfidCode);
    if (rfidCode == "863f2c9e") {
      Serial.println("Thẻ 1 OK. MP3 play");
      toggleLED(1);
      playSound(2);
    } else if (rfidCode == "4c03c2a226f80") {
      Serial.println("Thẻ 2 OK. MP3 play");
      toggleLED(1);
      playSound(3);
    } else if (rfidCode == "4d03c2a226f80") {
      Serial.println("Thẻ 3 OK. MP3 play");
      playSound(1);
      toggleLED(1);
    } else {
      Serial.println("Thẻ không được chấp nhận.Tắt");
      toggleLED(0);
      playSound(0);
    }

    isPlaying = true;
    playbackStartTime = millis(); // bắt đầu đếm thời gian

    delay(2000);
  }

  if (isPlaying) {
    // Nếu mp3 phát >5S thì sẽ tắt led
    if (millis() - playbackStartTime >= playbackDuration) {
      toggleLED(0);
      isPlaying = false;
    }
  }
}

String getRFIDCode() {
  String rfidCode = "";
  for (byte i = 0; i < mfrc522.uid.size; i++) {
    rfidCode += String(mfrc522.uid.uidByte[i], HEX);
  }
  return rfidCode;
}

void toggleLED(int state) {
  digitalWrite(LED_PIN, state);
}

void playSound(int track) {
  player.play(track);
}


Jun 24, 2023

Thực hành lập trình điều khiển Robot Car for Arduino

Lắp ráp và code mẫu của osoyoo :

Video Nổi bật

 
Please Enable Javascript!Enable JavaScript