Hướng dẫn lập trình Android bằng C

Trong thời đại công nghệ phát triển như vũ bão, việc kết nối các thiết bị điện tử với nhau ngày càng trở nên quan trọng và phổ biến. Hôm nay, chúng ta sẽ cùng tìm hiểu cách kết nối Arduino với module Bluetooth và điều khiển nó thông qua điện thoại Android. Đây là một ví dụ tuyệt vời về cách lập trình Android bằng ngôn ngữ C, mở ra nhiều khả năng ứng dụng thú vị trong cuộc sống hàng ngày.

Chuẩn bị thiết bị

Trước khi bắt đầu, hãy đảm bảo bạn có đầy đủ các thiết bị sau:

  • Arduino Uno
  • Module Bluetooth HC06 (loại Slave)
  • Điện thoại chạy hệ điều hành Android
  • Breadboard
  • Dây cắm breadboard
  • Vài cái đèn LED
  • Vài con điện trở 560 Ohm

Tìm hiểu về Module Bluetooth HC06

Module Bluetooth HC06 là một thiết bị quan trọng trong dự án này. Nó gồm 4 chân:

  1. GND
  2. VCC
  3. TX
  4. RX

Khi kết nối, bạn chỉ cần nối chân TX với chân 0 và chân RX nối với chân 1 trên Arduino. Sau đó, bạn có thể lập trình gửi và nhận dữ liệu như một cổng Serial thông thường.

Lưu ý: Mật khẩu mặc định khi kết nối với điện thoại là 1234.

Phần mềm trên điện thoại Android

Trong ví dụ này, chúng ta sẽ sử dụng phần mềm DroiDuino. Bạn có thể tìm và tải về từ Google Play. Giao diện và cách sử dụng của phần mềm này rất đơn giản và trực quan.

Sơ đồ kết nối

[Hình ảnh sơ đồ kết nối]

Lập trình

Dưới đây là code mẫu để điều khiển Arduino thông qua Bluetooth:

// Khai báo biến
char state;

void setup() {
  // Cài đặt các chân bạn muốn điều khiển thành Output
  // Ở đây tôi sử dụng 4 chân 9, 10, 11, 12
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);
  pinMode(12, OUTPUT);
  Serial.begin(9600); // Kết nối bluetooth module ở tốc độ 9600
}

void loop() {
  if(Serial.available() > 0){
    // Đọc giá trị nhận được từ bluetooth
    state = Serial.read();
  } else 
    state = 0;

  Serial.println(state);

  // Thực hiện điều khiển các chân 9, 10, 11, 12
  // Ở đây tôi đã quy ước sẵn các giá trị gửi và nhận dữ liệu giữa điện thoại và Arduino
  switch (state) {
    case '1':
      digitalWrite(9, HIGH);
      break;
    case '2':
      digitalWrite(9, LOW);
      break;
    case '3':
      digitalWrite(10, HIGH);
      break;
    case '4':
      digitalWrite(10, LOW);
      break;
    case '5':
      digitalWrite(11, HIGH);
      break;
    case '6':
      digitalWrite(11, LOW);
      break;
    case '7':
      digitalWrite(12, HIGH);
      break;
    case '8':
      digitalWrite(12, LOW);
      break;
    default:
      break;
  }
}

Kiểm tra và mở rộng

Sau khi lập trình xong, bạn có thể kết nối vài con LED theo sơ đồ và chạy thử. Từ ví dụ đơn giản này, bạn có thể phát triển thêm bằng cách kết nối Arduino với Module relay để điều khiển các thiết bị sử dụng điện 220V trong gia đình.

Mẹo kiểm tra giá trị truyền từ điện thoại tới Bluetooth

Để kiểm tra giá trị được truyền từ điện thoại tới Bluetooth (chỉ dùng cho Arduino Uno), bạn có thể thực hiện các bước sau:

  1. Tháo con Atmega328p ra
  2. Lắp mạch Bluetooth như hình trên
  3. Bật Serial Monitor, chỉnh baudrate 9600
  4. Bật phần mềm trên điện thoại và kết nối tới Bluetooth
  5. Nhấn nút bất kỳ để kiểm tra các giá trị được gửi đi trên Serial Monitor

Để nạp code lại, bạn chỉ cần gắn con Atmega328 vào, tháo RX, TX của Bluetooth ra và nạp.

Lưu ý quan trọng

Khi upload code lên board Arduino, hãy nhớ gỡ 2 dây gắn vào TX và RX trên board Arduino. Sau khi quá trình upload hoàn thành, bạn mới cắm 2 dây đó vào vị trí RX và TX.

Chúc bạn thành công trong việc lập trình Android bằng C và tạo ra những ứng dụng thú vị với Arduino và Bluetooth!

Nguồn: https://truongxaydunghcm.edu.vn/