Bài 1: Chớp tắt LED trên Arduino Uno ~ eChipKool SHOP | CTY Điện Tử eChipKool

Bài 1: Chớp tắt LED trên Arduino Uno

Trong bài viết hôm nay mình xin giới thiệu với các bạn cách chớp tắt Led trên Arduino Uno.
Và cách tạo một biến ra sao, cách thức làm việc của các hàm trên Arduino IDE.
Nếu bạn là một người mới chưa biết Arduino là cái quái gì? Và cần học Arduino để làm gì?
Thì xem 2 bài viết bên dưới nhé.
  • Xem bài viết: Arduino IDE là gì?
  • Xem bài viết: Arduino Uno là gì?

Code ví dụ chớp tắt Led

/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.
 
  This example code is in the public domain.
*/
// Pin 10 has an LED connected on most Arduino boards.
// give it a name:
int ledPin = 10;

// the setup routine runs once when you press reset:
void setup() {
        // initialize the digital pin as an output.
        pinMode(ledPin, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {
        digitalWrite(ledPin,HIGH);        // turn the LED on (HIGH is the voltage level)
        delay(1000);                      // wait for a second
        digitalWrite(ledPin,LOW);         // turn the LED off by making the voltage LOW
        delay(1000);                      // wait for a second
}

Giải thích Code

Comment

Trong Arduino bạn sẽ bắt gặp 2 dạng comment: Comment đơn dòng và đa dòng
  • Comment theo kiểu đa dòng

Mở đầu bằng /* và kết thúc */ ở dạng comment này không giới hạn ký tự và số dòng.

/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.
 
  This example code is in the public domain.
*/
  • Comment theo kiểu đơn dòng

Mở đầu bằng // và kéo dài cho tới cuối dòng

 digitalWrite(ledPin,HIGH);        // turn the LED on (HIGH is the voltage level)

Kiểu số nguyên int 

int ledPin = 10;

Kiểu dữ liệu
Độ rộng bit
Dãy giá trị
int (số nguyên)
 2 byte (16bit)
-32,768 đến 32,767
  • ledPin = 10: Là tên biến (ở đây bạn có thể đặt tên g�� mà bạn mong muốn, tốt nhất là các bạn đặt theo tên của chức năng để dễ dàng nhớ khi code. Ở đây mình kết nối LED vào chân số 10 trên Arduino UNO).
  • Kết thúc khai báo bằng dấu (;): Trong trường hợp bạn không có (;) thì trình biên dịch sẽ báo lỗi.

Hàm setup()

void setup() {}
Hàm setup() được Arduino đọc khi bắt đầu khởi động. Nó dùng để khởi tạo biến, khởi tạo thư viện và thiết lập thông số.
Hàm setup() chỉ chạy một lần khi bật nguồn hoặc reset lại chương trình.

pinMode

pinMode(ledPin, OUTPUT);

  • "pinMode": Cấu hình quy định hoạt động của một chân như là một đầu vào (INPUT) hoặc đầu ra (OUTPUT).
  • "Pin": Là chân mà bạn muốn đặt.
  • "Mode": INPUT, OUTPUT hoặc INPUT_PULLUP.

Vòng lặp

void loop() {}

Sau khi hàm setup () chạy xong, những lệnh trong vòng loop () sẽ thực hiện và chúng sẽ lặp đi lặp lại cho đến khi Arduino bị ngắt nguồn hoặc reset lại chương trình.

digitalWrite(ledPin,HIGH);        // turn the LED on (HIGH is the voltage level)

digitalWrite ghi giá trị mức "CAO" (bật) hoặc mức "THẤP" (tắt) vào chân được cấu hình. Nếu chân được cấu hình là OUTPUT bởi pinMode, thì điện áp của nó sẽ tương ứng với giá trị được đặt: 5V (hoặc 3.3V trên bo là 3.3V) là mức "CAO", 0V là mức "THẤP".

Delay()

delay(1000);                      // wait for a second

  • delay(): Tạm dừng chương trình trong khoảng thời gian chỉ định (được tính bằng mili giây) và ở đây (1000 mili giây sẽ bằng 1 giây).

Mối quan hệ của pinMode, digitalWrite và digitalRead

Nếu pinMode cấu hình điều khiển là đầu vào (INPUT), bạn nên sử dụng hàm digitalRead(). Nếu chân cấu hình là đầu ra (OUTPUT), bạn nên sử dụng hàm digitalWrite.

LED, Buzzer
 Button
pinMode(pin,OUTPUT)
pinMode(pin,INPUT)
digitalWrite(pin,HIGH/LOW)
digitalRead(pin)

    Sơ đồ đấu nối


    Các linh kiện cần thiết cho bài học

    • Arduino Uno: Xem sản phẩm tại đây.
    • Led 5mm:
    • Điện trở 220R:
    • Breadboard:

    Tổng kết

    Qua bài học đầu tiên các bạn sẽ nắm được những kiến thức về kiểu dữ liệu số nguyên (int), cách sử dụng biến như thế nào, sử dụng hàm và cách làm việc của vòng lặp.
    Nếu các bạn bạn thấy bài viết bổ ích nhớ Like và Share để mọi người cùng học nha


    ( Nguyên lý + Code chuẩn) Link Mediafire

    ------------------------------------------------------------------------------------
    DV1 - Nhận vẽ mạch thuê ONLINE Altium Designer/ Orcad 9.2/ Protues nhanh trong ngày



    -----------------------------------------------------------------------------------

    DV2 - Mua linh kiện về làm mạch nhanh - Miễn phí Ship




    DV3 - Kênh youtube chia sẻ kiến thức điện tử thực hành ngay


    DV4 - Kênh cộng đồng Facebook Điện Tử ChipKool




    eChipKool - Chia sẻ kiến thức Kết Nối đam mê điện tử
    In bài này
    Previous
    Next Post »

    Bạn đọc hãy giúp chúng tôi xây dựng cộng đồng bằng cách để lại bình luận, chúng tôi luôn đón nhận mọi ý kiến của các bạn:
    » Bình luận nghiêm túc và không chứa các liên kết quảng cáo.
    » Vui lòng không Spam nhận xét với mọi hình thức.
    » Rất mong bạn đề tên cho nhận xét của chính mình - Bằng cách chọn vào Tên/URL và điền tên bạn vào (Phần URL có thể bỏ trống ).

    - Bạn có thể chèn Link nhạc (NCT), video(Youtube),Hình ảnh vào comment bằng cú pháp:
    + [youtube] Link video Youtube [/youtube].
    + [img] Link ảnh( định dạng PNG, JPG,GIF) [/img]
    +Chèn link liên kết: <a href="LINK" rel="nofollow">Name</a>
    -Bạn copy mã bên cạnh biểu tượng chèn vào nhận xét để bày tỏ cảm xúc!! ConversionConversion EmoticonEmoticon

           Mạch Khóa Số Điện Tử Mạch Đếm Sản Phẩm Mạch Đèn giao thông Ngã Tư Mạch Trái Tim Final Mạch Trái Tim Final Mạch Trái Tim I Love U

    THƯ MỤC KHO TÀI LIỆU MIỄN PHÍ ECHIPKOOL

    Code 8051 - ASM Code 8051 - C Code AVR - C Code led sao băng Code PIC - C Điện tử cơ bản điện tử viễn thông Đo Nhiệt Độ DS18B20 + LCD Đo Nhiệt Độ LM35 + LCD Đo Nhiệt Độ LM35 + Led 7 thanh Đo tốc độ động cơ Động cơ robo Ebook Đại Học ebook điện tử Ebook đồ án Học Orcad Học Protues Hồng ngoại Lập Trình 8051 Lập Trình AVR lập trình c++ Lập Trình Led Quảng Cáo lập trình PIC Lập trình Robot Lập trình VHDL Lcd16x2 Led Clock Led Quay Led RGB Mạch 7seg Mạch Amply.Mạch Loa Mạch Cảm Biến Mạch cube Mạch Đếm Sản Phẩm Mạch điện cơ bản Mạch điện hay Mạch Điện Ứng Dụng Mạch đọc file nhạc MP3 dùng Atmega 8 Mạch Động Cơ Mạch đồng hồ Mạch đồng hồ LCD Mạch đồng hồ Matrix Mạch giao thông Mạch in Mạch khóa số điện tử Mạch Led đơn Mạch Led Quảng Cáo Mạch Led Vumeter Mạch Ma trận Phím Mạch Matrix Mạch nạp Mạch nguồn Mạch Nút Bấm Mạch RS232 Mạch RS485 Mạch thu phát Mạch tổ hợp MSI Mạch trái tim Mạch truyền điện không dây Mạch Vi điều khiển Module Bluetooth Module Sim Module Sim548 Motor Nhiệt độ - Độ ẩm oscilloscope Phần mềm điện tử Phần Mềm Diệt Viruts Phần Mềm Hay Phần Mềm Led Quảng Cáo Phần mềm vi tính robocon Rule robocon Sạc Acquy Sản Phẩm Thương Mại Sáng tạo Smart Home Tài liệu Điện Tử Tranzitor Tụ điện TUT - 8051 - ASM TUT - 8051 - KeilC UART Ứng Dụng Led Quảng Cáo Ứng dụng USB USB TO COM Vi điều khiển - Ứng dụng Vi mạch số VOM Wifi ESP8266