Bài 3: Hàm xuất và đọc tín hiệu số trong lập trình Arduino

     Hàm xuất và đọc tín hiệu số trong lập trình Arduino là các lệnh được sử dụng để xử lý tín hiệu số. Với những lệnh sử dụng để xuất tín hiệu số được sử dụng để đưa mức điện áp 5V ra các chân I/O đã định nghĩa để điều khiển các module hoặc các thiết bị ngoại vi. Còn những lệnh đọc tín hiệu số, có nghĩa là được sử dụng để nhận biết mức điện áp từ các thiết bị ngoại vi đưa vào cho Arduino.

     Những lệnh xuất và đọc tín hiệu số sẽ hoạt động chung với lệnh khai báo (định nghĩa) chức năng của các chân pinMode. Những chân I/O đã được định nghĩa là xuất dữ liệu sẽ được sử dụng chung những lệnh xuất điện áp. Còn riêng những chân định nghĩa nhận điện áp thì sẽ nhận những lệnh đọc mức điện áp.

     Để hiểu rõ những lệnh xuất tín hiệu và đọc tín hiệu số cho Arduino, các bạn hãy nghiên cứu các câu lệnh sau:

  NỘI DUNG BÀI VIẾT  

  • Hàm xuất tín hiệu số – Hàm digitalWrite
  • Hàm đọc tín hiệu số – Hàm digitalRead
  • Ứng dụng cho hàm xuất và đọc tín hiệu số trong Arduino

 

 1.  HÀM XUẤT TÍN HIỆU SỐ – Hàm digitalWrite  

  • Cú pháp: digitalWrite(<Tên chân xuất dữ liệu>, <Mức điện áp xuất>);
  • Chức năng: hàm digitalWrite được sử dụng để xuất dữ liệu ra chân đã định nghĩa sẵn (bắt buộc phải định nghĩa chân xuất dữ liệu bằng lệnh pinMode).
    • Tên chân xuất dữ liệu: là số thứ tự của chân cần xuất dữ liệu. Hoặc tên của chân Arduino được khai báo trước.
    • Mức điện áp xuất: mức cao HIGH, 1

                                         mức thấp LOW, 0

    Ví dụ:

  • digitalWrite(13, HIGH); //Lệnh xuất điện áp mức cao (5V) ra chân số 13 của Arduino
  • digitalWrite(led, LOW); // lệnh xuất điện áp mức thấp (0V) ra chân được đặt tên là led. 

  2. HÀM ĐỌC TÍN HIỆU SỐ – HÀM digitalRead         

  • Cú pháp: <Tên biến nhận giá trị> = digitalRead(<Tên chân đọc dữ liệu>);
  • Chức năng: hàm digitalRead được sử dụng để đọc dữ liệu từ thiết bị ngoại vi. Tín hiệu sẽ được đọc và gán cho biến chương trình. Bắt buộc phải định nghĩa chân đọc dữ liệu bằng lệnh pinMode, và phải khai báo biến nhận giá trị lưu giá trị vừa đọc.
    • Tên chân đọc dữ liệu: là số thứ tự của chân cần đọc dữ liệu hoặc tên của chân định nghĩa trước.
    • Kết quả trả về cho biến là HIGH (1) hoặc là mức thấp LOW ( 0).

    Ví dụ:

  • Trang_thai = digitalRead(13); // Đọc mức điện áp từ chân số 13 của vi điều khiển. Và thực hiện lưu giá trị đọc được vào biến Trang_thai
  • A = digitalRead(led); // Đọc mức điện áp từ chân led và lưu vào biến A.

  3. ỨNG DỤNG CHO HÀM XUẤT VÀ ĐỌC TÍN HIỆU SỐ TRONG ARDUINO  

    Viết chương trình sử dụng 1 nút nhấn để điều khiển 1 led đơn. Nếu led đang tắt thì khi nhấn nút đèn led sẽ sáng. Khi đèn led đang tắt nhấn nút đèn sẽ sáng.

    Trong chương trình này chúng ta sẽ thực hiện 2 chân để kết nối với thiết bị ngoại vi. Chân số 12 sẽ kết nối với 1 led đơn. Chân số 4 sẽ kết nối với nút nhấn dạng tích cực mức thấp. Tại chân số 12 khi kết nối với đèn led cần phải có điện trở để hạn dòng cho led. Còn với chân số 4 cần phải khai báo kích hoạt điện trở kéo lên.

Sử dụng 1 nút nhấn điều khiển led đơn

   Đoạn chương trình sẽ được viết như sau:

void setup() {
  pinMode(12,OUTPUT);
  pinMode(4,INPUT_PULLUP);
  }

void loop() {
  int but;
  int Trang_Thai=0;
  digitalWrite(12,LOW);

  but=digitalRead(4);
if(but==0)
 {
 if (Trang_Thai ==0)
  {
    digitalWrite(12,HIGH);
    delay(500);
    Trang_Thai=1;
   }
 else
   {
    digitalWrite(12,LOW);
    delay(500);
    Trang_Thai=0;
   }
  }
}

 

 


Categories:

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *