Bài 2: Cài đặt Arduino và viết chương trình đầu tiên

Bài trước:  Giới thiệu về Arduino

1. Cài đặt Arduino.

- Để học lập trinh arduino các bạn phải tải về IDE Arduino để viết code và nạo vi điều khiển của Arduino.

Các bạn có thể truy cập vào trang web: https://www.arduino.cc/en/software rồi chọn phiên bản muons tải như hình bên dưới.

Hoặc các bạn download trực tiếp tại đây: http://www.mediafire.com/file/6h2cpv2twd3o6qi/arduino-nightly-windows.zip/file . Sau khi tải về chỉ cần giải nén và tìm đến file cài đặt như hình bấm double vào và chạy thôi.

Sau khi khởi động chương trình có giao diện như hình.

2. Cấu trúc 1 chương trình Arduino
int led = 13;

void setup() {               

                pinMode(led,OUTPUT);    

             }

void loop() {

             digitalWrite(led,HIGH); 

              delay(1000);           

              digitalWrite(led,LOW);

             delay(1000);

            }




Trong đó int led = 13; là khai báo chân đèn led nối với chân 13 của Arduino

pinMode(led, OUTPUT); dùng để khai báo chân 13 là OUTPUT (Xuất tính hiệu ra). Nếu không khai báo có thể viết pinMode(13, OUTPUT); 

Để khai báo chân nhận tín hiệu ta dùng INPUT hoặc INPUT_PULLUP. 

Hàm setup() là nơi chúng ta khai báo các giá trị ban đầu hoặc thiết lập các chân là INPUT hay OUTPUT.

Ví dụ: Bạn có một cảm biến vật cảng hồng ngoại, chân tín hiệu cảm biến này đang nối với chân số 3 bạn có thể khai báo pinMode(3, INPUT). Lúc này chân số 3 sẽ nhận tính hiệu từ chân tính hiệu của cảm biến, tươn ứng với giá trị nhận vào ta có thể thực hiện một công việc cụ thể nào đó. Có rất nhiều cảm biến để chúng ta khám phá, các bạn đón xem nhé!

Tiếp theo là hàm loop() đây là nơi công việc sẽ được thực hiện lập đi lập lại kể từ khi vi điều khiển được cấp nguồn đến khi ngắt nguồn. 

Trong ví dụ trên hàm digitalWrite(led,HIGH); sẽ xuất tín hiệu cho chân 13 ở mức cao 5v và vì thế đèn led sẽ sáng lên. Tiếp theo là hàm delay(1000); hàm này có tác dụng ngưng trệ toàn bộ hệ thống 1000ms (tức 1s) vì vậy đèn led sẽ sáng trong 1s. (Chú ý quan trọng: Nếu delay 1s thì chương trình sẽ dừng lại 1 giây tại dòng này, tất cả các dòng code khác sẽ không được thực hiện đến khi hết 1 giây).

Tiếp theo là hàm digitalWrite(led,LOW); sẽ đặt tín hiệu chân 13 về mức thấp 0v nên led sẽ tắt, tiếp đến là delay(1000); nên led sẽ tắt trong 1 giây. Quá trình này sẽ lập đi lập lại nên đèn led sẽ chớp tắt cách nhau 1 giây.


Chú ý: Các bạn hoàn toàn có thể thay thế bàng hai hàm sau: digitalWrite(led,1); để bật đèn và digitalWrite(led, 0); để tắt đèn.

Ngoài ra còn hàm analogRead(số thứ tự chân trên arduino) và analogWrite(số thứ tự chân trên arduino, giá trị 0 đến 255) để đọc và ghi cho các cảm biến xuất tín hiệu analog (ví dụ như cảm biến mưa, nhiệt độ, độ ẩm,...).

Sau đây tôi sẽ đấu nối một đèn led với arduino và nạp đoạn code trên để kiểm tra kết quả các bạn nhé.

Để làm được bài này đương nhiên máy tính các bạn đã có IDE của arduino rồi nhé.

Tiếp theo chúng ta cần các phần cứng như sau:

1. Mạch Arduino Uno R3 https://nshopvn.com/product/arduino-uno-r3-dip-kem-cap/ 

2. Một đèn Led (Chân dài là chân dương nối với chân 13 của arduino, chân ngắn là chân âm nối với chân GND của Arduino). 

3. Điện trở 220Omh (100 con có vài nghìn thôi nhe các bạn). 

4. Dây cắm loại đực cái

 Sơ đồ mạch như sau:

Code: Copy và dán đoạn code sau vào IDE Arduino
int led = 13;

void setup() {               

                pinMode(led,OUTPUT);    

             }

void loop() {

             digitalWrite(led,HIGH); 

              delay(1000);           

              digitalWrite(led,LOW);

             delay(1000);

            }

Lưu ý: Chọn đúng Board và port để nạp code không bị lỗi nhe các bạn.

Tiếp theo tiến hành biên dịch và nạp code như hình
Sau khi nạp xong các bạn sẽ thấy kết là đèn Led sẽ nhấp nháy (Thật tuyệt phải không nào).

Bài tiếp theo tôi sẽ hướng dẫn các bạn sử dụng tinkercad.com để lắp mạch và mô phỏng (Có cả viết code luôn nhe). Cái này rất phù hợp cho các bạn có túi tiền eo hẹp mà muốn tìm hiểu thêm một lĩnh vực mới.

Xem trên kênh youtube: 


Chúc sức khỏe! 

Nhận xét, góp ý, thắc mắc, câu hỏi của bạn

أحدث أقدم