Thiết đặt Digital Pins như là INPUT, INPUT_PULLUP, và OUTPUT

Chân kỹ thuật số có thể được sử dụng như là INPUT, INPUT_PULLUP , hoặc OUTPUT . Để thay đổi cách sử dụng một pin, chúng ta sử dụng hàm pinMode().

Cấu hình một pin là INPUT

Các pin của Arduino ( Atmega ) được cấu hình là một INPUT với pinMode ( ) có nghĩa là làm cho pin ấy có trở kháng cao (không cho dòng điện đi ra) . Pin được cấu hình là INPUT làm việc tiêu thụ năng lượng điện của mạch rất nhỏ, nó tương đương với một loạt các điện trở 100 Mega-ôm ở phía trước của pin . Điều này làm cho chúng cực kì hữu ích cho việc đọc một cảm biến, nhưng không cung cấp năng lượng một đèn LED.
Nói một cách nôm na, dân dã, thì khi một pin được cấu hình là INPUT thì bạn sẽ dễ dàng đọc được các tín hiệu điện và đọc được từ bất cứ thứ gì (Có điện <= 5V)!

Nếu bạn đã cấu hình pin là INPUT, bạn sẽ muốn pin có một tham chiếu đến mặt đất (GND, cực âm), thường được thực hiện với một điện trở kéo xuống ( một điện trở đi xuống mặt đất ) như mô tả trong kỹ thuật số đọc nối tiếp.

Cấu hình một pin là INPUT_PULLUP

Chip Atmega trên Arduino có nội kéo lên điện trở (điện trở kết nối với hệ thống điện nội bộ) mà bạn có thể truy cập. Nếu bạn không thích mắc thêm một điện trở ở mạch ngoài, bạn có thể dùng tham số INPUT_PULLUP trong pinMode(). Mặc định khi không được kết nối với một mạch ngoài hoặc được kết nối với cực dương thì pin sẽ nhận giá trị là HIGH, khi pin được thông tới cực âm xuống đất thì nhận giá trị là LOW.

Cấu hình một pin là đầu ra (OUTPUT)

Để thiết đặt pin là một OUTPUT, chúng ta dùng pinMode ( ), điều này có nghĩa là làm cho pin ấy có một trở kháng thấp (cho dòng điện đi ra). Điều này có nghĩa, pin sẽ cung cấp một lượng điện đáng kể cho các mạch khác . Pin của vi điều khiển Atmega có thể cung cấp một nguồn điện liên tục 5V hoặc thả chìm ( cho điện thế bên ngoài chạy vào ) lên đến 40 mA ( milliamps ). Điều này làm cho chúng hữu ích để tạo năng lượng đèn LED nhưng vô dụng đối với các cảm biến đọc!
Lúc bấy giờ, nếu bạn làm làm ngắn mạch (digitalWrite 1 pin là HIGH rồi nối trực tiếp đến cực âm hoặc digitalWrite 1 pin là LOW rồi mắc trực tiếp đến cực dương, hoặc những việc làm tương tự) thì mạch sẽ bị hỏng! Ngoài ra, với dòng điện chỉ 40mA thì trong một số trường hợp chúng ta không thể làm cho mô tơ hoặc relay hoạt động được. Để làm chúng hoạt động thì chúng ta cần chuẩn bị cho mình một số mạch sử dụng các IC khuếch đại chuyên dụng (gọi là mạch giao tiếp)

Reference Tags: 
lên
33 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ả

Tạo một quy trình công nghiệp với các bước bằng Arduino - Phần 2: công việc có điều kiện

Ở bài viết trước, mình đã đề cập đến vấn đề là "Làm thế nào để xây dựng một quy trình công nghiệp trên Arduino.VN". Ở bài viết đó, mình đã đề cập đến vấn đề quy trình có điều kiện, và với sự hưởng ứng từ Cộng đồng qua vấn đề làm một máy công nghiệp dùng để sản xuất sản xuất thành phẩm, mình muốn đóng góp một cái gì đó để dự án này hoàn thiện, đó cũng làm một cách để rèn luyện khả năng xử lý vấn đề thông qua mô tả mà không trực tiếp "chạy" máy devil​!

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

Cuộc thi Sáng tạo với Arduino.vn - Creative Contest with Arduino.VN (CCA)

Như vậy là đã hơn một năm rưỡi kể từ lúc BQT đặt nền móng xây dựng Cộng đồng Arduino Việt Nam, chúng ta đã thực sự có một nơi cùng nhau học tập, chia sẻ và trau dồi kiến thức. Với tổng số bài viết trên cộng đồng đã vượt mốc 300 bài viết, chúng ta đã có một cuốn từ điển nho nhỏ về tự động hóa đơn giản cho cộng đồng Việt Nam. Và đây cũng là lúc chúng ta có một cuộc thi nho nhỏ dành cho các bạn trẻ cấp 2 và cấp 3.

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