Thứ Ba, ngày 01 tháng 5 năm 2012

Lập Trình Trên Arduino


        Các bài viết trước đã giới thiệu cơ bản về Arduino. Bài viết này sẽ giới thiệu cách để upload code và cấu trúc của một phần mềm Arduino.

Phần cứng

Xem kỹ về bảng mạch Arduino:


- Theo như hình minh họa, có 14 cổng in/out (đánh số 0-13). Đây là các chân cắm của Arduino và có chức năng input hoặc output, tạo nên cốt lõi của thiết bị.
- Có 6 chân kỹ thuật số, được đánh dấu bởi dấu ~ để thực hiện Xung.
- Chân 13 đặc biệt có một LED được ghép vào. Việc này giúp cho việc thử nghiệm. Bạn có thể sử dụng LED có sẵn, bằng cách xuất ra chân 13 hoặc ra các chân khác.
- Ở phần bên phải ở dưới có một cổng analog 6 chân input. Chúng giúp đọc các giá trị của cảm biến analog.
- Ở bên trái là các cổng analog tương tự cổng nguồn. bạn chỉ cần nguồn 3,3 vol hoặc 5 vol.
- Cuối cùng, một công tắc chuyển dùng để reset Arduino. nó sẽ giúp khởi động lại bất kỳ chương trình nào trong bộ nhớ.
- Arduino có một khoảng bộ nhớ, và nếu chương trình của bạn quá lớn, compiler sẽ báo lỗi.

Cấu trúc một chương trình Arduino
         Mỗi chương trình Arduino được chia làm 2 chức năng (nếu bạn không biết bạn có thể xem lại bài trước)
Đầu tiên là cài đặt chức năng. Việc này giúp khởi tạo và dùng để Arduino biết sẽ kết nối đến thiết bị nào, cũng như khởi tạo biến mà bạn cần trong chương trình.
         Thứ hai là vòng lặp. Đây là nền tảng của mỗi chương trình Arduino. Khi Arduino hoạt động, sau khi chức năng cài đặt hoàn tất, vòng lặp sẽ chạy tất cả các code, sau đó thực hiện lại đến khi nào mất nguồn hoặc bị reset. Quãng thời gian để hoàn thành dựa trên code được nạp vào. Bạn có thể viết code để chạy vài giờ nếu không muốn lặp quyết định.

Cấu trúc của chương trình:


Giải thích chương trình

Cùng xem lại cấu trúc một chương trình:

Hàm khởi tạo:


void setup() {
// initialize the digital pin as an output.
// Pin 13 has an LED connected on most Arduino boards:
pinMode(13, OUTPUT);
}
         Đầu dòng được bắt đầu với // để compiler hiểu đây là chú thích, và sẽ không được đưa vào bộ nhớ Arduino. Code chỉ thực sự bắt đầu từ dòng cuối có nghĩa là "đưa tín hiệu đầu ra đến chân 13", là chân có LED

Sau đó là vòng lặp:

void loop(){
digitalWrite(13, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(13, LOW); // set the LED off
delay(1000); // wait for a second
}
         Chú thích ở cuối mỗi dòng giải thích cách code làm việc. HIGH và LOW tương tự với trạng thái ON và OFF. Bạn cũng có thể viết ON/OFF. Delay sẽ cho Arduino biết thời gian chờ là 1000 mili giây (hoặc 1 giây).
         Cuối cùng, một lưu ý về code được dùng ở đây. Chú thích cả hai hàm khởi tạo và lặp đều có từ khóa void ở đầu. Đây là từ khóa đặc biệt để báo không có gì khác, vì hàm trả về không có gì khi được gọi và chỉ chạy code bên trong. Toàn bộ code còn lại sẽ được chạy nếu nằm trong 2 dấu {} và phải kết thúc bằng dấu ;




Nguồn:makeuseof.com

0 nhận xét:

Đăng nhận xét