shiftOut()

Giới thiệu

shiftOut() có nhiệm vụ chuyển 1 byte (gồm 8 bit) ra ngoài từng bit một. Bit được chuyển đi có thể được bắt đầu từ bit nằm bên trái nhất (leftmost) hoặc từ bit nằm bên phải nhất (rightmost). Các bit này được xuất ra tại chân dataPin sau khi chân clockPin được pulsed (có mức điện thế là HIGH, sau đó bị đẩy xuống LOW).

Lưu ý: Nếu bạn đang giao tiếp với một thiết bị mà chân clock của nó có giá trị được thay đổi từ mức điện thế LOW lên HIGH (rising edge) khi shiftOut, thì bạn cần chắc chắn rằng chân clockPin cần được chạy lệnh này: digitalWrite(clockPin,LOW);

Cú pháp

shiftOut(dataPin, clockPin, bitOrder, value) 

Tham số

dataPin: pin sẽ được xuất ra tín hiệu (int)

clockPin: pin dùng để xác nhận việc gửi từng bit của dataPin (int)

bitOrder: một trong hai giá trị MSBFIRST hoặc LSBFIRST.
(Bắt đầu từ bit bên phải nhất hoặc Bắt đầu từ bit bên trái nhất)

value: dữ liệu cần được shiftOut. (byte)

Chú ý

shiftOut() chỉ xuất được dữ liệu kiểu byte. Nếu bạn muốn xuất một kiểu dữ liệu lớn hơn thì bạn phải shiftOut 2 lần (hoặc nhiều hơn), mỗi lần là 8 bit.

Trả về

không

Ví dụ

Điều khiển 8 đèn LED sáng theo ý muốn của bạn, dễ hay khó ?

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

Comments - Viết tài liệu tham khảo trong khi viết code Arduino

Bạn rất khó ghi nhớ từng dòng code một trong một chương trình thật là dài, với những thuật toán phức tạp, vì vậy Arduino đã làm cho bạn một cú pháp để giải quyết vấn đề này, đó là Comments. Comments sẽ giúp bạn ghi chú cho từng dòng code hoặc trình bày nhiệm vụ của nó để bạn hoặc những người khác có thể hiểu được chương trình này làm được những gì. Và comments sẽ không được Arduino biên dịch nên cho dù bạn viết nó dài đến đâu thì cũng không ảnh hưởng đến bộ nhớ flash của vi điều khiển. Để comments trong Arduino, bạn có 2 cách.

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

Vietnam Maker Contest with Intel Galileo - VMIG - Cuộc thi sáng tạo với Galileo dành cho Sinh viên Việt Nam

Hôm nay là một ngày vui, 30/7/2015. Vì chỉ còn 2 ngày nữa (1/8/2015), cuộc thi Sáng tạo với Intel Galileo dành cho sinh viên sẽ được chính sức khởi động. Giải thưởng của cuộc thi rất lớn trên 20 triệu đồng, đồng thời chúng ta được hỗ trợ mạch Galileo Gen 2 và 2 triệu động để làm dự án nữa,... còn chần chừ gì mà không tìm hiểu ngay.

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