Serial là cách giao tiếp của Arduino với các thiết bị khác thông qua 2 chân 0 [RX] và 1 [TX].
Do vậy mà khi có kế hoạch sử dụng giao tiếp này thì ta nên bỏ qua 2 chân này để phục vụ cho giao tiếp sau này!
Một số lưu ý
Có nhiều thư viện hỗ trợ việc thực hiện giao tiếp Serial trên bất kì trên digital nào!
Do vậy việc lựa chọn cổng cũng không quan trọng lắm, nhưng để thuật tiện trong việc theo dõi trực quan thì ta thường dùng 2 chân mặc định trên!
Việc giao tiếp bằng serial thì data sẽ được đọc ra là giá trị của nó trong bảng ASCII.
Ví dụ truyền số 0 thì giá trị đọc ra được sẽ là 48.
Các phương thức hay sử dụng
Function | Description | Example |
If[Serial] | Kiểm tra xem các cổng đã được kết nối chưa | Thường dùng với câu lệnh while để thực hiện đợi cho tới khi nhận được kết nối: while[!Serial]{} |
available[] | Trả về số byte đã nhận được | Thường dùng để xác định xem dữ liệu đã về đến chưa để thực hiện đọc ra |
Serial.begin[9600]; | Set data rate, là số bit có thể trao đổi trong 1s [bit per second] | Được khai báo ở trong hàm setup |
Serial.read[] | Đọc dữ liệu | Chú ý là nhận bằng byte, và ra mã ascii |
Serial.println[received]; | Gửi dữ liệu ra các chân Serial |
Example
#include #include "L298CTL.h" enum Direction { stop = '0', forward = '1', backward = '2', forward_left = '3', forward_right = '4', backward_left = '5', backward_right = '6' }; L298_CTL car; Direction dir; void setup[] { car.setup[6, 7, 8, 9]; Serial.begin[9600]; // Đợi cho tới khi có kết nối while [!Serial] { } } void loop[] { // Xem có nhận được byte nào không? if [Serial.available[] > 0] { // Đọc dữ liệu ra char received = Serial.read[]; // Ghi dữ liệu nhận được ra Serial.println[received]; dir = [Direction] received; switch [dir] { case stop: car.stop[]; break; case forward: car.forward[]; break; case backward: car.backward[]; break; case forward_left: car.forwardLeft[]; break; case forward_right: car.forwardRight[]; break; case backward_left: car.backwardLeft[]; break; case backward_right: car.backwardRight[]; break; default: break; } } }Share this:
- Click to share on Twitter [Opens in new window]
- Click to share on Facebook [Opens in new window]
Related
Comments
comments