Giao tiếp máy tính với arduino

Trong bài viết này, Điện Tử Tương Lai đã share về tiếp xúc UART là gì cùng nó hoạt động thế nào. Chúng tôi cũng trở nên viết một sketch dễ dàng và đơn giản nhằm lý giải bí quyết thực hiện bối cảnh Arduino Uno UART.

Bạn đang xem: Giao tiếp máy tính với arduino

 

UART là gì

UART là viết tắt của Universal Asynchronous Receiver / Transmitter. Nó là 1 trong những thiết bị Hartware (hoặc mạch) được sử dụng để giao tiếp nối liền giữa hai máy.

 

Các máy UART được liên kết như vậy nào

Kết nối hai sản phẩm công nghệ UART cùng nhau khôn cùng dễ dàng cùng dễ dãi. Hình bên dưới một sơ đồ gia dụng kết nối UART cơ bạn dạng.

*

Một chân dùng để truyền tài liệu (gọi là chân TX) cùng chân cơ dùng để làm nhấn dữ liệu (Gọi là chân RX). Chúng ta chỉ có thể liên kết nhì sản phẩm công nghệ UART cùng nhau.

 

UART chuyển động như vậy nào

UART hoạt động bằng cách biến hóa tài liệu thành các gói để gửi hoặc tạo ra lại tài liệu tự các gói nhận thấy.

 

Gởi dữ liệu Serial

Trước Khi thứ UART có thể gửi tài liệu, máy truyền biến đổi byte tài liệu thành bit. Sau Lúc đổi khác dữ liệu thành những bit, thiết bị UART đang chia chúng thành các gói nhằm truyền. Mỗi gói đựng một bit ban đầu, một khung tàn liệu, bit chẵn lẻ với các bit ngừng. Hình bên dưới là một gói dữ liệu chủng loại.

*

Sau Khi chuẩn bị gói tin, mạch UART sẽ gửi nó ra ngoài qua chân TX.

 

Nhận tài liệu Serial

Thiết bị UART nhận đang khám nghiệm gói nhận thấy (thông qua chân RX) nhằm tìm lỗi bằng phương pháp tính tiên phong hàng đầu với đối chiếu với giá trị của bit chẵn lẻ gồm trong gói. Nếu không tồn tại lỗi vào quy trình truyền, nó sẽ tiến hành tách bit ban đầu, bit giới hạn, bit chẵn lẻ để lấy khung tàn liệu. Nó có thể buộc phải thừa nhận một trong những gói trước khi rất có thể kiến thiết lại tổng thể byte dữ liệu từ bỏ các kác loạn liệu. Sau Khi xây đắp lại byte, nó được lưu trữ vào cỗ đệm UART.

 

Thiết bị UART dìm áp dụng bit chẵn lẻ nhằm xác định coi gồm bị mất dữ liệu trong quá trình truyền hay là không. Mất tài liệu trong quá trình truyền xảy ra lúc 1 bit chuyển đổi tâm trạng của nó trong những lúc truyền. Các bit rất có thể chuyển đổi bởi vì khoảng cách truyền, sự phản xạ từ cùng vận tốc truyền không hợp, thuộc đa số đồ vật khác.

 

Thông số UART

UART gồm những thiết lập phải như là nhau bên trên cả nhị máy để có tiếp xúc cân xứng. Các setup này có vận tốc truyền, độ nhiều năm tài liệu, bit chẵn lẻ, số bit ngừng và kiểm soát luồng.

 

Tốc độ truyền

Tốc độ truyền là số bit từng giây (bps) nhưng mà vật dụng UART có thể truyền hoặc thừa nhận. Chúng ta buộc phải đặt cả nhì thiết bị UART gồm thuộc tốc độ truyền để truyền tài liệu phù hợp. Các giá trị phổ biến cho tốc độ truyền là 9600, 1200, 2400, 4800, 19200, 38400, 57600 cùng 115200 bps.

 

Chiều nhiều năm dữ liệu

Độ dài dữ liệu là con số bit trên mỗi byte tài liệu.

 

Bit chẵn lẻ

Bit chẵn lẻ là 1 bit được sản xuất dữ liệu được truyền với cho tất cả những người nhận biết số 1 trong dữ liệu được truyền là lẻ xuất xắc chẵn. Cài đặt có thể có mang đến Bit chẵn lẻ là Lẻ hoặc Chẵn.

 

ODD - bit chẵn lẻ là ‘1’ giả dụ gồm một số lẻ là một trong vào khung dữ liệu

EVEN - bit chẵn lẻ là "0" giả dụ tất cả số chẵn là 1 vào khung tàn liệu

 

Các bit dừng

Các thứ UART rất có thể sử dụng không, một hoặc nhị bit ngừng để ghi lại điểm xong xuôi của một tập vừa lòng những bit (được gọi là gói tin) được tương truyền.

 

Kiểm rà luồng

Kiểm rà soát luồng là cách thức rời khủng hoảng mất dữ liệu khi truyền tài liệu qua UART. Thiết bị UART thực hiện các ký kết từ đặc biệt quan trọng làm cho kiểm soát luồng nhằm bước đầu hoặc dừng truyền.

 

Giao diện UART Arduino

Arduino tất cả một hoặc những chân UART tùy thuộc vào bo mạch. Trong bài xích này, chúng ta đang sử dụng Arduino Uno chỉ gồm một bối cảnh UART bên trên chân 0 (RX0) với chân 1 (TX0). Các chân 0 với 1 của Arduino cũng rất được thực hiện để giao tiếp với Arduino IDE qua USB. Vì vậy, nếu như bạn sở hữu các sketch lên UNO, trước tiên hãy ngắt liên kết bất kỳ dây nào trên các chân 0 cùng 1. Hình bên dưới là địa điểm của những chân UART TX và RX.

Xem thêm: See More Of Xem Phim Biệt Đội Tiêm Kích, R2B Return To Base

*

 


*

Mức logic UART

Các nấc xúc tích và ngắn gọn UART rất có thể không giống nhau giữa những công ty cung ứng. Ví dụ: Arduino Uno bao gồm nút lô ghích 5-V tuy vậy cổng RS232 của sản phẩm tính tất cả nút xúc tích +/- 12-V. Kết nối trực tiếp Arduino Uno cùng với cổng RS232 đã làm cho hư Arduino. Nếu cả hai thứ UART không có thuộc nấc logic, thì cần có mạch biến hóa nút súc tích cân xứng nhằm kết nối những lắp thêm.

 

Project UART đối kháng giản

Sau lúc tìm hiểu phương pháp hoạt động vui chơi của UART, bây chừ họ hãy tạo ra một sketch dễ dàng trình bày phương pháp áp dụng giao tiếp UART bằng Arduino Uno.

 

Project của bọn họ là về điều khiển và tinh chỉnh đèn LED tích thích hợp của Arduino tự xa thông qua UART. Một nút ít nhận tất cả dây với bo Uno thứ nhất sẽ điều khiển và tinh chỉnh đèn LED tích vừa lòng của bo Uno đồ vật hai với ngược lại.

 

Những vật dụng bạn cần

Để kiến tạo project, họ nên những yếu tố sau:

 

Arduino Uno (2 cái)

Nút ít nhận (2 cái)

Breadboard

Dây jumper

 

SƠ ĐỒ KẾT NỐI

Hình bên dưới là bí quyết liên kết những nguyên tố được thực hiện vào project của chúng ta.

 

*

Arduino Sketch

Sau Khi tích lũy và gắn ráp Hartware, bây chừ chúng ta vẫn sẵn sàng chuẩn bị để lập trình bo. Đối cùng với project này, cả hai bo sẽ sở hữu được sketch hệt nhau nhau. Thứ nhất, chúng ta đặt chính sách chân 8 (nút nhấn) thành INPUT_PULLUPhường, đặt cơ chế chân 13 (LED) thành OUTPUT cùng đặt tinh thần ban đầu của chân 13 thành LOW (tắt LED).

 

*

Serial Oject

Arduino góp chúng ta dễ dàng áp dụng phần cứng UART tích vừa lòng sẵn bằng cách áp dụng serial object. Serial Object có những tính năng cần thiết để thực hiện dễ dàng hình ảnh Arduino UART.

 

SERIAL.BEGIN ()

Để tiếp xúc qua đồ họa UART, trước tiên chúng ta phải định thông số kỹ thuật nó. Cách dễ nhất nhằm định cấu hình UART của Arduino là áp dụng hàm Serial.begin (speed). Tsay mê số vận tốc là vận tốc truyền nhưng chúng ta mong muốn UART chạy. Sử dụng công dụng này sẽ đặt các tmê mệt số UART sót lại thành cực hiếm mang định (Độ lâu năm tài liệu = 8, bit chẵn lẻ = 1, Số bit ngừng = Không).

 

Nếu setup khoác định không tương xứng với bạn, hãy sử dụng hàm Serial.begin (vận tốc, cấu hình) cầm cố vị Serial.begin (tốc độ). Cấu hình tham số bổ sung cập nhật được áp dụng để đổi khác setup cho độ dài dữ liệu, bit chẵn lẻ, số các bit ngừng. Quý Khách hoàn toàn có thể tra cứu các quý giá được xác minh mang lại cấu hình tham mê số tại đây.

 

Đoạn mã sau đây thêm Serial.begin (9600); bên phía trong thiết lập () để tạo Arduino Uno UART cùng với vận tốc truyền 9600 bps cùng các thông số kỹ thuật không giống được đặt thành quý giá khoác định.

 

*

Phần tiếp theo của mã là phát âm và lưu lại một giá trị nhận được trường đoản cú serial. Để triển khai vấn đề này, bọn họ đang sử dụng hàm Serial.available () cùng với câu lệnh If để khám nghiệm coi gồm dữ liệu cảm nhận hay là không. Sau kia bọn họ đang điện thoại tư vấn Serial. read () để lấy một byte tài liệu đã nhận và lưu lại quý giá vào thay đổi data_rcvd. Giá trị data_rcvd tinh chỉnh Bật hoặc Tắt của đèn LED chiếu sáng tích đúng theo.

 

SERIAL.AVAILABLE ()

Để bình chọn xem tất cả dữ liệu đã chờ đọc vào cỗ đệm UART (hoặc serial) hay là không, bọn họ đang áp dụng hàm Serial.available (). Serial.available () trả về số byte sẽ hóng vào cỗ đệm.

SERIAL.READ ()

Để gọi dữ liệu sẽ đợi vào cỗ đệm tiếp liền, chúng ta sẽ áp dụng hàm Serial.read (), hàm này trả về một byte dữ liệu được phát âm trường đoản cú bộ đệm.

 

*

SERIAL.WRITE ()

Để gửi tài liệu qua các chân TX0 của Arduino, bọn họ đã áp dụng hàm Serial.write (val). Tyêu thích số val là byte (hoặc chuỗi byte) sẽ tiến hành gửi.

 

Trong sketch, họ vẫn gửi một quý giá char tùy nằm trong vào tinh thần của đôi bàn chân 8. Chúng ta vẫn gửi quý hiếm char "1" ví như chân 8 là HIGH hoặc giá trị char "0" ví như chân 8 là LOW.

 

*

TẢI SKETCH LÊN VÀ KIỂM TRA

Lưu sketch dưới dạng arduino_uart_tutorial.ino. Bước còn lại là tải sketch lên cả nhị bo mạch Arduino Uno. Hãy lưu giữ ngắt liên kết dây kết nối cùng với chân TX0 với RX0 trước khi mua sketch lên. Sau Khi cài đặt lên thành công, hãy kết nối lại dây bên trên chân TX0 với RX0.

 

Sau Lúc sở hữu lên, chúng ta cũng có thể điều khiển LED tích hòa hợp của một trong 2 bo bằng cách nhận nút ít dìm được kết nối cùng với bo khác. Sketch của bọn họ vẫn soát sổ tâm lý của nút ít cùng gửi quý hiếm ký tự tương xứng là "0" hoặc "1" mang lại bo kia nhằm tinh chỉnh và điều khiển đèn LED tích phù hợp.