Ngôn ngữ lập trình trên Arduino - Hướng dẫn hàm

>>>  Tự học Arduino online ngay bây giờ <<<

Chương trình Arduino có thể được chia làm 3 phần: cấu trúc (structure), biến số (variable) và hằng số (constant), hàm và thủ tục (function). Chuyên mục này sẽ giúp bạn tìm hiểu về 3 phần này qua sự diễn giải các khái niệm và mô tả các hàm thao tác/thủ tục.

Ở phần dưới là các tài liệu tham khảo về lập trình Arduino.

Cấu trúc

Giá trị

Hàm và thủ tục

Cấu trúc điều khiển

Cú pháp mở rộng

Toán tử số học

  • = (phép gán)
  • + (phép cộng)
  • - (phép trừ)
  • * (phép nhân)
  • / (phép chia)
  • % (phép chia lấy dư)

Toán tử so sánh

  • == (so sánh bằng)
  • != (khác bằng)
  • > (lớn hơn)
  • < (bé hơn)
  • >= (lớn hơn hoặc bằng)
  • <= (bé hơn hoặc bằng)

Toán tử logic

  • && (và)
  • || (hoặc)
  • ! (phủ định)
  • ^ (loại trừ)

Phép toán hợp nhất

  • ++ (cộng thêm 1 đơn vị)
  • -- (trừ đi 1 đơn vị)
  • += (phép rút gọn của phép cộng)
  • -= (phép rút gọn của phép trừ)
  • *= (phép rút gọn của phép nhân)
  • /= (phép rút gọn của phép chia)

Hằng số

Kiểu dữ liệu

Chuyển đổi kiểu dữ liệu

Phạm vi của biến và phân loại

Hàm hỗ trợ

Nhập xuất Digital (Digital I/O)

Nhập xuất Analog (Analog I/O)

Hàm thời gian

Hàm toán học

Hàm lượng giác

Sinh số ngẫu nhiên

Nhập xuất nâng cao (Advanced I/O)

Xử lý chuỗi

Bits và Bytes

Ngắt (interrupt)

Giao tiếp

Dưới đây là một số tài liệu tham khảo khác về lập trình Arduino:

  1. Bit Math - các phép toán trên hệ nhị phân.
  2. Hiện tượng tràn số trong lập trình C trong Arduino
  3. Cách lưu trữ các biến số, mảng, chuỗi trong Arduino
  4. Tiết kiệm RAM trong Arduino?
  5. Timer/Counter trên AVR/Arduino
  6. Lưu các biến CHỈ ĐỌC với PROGMEM
  7. Lập trình ATtiny13 với Codebender
  8. Attiny13 - Trợ thủ đắc lực của Arduino - Lập trình nó?
  9. Xử lý chuỗi trong Arduino
  10. In một chuỗi với nội dung được quy định sẵn trong Arduino (Formatted String)
  11. Kiểm tra email chưa đọc với Intel Galileo và màn hình LCD
lên
81 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

MJPG Streamer vs Intel Galileo - Truyền hình ảnh từ webcam trong mạng LAN với Intel Galileo

Vấn đề truyền hình ảnh từ webcam trong mạng LAN không phải là một vấn đề mới trong việc lập trình nhúng. Ví dụ như trên Raspberry Pi, chúng ta hoàn toàn có thể sử dụng MJPG Streamer để làm được việc này. Tuy nhiên, khác với Raspberry Pi, Intel Galieo không đơn giản như vậy, bởi vì chưa có một bài viết hoàn chỉnh chỉ về vấn đề này trên cộng đồng Intel Galileo thế giới. Vì vậy, mình muốn đóng góp một phần nhỏ để các bạn có thể làm được điều này trên con Intel Galileo của mình (không phân biệt Intel Galileo Gen 1 hay Intel Galileo Gen 2 nhé).

lên
3 thành viên đã đánh giá bài viết này hữu ích.

Cách lưu trữ các biến số, mảng, chuỗi trong Arduino

Bạn có bao giờ tự hỏi những biến số, biến chuỗi hay biến mảng của mình được lâu ở đâu trên Arduino chưa? Trước kia, mình từng nghĩ rằng, nó được lưu ở vùng nhớ flash, nơi lưu trữ code mà chúng ta tải lên. Nhưng không, bình thường nó được lưu ở RAM!

Vậy RAM (viết tắt từ Random Access Memory) là gì? Nó là chữ viết tắt của một loại bộ nhớ chính của máy tính (Arduino cũng có thể xem là một máy tính). Như vậy nếu hết RAM, chương trình của bạn sẽ crash (hư – đỗ vỡ,…) một cách bất ngờ mà bạn không tài nào debug được (nếu bạn chưa đọc về bài này – hoặc những nội dung tương đương).

Vậy, thiết nghĩ, chúng ta cần nắm rõ hơn bản chất của vấn đề này. Nó thật thú vị phải không nào?

lên
19 thành viên đã đánh giá bài viết này hữu ích.