สารบัญ:
วีดีโอ: ตัวนับโดยใช้ MAX7221: 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
การสร้างตัวนับที่เพิ่มขึ้นเมื่อกดปุ่มโดยใช้ MAX7221
ขั้นตอนที่ 1: อะไหล่
MAX7221 หรือ MAX7219
สวิตช์
4 7-Segment Display (แคโทดทั่วไป)
ตัวต้านทาน 2 ตัว: 10k และ 9.53k (ฉันใช้ 9.1k และมันยังคงใช้งานได้)
Arduino
ขั้นตอนที่ 2: สร้างวงจร
ฉันจดเฉพาะหมุดที่ฉันใช้ คุณสามารถค้นหารูปแบบพินทั้งหมดบนแผ่นข้อมูลหรือแนบมา ตรวจสอบให้แน่ใจว่าได้ค้นหา 7-Segment Display ของคุณเพราะอาจแตกต่างจากของฉัน แต่ขั้นตอนเหมือนกัน
1. เชื่อมต่อตัวเลข 0 - 3 บน MAX7221 กับตัวเลข 1 - 4 บนจอแสดงผล ตัวเลข MAX 0 เชื่อมต่อกับตัวเลขที่แสดง 1 ฯลฯ การแสดงผลเป็นเพียงรูปแบบที่แปลกใหม่และเริ่มต้นที่ 1 แทนที่จะเป็น 0
2. เชื่อมต่อส่วน A - G บน MAX7221 กับส่วน A - G บนจอแสดงผล
3. จ่ายไฟและกราวด์ให้สูงสุด VCC ไปที่พิน 19 ตัวต้านทาน 10k ยังเชื่อมต่อกับพิน 19 และ 18 กราวด์ไปที่พิน 4 และ 9
4. MAX7221 สื่อสารกับ Arduino ผ่าน SPI (Serial Peripheral Interface) ในกรณีนี้จำเป็นต้องใช้สายไฟเพียง 3 เส้นเท่านั้นเพราะฉันไม่ได้ใช้ MISO (Master In Slave Out) บน MAX7221 เชื่อมต่อพิน 1 (Din) กับ Arduino ในกรณีของฉันฉันใช้พิน 12 นี่คือ MOSI ของคุณ (Master Out Slave In) หรือข้อมูล Pin 12 บน MAX คือ CS (Chip Select Input) และเป็นวิธีที่ข้อมูลถูกโหลดลงใน Shift Register ฉันเชื่อมต่อสิ่งนี้กับพิน 9 บน Arduino การเชื่อมต่อสุดท้ายคือ CLK ซึ่งเป็นพิน 13 บน MAX ฉันเชื่อมต่อสิ่งนี้กับพิน 10 บน Arduino
ตรวจสอบให้แน่ใจว่าได้จ่ายไฟและกราวด์ผ่าน Arduino โดยใช้ไฟ 5 โวลต์ ฉันพบปัญหาที่ Arduino ไม่ให้พลังงานเพียงพอกับบอร์ดของฉัน
นี่สำหรับแผ่นข้อมูล MAX7221 ที่มาของภาพเช่นกัน
www.mouser.com/datasheet/2/256/max7219-max…
ขั้นตอนที่ 3: สวิตช์
ฉันต่อสวิตช์จาก Schematic ด้านบน พบได้ที่
ฉันใช้พิน 8 บน Arduino เพื่อควบคุมสวิตช์และตัวต้านทาน 10k
ขั้นตอนที่ 4: รหัส
ฉันใช้ไลบรารี LedControl.h ที่พบใน GitHub และรหัสพื้นฐานเพื่อเปิด MAX7221 ฉันจึงแก้ไขรหัสให้นับตั้งแต่ 0 - 9999 เมื่อกดปุ่ม
#include "LedControl.h"
ปุ่ม int = 8;
LedControl lc=LedControl(12, 10, 9, 1);
การตั้งค่าเป็นโมฆะ () {
pinMode(ปุ่ม, INPUT);
lc.shutdown(0, เท็จ); // MAX7221 อยู่ในโหมดประหยัดพลังงาน จึงต้องปลุก
lc.setIntensity(0, 15); // การตั้งค่าความสว่างสูงสุด 15
lc.clearDisplay(0); // เคลียร์การแสดงผล
}
วงเป็นโมฆะ (){
int state = digitalRead (ปุ่ม);
int ผม = 0;
int j = 0;
int k = 0;
int ล. = 0;
ในขณะที่(1){
สถานะ = digitalRead (ปุ่ม);
ในขณะที่ (สถานะ == 1){
สถานะ = digitalRead (ปุ่ม);
lc.setDigit(0, 3, i, เท็จ);
ผม++;
ล่าช้า (100); // ยุ่งกับสิ่งนี้ได้
ถ้า (ผม == 10){
ผม = 0;
เจ++;
ถ้า (j == 10){
เจ = 0;
เค++;
ถ้า (k == 10){
k = 0;
ล++;
ถ้า(ล. == 10){
ในขณะที่(1){
lc.setRow(0, 0, 0x3E); // เมื่อแสดงผลถึง 9999 จะแสดง U -- 1
lc.setRow(0, 1, 0x1); // ในค่าฐานสิบหก
lc.setRow(0, 2, 0x1);
lc.setDigit(0, 3, 1, เท็จ);
}
}
lc.setDigit(0, 0, l, เท็จ);
}
lc.setDigit(0, 1, k, เท็จ);
}
lc.setDigit(0, 2, j, เท็จ);
}
}
}
}
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง