Arduino Uno link HC-05 Module



Arduino Uno คืออะไร? อธิบายอย่างละเอียด

Arduino Uno เป็นบอร์ดไมโครคอนโทรลเลอร์ที่ได้รับความนิยมอย่างมากในหมู่ผู้เริ่มต้นและผู้ที่สนใจพัฒนาโปรเจ็กต์อิเล็กทรอนิกส์ต่างๆ คำว่า "Uno" 

ในภาษาอิตาเลียนหมายถึง "หนึ่ง" ซึ่งสื่อถึงความเป็นบอร์ดรุ่นพื้นฐานและเป็นจุดเริ่มต้นที่ดีสำหรับการเรียนรู้ไมโครคอนโทรลเลอร์

บอร์ด Arduino Uno ทำอะไรได้บ้าง?

ควบคุมอุปกรณ์อิเล็กทรอนิกส์ต่างๆ: เช่น LED, มอเตอร์, เซ็นเซอร์, รีเลย์ และอื่นๆ

อ่านค่าจากเซ็นเซอร์: เช่น เซ็นเซอร์วัดอุณหภูมิ, เซ็นเซอร์วัดแสง, เซ็นเซอร์วัดความชื้น

สร้างอินเทอร์เฟซ: เช่น ปุ่มกด, จอ LCD, และอื่นๆ

เชื่อมต่อกับคอมพิวเตอร์: เพื่ออัปโหลดโปรแกรมและรับข้อมูล

สร้างโปรเจ็กต์อัตโนมัติ: เช่น ระบบควบคุมบ้านอัจฉริยะ, หุ่นยนต์, และอื่นๆ

ทำไม Arduino Uno ถึงได้รับความนิยม?

ใช้งานง่าย: มีภาษาโปรแกรมที่เข้าใจง่าย (ภาษา C++) และมีชุมชนผู้ใช้ขนาดใหญ่ที่พร้อมให้ความช่วยเหลือ

ราคาไม่แพง: เหมาะสำหรับผู้เริ่มต้นที่ต้องการทดลองและเรียนรู้

มีส่วนประกอบที่หลากหลาย: สามารถเชื่อมต่อกับอุปกรณ์อิเล็กทรอนิกส์ต่างๆ ได้มากมาย

โอเพนซอร์ส: สามารถเข้าถึงรหัสโปรแกรมและออกแบบบอร์ดได้อย่างอิสระ

มีเอกสารและตัวอย่างโปรแกรมมากมาย: ช่วยให้ผู้ใช้สามารถเรียนรู้และพัฒนาโปรเจ็กต์ได้อย่างรวดเร็ว

ส่วนประกอบหลักของ Arduino Uno

ไมโครคอนโทรลเลอร์ ATmega328P: เป็นหน่วยประมวลผลหลักที่ควบคุมการทำงานทั้งหมดของบอร์ด

พินดิจิตอล: ใช้สำหรับรับสัญญาณจากปุ่มกด, เซ็นเซอร์ และส่งสัญญาณไปควบคุมอุปกรณ์ต่างๆ

พินอนาล็อก: ใช้สำหรับอ่านค่าจากเซ็นเซอร์ที่ให้ค่าแบบต่อเนื่อง เช่น เซ็นเซอร์วัดแสง

พอร์ต USB: ใช้สำหรับเชื่อมต่อกับคอมพิวเตอร์เพื่ออัปโหลดโปรแกรม

ช่องจ่ายไฟ: ใช้สำหรับจ่ายไฟให้กับบอร์ด

การเริ่มต้นใช้งาน Arduino Uno

ติดตั้ง Arduino IDE: เป็นโปรแกรมที่ใช้สำหรับเขียนโปรแกรมและอัปโหลดไปยังบอร์ด Arduino

เชื่อมต่อบอร์ด Arduino กับคอมพิวเตอร์: ใช้สาย USB

เขียนโปรแกรม: ภาษา C++ ที่ใช้กับ Arduino มีโครงสร้างที่เรียบง่ายและเข้าใจง่าย

อัปโหลดโปรแกรม: คลิกปุ่ม Upload ใน Arduino IDE เพื่ออัปโหลดโปรแกรมไปยังบอร์ด

โปรเจ็กต์ตัวอย่างที่สามารถทำได้กับ Arduino Uno

ควบคุมไฟ LED ให้กระพริบ: โปรเจ็กต์พื้นฐานที่ใช้เรียนรู้การควบคุมพินดิจิตอล

อ่านค่าจากเซ็นเซอร์วัดอุณหภูมิ: แสดงค่าอุณหภูมิบนจอ LCD หรือส่งไปยังคอมพิวเตอร์

สร้างรถบังคับวิทยุ: ควบคุมมอเตอร์ของรถผ่านรีโมทคอนโทรล

สร้างระบบควบคุมแสงสว่างอัตโนมัติ: เปิด-ปิดไฟตามระดับแสง

สร้างเครื่องตรวจจับการเคลื่อนไหว: ใช้เซ็นเซอร์ตรวจจับการเคลื่อนไหวและส่งสัญญาณเตือน

สรุป

Arduino Uno เป็นบอร์ดไมโครคอนโทรลเลอร์ที่ใช้งานง่ายและมีประสิทธิภาพ 

เหมาะสำหรับผู้ที่ต้องการเริ่มต้นเรียนรู้การเขียนโปรแกรมและสร้างโปรเจ็กต์อิเล็กทรอนิกส์ 

ด้วยความสามารถที่หลากหลายและชุมชนผู้ใช้ที่แข็งแกร่ง Arduino Uno จึงเป็นเครื่องมือที่น่าสนใจสำหรับผู้ที่ต้องการสร้างสรรค์สิ่งใหม่ ๆ


อุปกรณ์ ที่ต้องใช้

1.Arduino Ide  2.3.2  หรือเวอร์ชั่นอื่น 

2.โมดูล Bluetooth HC-05

3.สาย Jumper

4.แหล่งจ่ายไฟ (ถ้าไม่ใช้จาก Arduino)




2.Check board USB Win10 Port 

  Press Windows key + R to open the Run dialog.

 Type "devmgmt.msc" and press Enter to open the Device Manager.



3. Install  Driver

https://sparks.gogo.co.nz/ch340.html



4. การเชื่อมต่อ:

เชื่อมต่อพินของ HC-05 เข้ากับ Arduino UNO:

VCC ของ HC-05 → 5V ของ Arduino UNO

GND ของ HC-05 → GND ของ Arduino UNO

TX ของ HC-05 → RX (2) ของ Arduino (หรือต่อผ่าน SoftwareSerial ใช้พินอื่น)

RX ของ HC-05 → TX (3) ของ Arduino (ใช้ตัวต้านทานแบ่งแรงดันถ้าจำเป็น 5V → 3.3V)

EN ของ HC-05 → 3.3V  ของ Arduino


5.การเปลี่ยนโหมด BT to AT Command 

AT Command ไฟกระพริบ 1 ครั้งเว้น 2 วินาที 

BT ไฟกระพริบ 2 ครั้งเว้น 1 วินาที 

เข้า AT Mode กดปุ่มรีเซ็ต HC-05 ค้าง  ดึงปลั๊กออก แล้วกดปุ่มรีเซ็ตค้าง เสียบปลั๊ก

เข้า BT Mode กดปุ่มรีเซ็ต HC-05 ค้าง ดึงปลั๊กออก เสียบปลั๊ก



6. Test Code  Arduino UNU R3

//Test Code

void setup() {

  pinMode(13, OUTPUT);

}


void loop() {

  digitalWrite(13, HIGH);

  delay(1000);

  digitalWrite(13, LOW);

  delay(1000);

}



7. Test Code  Arduino UNU R3 with HC-05

#include <SoftwareSerial.h>

SoftwareSerial BTserial(2, 3);   // TXD ,RXD

// int = -32768 to 0,+32767 (2 ยกกำลัง 15 )

// 00000000 - 01111111 = 0->+32767

// 10000000 - 11111111 = -32768


const long baudRate = 38400; 

char c=' ';

boolean NL = true;

 

void setup() 

{

    Serial.begin(9600);

    Serial.print("Sketch:   ");   Serial.println(__FILE__);

    Serial.print("Uploaded: ");   Serial.println(__DATE__);

    Serial.println(" ");

 

    BTserial.begin(baudRate);  

    Serial.print("BTserial started at "); Serial.println(baudRate);

    Serial.println(" ");

}

 

void loop()

{

 

    // Read from the Bluetooth module and send to the Arduino Serial Monitor

    if (BTserial.available())

    {

        c = BTserial.read();

        Serial.write(c);

    }

 

 

    // Read from the Serial Monitor and send to the Bluetooth module

    if (Serial.available())

    {

        c = Serial.read();

        BTserial.write(c);   

 

        // Echo the user input to the main window. The ">" character indicates the user entered text.

        if (NL) { Serial.print(">");  NL = false; }

        Serial.write(c);

        if (c==10) { NL = true; }

    }

 

}



อ้างอิง แหล่งที่มา 

Note:

https://agriculture-lalur.blogspot.com/2024/08/arduino-uno-link-hc-05-module.html

Diagram Arduino UNO R3

https://store-usa.arduino.cc/products/arduino-uno-rev3

Install  Driver

https://sparks.gogo.co.nz/ch340.html

AT Command 

https://www.martyncurrey.com/arduino-with-hc-05-bluetooth-module-at-mode/


หมายเหตุ

RAM (Random Access Memory) หน่วยความจำประเภทนี้จะมี แบตเตอรี่ เล็กๆ ต่อไว้ 

เพื่อใช้เลี้ยงข้อมูลเมื่อเกิดไฟดับ การอ่านและเขียนโปรแกรมลงใน RAM ทำได้ง่ายมาก 

จึงเหมาะกับการใช้งานในระยะทดลองเครื่องที่มีการเปลี่ยนแปลงแก้ไขโปรแกรมบ่อยๆ

EPROM (Erasable Programmable Read Only Memory) 

หน่วยความจำชนิด EPROM นี้จะต้องใช้เครื่องมือพิเศษในการเขียนโปรแกรม 

การลบโปรแกรมทำได้โดยใช้แสงอัลตราไวโอเลตหรือตากแดดร้อนๆ นาน ๆ 

มีข้อดีตรงที่โปรแกรมจะไม่สูญหายแม้ไฟดับ จึงเหมาะกับการใช้งานที่ไม่ต้องเปลี่ยนโปรแกรม


EEPROM (Electrical Erasable Programmable Read Only Memory) 

หน่วยความจำชนิดนี้ไม่ต้องใช้เครื่องมือพิเศษในการเขียน และลบโปรแกรม โดยใช้วิธีการทางไฟฟ้าเหมือนกับ RAM 

นอกจากนั้นก็ไม่จำเป็นต้องมีแบตเตอรี่สำรองไฟเมื่อไฟดับ ราคาจะแพงกว่า 

แต่จะรวมคุณสมบัติที่ดีของทั้ง RAM และ EPROM เอาไว้ด้วยกัน


Contact:

https://www.facebook.com/chaiyutpong

ความคิดเห็น