Trong bài viết này Điện Tử Tương Lai sẽ chia sẻ về hàm shiftOut trong Arduino là gì, cú pháp, code mẫu và những lưu ý khi sử dụng hàm này.
Mô tả shiftOut()
Chuyển từng byte dữ liệu ra từng bit một. Bắt đầu từ bit quan trọng nhất (tức là ngoài cùng bên trái) hoặc ít quan trọng nhất (ngoài cùng bên phải). Mỗi bit được ghi lần lượt vào một chân dữ liệu, sau đó một chân đồng hồ được tạo xung (lấy mức cao, rồi xuống mức thấp) để chỉ ra bit có sẵn.
Lưu ý - nếu bạn đang giao tiếp với một thiết bị có xung nhịp bằng các cạnh nhô lên, bạn sẽ cần đảm bảo rằng chân đồng hồ ở mức thấp trước khi thực hiện lệnh gọi shiftOut(), ví dụ: với một cuộc gọi tới digitalWrite(clockPin, LOW).
Đây là một triển khai phần mềm cung cấp triển khai phần cứng nhanh hơn nhưng chỉ hoạt động trên các chân cụ thể.
Cú pháp
shiftOut(dataPin, clockPin, bitOrder, value)
Thông số
dataPin: chân để xuất ra từng bit. Các kiểu dữ liệu được phép: int.
clockPin: chân để chuyển đổi khi dataPin đã được đặt thành giá trị chính xác. Các kiểu dữ liệu được phép: int.
bitOrder: thứ tự chuyển ra các bit; MSBFIRST hoặc LSBFIRST. (Bit quan trọng nhất đầu tiên hoặc bit ít quan trọng nhất đầu tiên).
value: dữ liệu cần chuyển ra ngoài. Các kiểu dữ liệu được phép: byte.
Return
Không có gì
Code mẫu
Code sử dụng thanh ghi dịch chuyển 74HC595 để đếm từ 0 đến 255
Lưu ý
DataPin và clockPin phải được định cấu hình làm đầu ra bằng lệnh gọi đến pinMode().
shiftOut hiện được ghi để xuất ra 1 byte (8 bit) vì vậy nó yêu cầu hoạt động hai bước để xuất ra các giá trị lớn hơn 255
Hotline: 0979 466 469