สารบัญ:

Arduino: ตัวบ่งชี้ Potentio ใช้ Led Matrix MAX7219: 4 ขั้นตอน
Arduino: ตัวบ่งชี้ Potentio ใช้ Led Matrix MAX7219: 4 ขั้นตอน

วีดีโอ: Arduino: ตัวบ่งชี้ Potentio ใช้ Led Matrix MAX7219: 4 ขั้นตอน

วีดีโอ: Arduino: ตัวบ่งชี้ Potentio ใช้ Led Matrix MAX7219: 4 ขั้นตอน
วีดีโอ: มินิโปรเจค Arduino ปรับความสว่าง LED ด้วย R ปรับค่าได้ Potentiometer 2024, พฤศจิกายน
Anonim
Arduino: ตัวบ่งชี้ Potentio ใช้ Led Matrix MAX7219
Arduino: ตัวบ่งชี้ Potentio ใช้ Led Matrix MAX7219

ในบทช่วยสอนก่อนหน้านี้ ฉันได้แสดงโพเทนชิออมิเตอร์โดยใช้ RGB ring neo pixels led คุณสามารถดูได้ในบทความนี้ "ตัวบ่งชี้ Potentio ใช้ RGB Neopixel"

และวันนี้ฉันจะแสดงตัวบ่งชี้โพเทนชิเอเตอร์โดยใช้จอแสดงผล LED MAX7219

ทำตามขั้นตอนด้านล่างเพื่อทำ

ขั้นตอนที่ 1: ส่วนประกอบที่จำเป็น

ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น
ส่วนประกอบที่จำเป็น

ส่วนประกอบที่จำเป็น:

  • Arduino นาโน
  • โพเทนชิออมิเตอร์
  • Max7219 Led Matrix Display
  • สายจัมเปอร์
  • คณะกรรมการโครงการ
  • USB มินิ
  • แล็ปท็อป

ห้องสมุดที่จำเป็น

LedControl

ขั้นตอนที่ 2: โครงการ

โครงการ
โครงการ
โครงการ
โครงการ
โครงการ
โครงการ

หากต้องการประกอบส่วนประกอบ ดูแผนผังด้านบน คุณสามารถดูข้อมูลด้านล่าง:

Arduino สู่ Led & potentio

+5V ==> VCC & 3. Potentio

GND ==> GND & 1. Potentio

D6 ==> DataIn

D7 ==> CLK

D8 ==> CS / โหลด

ขั้นตอนที่ 3: การเขียนโปรแกรม

การเขียนโปรแกรม
การเขียนโปรแกรม

ใช้รหัสด้านล่างเพื่อสร้าง ait:

#include "LedControl.h"

/*

ตอนนี้เราต้องการ LedControl เพื่อใช้งาน ***** หมายเลขพินเหล่านี้อาจไม่ทำงานกับฮาร์ดแวร์ของคุณ ***** ขา 6 เชื่อมต่อกับ DataIn ขา 7 เชื่อมต่อกับ CLK ขา 8 เชื่อมต่อกับโหลด เรามี MAX72XX เดียวเท่านั้น */

LedControl lc=LedControl(6, 7, 8, 1);

ล่าช้านานที่ไม่ได้ลงนาม=100;

การตั้งค่าเป็นโมฆะ () {

lc.shutdown(0, เท็จ); lc.setIntensity(0, 8); lc.clearDisplay(0); } วงเป็นโมฆะ () { int val = analogRead (A0); วาล = แผนที่(วาล, 0, 1023, 0, 8);

ถ้า(วาล == 1)

{

lc.setRow(0, 0, B10000000);

}

ถ้า(วาล == 2)

{ lc.setRow(0, 0, B10000000); lc.setRow(0, 1, B10000000); } if(val == 3) {

lc.setRow(0, 0, B10000000);

lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); } if(val == 4) {

lc.setRow(0, 0, B10000000);

lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); } if(val == 5) {

lc.setRow(0, 0, B10000000);

lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); lc.setRow(0, 4, B10000000); } if(val == 6) { lc.setRow(0, 0, B10000000); lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); lc.setRow(0, 4, B10000000); lc.setRow(0, 5, B10000000); } if(val == 7) { lc.setRow(0, 0, B10000000); lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); lc.setRow(0, 4, B10000000); lc.setRow(0, 5, B10000000); lc.setRow(0, 6, B10000000); } if(val == 8) { lc.setRow(0, 0, B10000000); lc.setRow(0, 1, B10000000); lc.setRow(0, 2, B10000000); lc.setRow(0, 3, B10000000); lc.setRow(0, 4, B10000000); lc.setRow(0, 5, B10000000); lc.setRow(0, 6, B10000000); lc.setRow(0, 7, B10000000); } lc.clearDisplay(0); }

ขั้นตอนที่ 4: ผลลัพธ์

เมื่อตั้งโปรแกรมแล้ว ผลลัพธ์จะเป็นแบบนี้

หากโพเทนชิโอหมุนไปทางขวา ไฟ LED แสดงสดจะตามจำนวนรอบมากขึ้น

หากหม้อหันไปทางซ้าย ไฟ LED แสดงสดจะน้อยลงเรื่อยๆ ตามความสามารถในการหมุน

แนะนำ: