Mục lục:

Cảm biến hiệu ứng hội trường Arduino có ngắt: 4 bước
Cảm biến hiệu ứng hội trường Arduino có ngắt: 4 bước

Video: Cảm biến hiệu ứng hội trường Arduino có ngắt: 4 bước

Video: Cảm biến hiệu ứng hội trường Arduino có ngắt: 4 bước
Video: [Lập trình Arduino - FreeRTOS] Bài 7 - Quản lí ngắt | TEK4.VN 2024, Tháng bảy
Anonim
Image
Image
Cảm biến Hiệu ứng Hall là gì?
Cảm biến Hiệu ứng Hall là gì?

Chào mọi người, Hôm nay tôi sẽ chỉ cho bạn cách bạn có thể kết nối cảm biến hiệu ứng hội trường với Arduino và sử dụng nó khi ngắt.

Các công cụ và tư liệu sử dụng trong video (Liên kết liên kết): Arduino Uno:

Cảm biến hiệu ứng hội trường:

Các loại điện trở:

Bước 1: Cảm biến Hiệu ứng Hall là gì?

Cảm biến Hiệu ứng Hall là gì?
Cảm biến Hiệu ứng Hall là gì?
Cảm biến Hiệu ứng Hall là gì?
Cảm biến Hiệu ứng Hall là gì?
Cảm biến Hiệu ứng Hall là gì?
Cảm biến Hiệu ứng Hall là gì?

Cảm biến hiệu ứng Hall là một thiết bị được sử dụng để đo độ lớn của từ trường. Điện áp đầu ra của nó tỷ lệ thuận với cường độ từ trường qua nó.

Cảm biến hiệu ứng Hall được sử dụng cho các ứng dụng phát hiện độ gần, định vị, phát hiện tốc độ và cảm biến hiện tại.

Công tắc tôi sẽ làm việc hôm nay có nhãn là 3144, đây là một công tắc hiệu ứng hội trường chủ yếu được sử dụng cho các ứng dụng ô tô và nhiệt độ cao. Theo mặc định, đầu ra của nó cao và thấp khi có từ trường.

Cảm biến có 3 chân, VCC, nối đất và đầu ra. Bạn có thể xác định chúng theo thứ tự đó nếu bạn cầm cảm biến có nhãn về phía mình. VCC ở bên trái, và đầu ra ở bên phải. Để ngăn chặn bất kỳ sự trôi dạt điện áp nào, một điện trở 10k đang được sử dụng giữa VCC và đầu ra trong cấu hình kéo lên.

Bước 2: Ngắt là gì?

Ngắt là gì?
Ngắt là gì?
Ngắt là gì?
Ngắt là gì?

Để kết nối cảm biến trên Arduino, chúng tôi sẽ sử dụng một tính năng đơn giản nhưng rất mạnh mẽ có tên là Interrupt. Công việc ngắt là đảm bảo rằng bộ xử lý phản ứng nhanh với các sự kiện quan trọng. Khi một tín hiệu nhất định được phát hiện, một Interrupt (như tên cho thấy) sẽ ngắt bất cứ điều gì bộ xử lý đang làm và thực thi một số mã được thiết kế để phản ứng với bất kỳ kích thích bên ngoài nào đang được cung cấp cho Arduino. Khi mã đó đã hoàn tất, bộ xử lý sẽ quay lại bất cứ điều gì ban đầu nó đang làm như thể không có gì xảy ra!

Điều tuyệt vời về điều này là nó cấu trúc hệ thống của bạn để phản ứng nhanh chóng và hiệu quả với các sự kiện quan trọng không dễ lường trước trong phần mềm. Hơn hết, nó giải phóng bộ xử lý của bạn để thực hiện các công việc khác trong khi chờ sự kiện xuất hiện.

Arduino Uno có hai chân mà chúng ta có thể sử dụng làm Ngắt, chân 2 và 3. Chức năng mà chúng ta sử dụng để đăng ký chân làm ngắt được gọi là AttachInterrupt trong đó tham số đầu tiên chúng ta gửi vào chân sẽ được sử dụng, tham số thứ hai là tên của hàm mà chúng ta muốn gọi khi phát hiện thấy ngắt và là tham số thứ ba, chúng ta gửi ở chế độ mà chúng ta muốn ngắt hoạt động. Có một liên kết trong mô tả video để tham khảo đầy đủ cho chức năng này.

Bước 3: Kết nối và mã

Kết nối và mã
Kết nối và mã
Kết nối và mã
Kết nối và mã
Kết nối và mã
Kết nối và mã

Trong ví dụ của chúng tôi, chúng tôi kết nối cảm biến hiệu ứng hội trường với chân 2 trên Arduino. Ở phần đầu của bản phác thảo, chúng ta xác định các biến cho số chân của đèn LED được tích hợp sẵn, chân ngắt cũng như một biến byte mà chúng ta sẽ sử dụng để sửa đổi thông qua ngắt. Điều quan trọng là chúng tôi đánh dấu điều này là dễ bay hơi để trình biên dịch có thể biết rằng nó đang được sửa đổi bên ngoài luồng chương trình chính thông qua ngắt.

Trong chức năng thiết lập, đầu tiên chúng tôi chỉ định các chế độ trên các chân được sử dụng và sau đó chúng tôi gắn ngắt như đã giải thích trước đó. Một chức năng khác mà chúng tôi sử dụng ở đây là digitalPinToInterrupt, như tên của nó, dịch số pin thành số ngắt.

Trong phương thức chính, chúng ta chỉ viết biến trạng thái trên chân LED và thêm một khoảng trễ rất nhỏ để bộ xử lý có thể có thời gian hoạt động bình thường.

Tại nơi chúng tôi đính kèm ngắt, chúng tôi chỉ định nháy mắt làm tham số thứ hai và đây là tên hàm sẽ được gọi. Bên trong chúng ta chỉ đảo ngược giá trị trạng thái.

Tham số thứ ba của hàm attachmentIntertupt là chế độ mà nó hoạt động. Khi chúng ta đặt nó là CHANGE, chức năng nhấp nháy sẽ được thực hiện mỗi khi trạng thái ngắt thay đổi như vậy, nó sẽ được gọi một lần khi chúng ta đưa nam châm đến gần cảm biến và được kích hoạt một lần nữa khi chúng ta tháo nó ra. Bằng cách này, đèn LED sẽ sáng trong khi chúng ta giữ nam châm gần cảm biến.

Nếu bây giờ chúng ta thay đổi chế độ thành RISING, chức năng nhấp nháy sẽ chỉ được kích hoạt khi một cạnh tăng của tín hiệu được nhìn thấy trên chân ngắt. Bây giờ mỗi khi chúng ta đưa nam châm đến gần cảm biến, đèn LED sẽ tắt hoặc bật, vì vậy về cơ bản chúng ta đã tạo ra một công tắc từ tính.

Chế độ cuối cùng mà chúng tôi sẽ thử là THẤP. Với nó, khi nam châm ở gần, chức năng nhấp nháy sẽ được kích hoạt liên tục và đèn LED sẽ nhấp nháy, luôn luôn đảo trạng thái. Khi chúng tôi tháo nam châm, thực sự không thể đoán trước được trạng thái sẽ kết thúc như thế nào vì điều này phụ thuộc vào thời gian. Tuy nhiên, chế độ này thực sự hữu ích nếu chúng ta cần biết một nút đã được nhấn trong bao lâu vì chúng ta có thể sử dụng các chức năng định thời để xác định điều đó.

Bước 4: Các hành động tiếp theo

Hành động hơn nữa
Hành động hơn nữa

Ngắt là một cách đơn giản để giúp hệ thống của bạn phản hồi nhanh hơn với các tác vụ nhạy cảm về thời gian. Chúng cũng có thêm lợi ích là giải phóng `loop () 'chính của bạn để tập trung vào một số tác vụ chính trong hệ thống. (Tôi thấy rằng điều này có xu hướng làm cho mã của tôi có tổ chức hơn một chút khi tôi sử dụng chúng - dễ dàng hơn để xem đoạn mã chính được thiết kế để làm gì, trong khi các ngắt xử lý các sự kiện định kỳ.) Ví dụ được hiển thị ở đây là gần nhất trường hợp cơ bản để sử dụng ngắt - bạn có thể sử dụng chúng để đọc thiết bị I2C, gửi hoặc nhận dữ liệu không dây, hoặc thậm chí khởi động hoặc dừng động cơ.

Nếu bạn có cách sử dụng thú vị đối với cảm biến ngắt hoặc cảm biến hiệu ứng hội trường thì hãy cho tôi biết trong phần nhận xét, thích và chia sẻ Tài liệu hướng dẫn này và đừng quên đăng ký kênh YouTube của tôi để biết thêm các hướng dẫn và dự án tuyệt vời trong Tương lai.

Chúc mừng và cảm ơn vì đã xem!

Đề xuất: