การแสดงอักขระตัวอักษรและตัวเลขบน LED 7 เซ็กเมนต์เป็นพื้นฐานพื้นฐานของอุปกรณ์อิเล็กทรอนิกส์ ในฐานะที่เป็นผู้จัดหา 7 เซ็กเมนต์ฉันได้เห็นแอพพลิเคชั่นที่หลากหลายและความสำคัญของการทำความเข้าใจวิธีการใช้ส่วนประกอบเหล่านี้อย่างมีประสิทธิภาพ ในบล็อกนี้ฉันจะเจาะลึกลงไปในความซับซ้อนของการแสดงตัวอักษรและตัวเลขใน LED 7 ส่วนจากพื้นฐานของวิธีการทำงานของพวกเขาไปจนถึงกลยุทธ์การใช้งานจริง
ทำความเข้าใจพื้นฐานของ LED 7 ส่วน
LED 7 ส่วนเป็นอุปกรณ์แสดงผลที่ประกอบด้วยเซ็กเมนต์ LED เจ็ดตัวที่จัดเรียงในรูปแบบเฉพาะโดยทั่วไปจะอยู่ในรูปของตัวเลข 8 ส่วนเหล่านี้มีป้ายกำกับจาก A ถึง G และโดยการให้แสงชุดค่าผสมที่แตกต่างกันจำนวนและตัวอักษรบางตัวสามารถเกิดขึ้นได้ มีไฟ LED 7 ส่วนหลักสองประเภท: แคโทดทั่วไปและขั้วบวกทั่วไป
ใน Cathode ทั่วไป 7 ส่วน LED cathodes ทั้งหมด (ขั้วลบ) ของแต่ละส่วนเชื่อมต่อกันและมีสายดิน เพื่อให้แสงสว่างในเซ็กเมนต์เฉพาะระดับตรรกะสูง (โดยปกติจะใช้ 5V) กับขั้วบวกที่สอดคล้องกัน ในทางกลับกันใน LED ขั้วบวก 7 ส่วนทั่วไปขั้วบวกทั้งหมด (ขั้วบวก) เชื่อมต่อเข้าด้วยกันและให้แรงดันไฟฟ้าบวก ในการเปิดใช้งานเซ็กเมนต์ระดับตรรกะต่ำ (ปกติ 0V) จะถูกนำไปใช้กับแคโทด
การทำแผนที่อักขระตัวอักษรและตัวเลขกับรูปแบบ 7 ส่วน
ขั้นตอนแรกในการแสดงอักขระตัวอักษรและตัวเลขบน LED 7 เซ็กเมนต์คือการเข้าใจรูปแบบเซ็กเมนต์ที่จำเป็นสำหรับตัวละครแต่ละตัว สำหรับตัวเลข 0 ถึง 9 รูปแบบค่อนข้างตรงไปตรงมา ตัวอย่างเช่นในการแสดงหมายเลข 0, เซ็กเมนต์ A, B, C, D, E และ F จะส่องสว่างในขณะที่เซ็กเมนต์ G ยังคงปิดอยู่ ตารางต่อไปนี้แสดงรูปแบบเซ็กเมนต์สำหรับตัวเลข 0 ถึง 9:
| ตัวเลข | รูปแบบเซ็กเมนต์ (AG) |
|---|---|
| 0 | 11111110 |
| 1 | 0110000 |
| 2 | 1101101 |
| 3 | 1111001 |
| 4 | 0110011 |
| 5 | 1011011 |
| 6 | 1011111 |
| 7 | 1110000 |
| 8 | 11111111 |
| 9 | 1111011 |
นอกเหนือจากตัวเลข LED 7 ส่วนยังสามารถแสดงตัวอักษรบางตัวได้ อย่างไรก็ตามเนื่องจากจำนวนกลุ่มที่ จำกัด จึงไม่สามารถแสดงตัวอักษรทั้งหมดได้อย่างถูกต้อง ตัวอักษรที่แสดงมากที่สุด ได้แก่ A, B, C, D, E, F, H, L, P และ U. นี่คือรูปแบบเซ็กเมนต์สำหรับตัวอักษรเหล่านี้:
| จดหมาย | รูปแบบเซ็กเมนต์ (AG) |
|---|---|
| อัน | 1110111 |
| ข | 0011111 |
| C | 1001110 |
| d | 0111101 |
| และ | 1001111 |
| f | 1000111 |
| ชม | 0110111 |
| l | 0001110 |
| P | 1100111 |
| ใน | 0111110 |
ขับ LED 7 ส่วนพร้อมไมโครคอนโทรลเลอร์
ในการแสดงอักขระตัวอักษรและตัวเลขบน LED 7 ส่วนโดยทั่วไปไมโครคอนโทรลเลอร์จะใช้เพื่อควบคุมการส่องสว่างของเซ็กเมนต์ ไมโครคอนโทรลเลอร์เช่น Arduino, Raspberry Pi และ PIC เป็นตัวเลือกยอดนิยมเนื่องจากความสะดวกในการใช้งานและความพร้อมของไลบรารีการเขียนโปรแกรม


กระบวนการพื้นฐานในการขับเคลื่อน LED 7 ส่วนด้วยไมโครคอนโทรลเลอร์เกี่ยวข้องกับขั้นตอนต่อไปนี้:
- การกำหนดค่าพิน: เชื่อมต่อแต่ละส่วนของ 7 ส่วนที่นำไปสู่พินเอาท์พุทที่เหมาะสมของไมโครคอนโทรลเลอร์ หากใช้ LED แคโทดทั่วไปเซ็กเมนต์จะเชื่อมต่อกับพินเอาท์พุทของไมโครคอนโทรลเลอร์ผ่านตัวต้านทานที่ จำกัด ปัจจุบัน หากใช้ LED ขั้วบวกทั่วไปเซ็กเมนต์จะเชื่อมต่อกับพินเอาท์พุทของไมโครคอนโทรลเลอร์ผ่านทรานซิสเตอร์หรือบัฟเฟอร์เพื่อให้กระแสเพียงพอ
- การทำแผนที่อักขระ: สร้างอาร์เรย์หรือตารางการค้นหาที่เก็บรูปแบบเซ็กเมนต์สำหรับตัวอักษรและตัวเลขแต่ละตัว ตารางนี้สามารถใช้เพื่อดึงรูปแบบที่เหมาะสมตามอักขระที่จะแสดงอย่างรวดเร็ว
- ฟังก์ชั่นแสดง: เขียนฟังก์ชั่นที่ใช้อักขระเป็นอินพุตและตั้งค่าพินเอาท์พุทของไมโครคอนโทรลเลอร์เป็นรูปแบบเซ็กเมนต์ที่สอดคล้องกัน ฟังก์ชั่นนี้สามารถเรียกได้เมื่อใดก็ตามที่ต้องแสดงอักขระใหม่
นี่คือตัวอย่างโค้ด Arduino ที่แสดงวิธีการแสดงหมายเลข 0 ถึง 9 บน Cathode 7-segment ทั่วไป: LED:
// กำหนดพินที่เชื่อมต่อกับกลุ่ม const int segmentpins [] = {2, 3, 4, 5, 6, 7, 8}; // รูปแบบเซ็กเมนต์สำหรับตัวเลข 0 ถึง 9 ไบต์ไบต์ DigitPatterns [] = {B1111110, // 0 B0110000, // 1 B1101101, // 2 B1111001, // 3 B0110011, // 4 B1011011, // 5 B101111, // 6 B111111111 โมฆะการตั้งค่า () {// ตั้งค่าพินเซ็กเมนต์เป็นเอาต์พุตสำหรับ (int i = 0; i <7; i ++) {pinmode (segmentpins [i], เอาต์พุต); }} void loop () {// แสดงหมายเลข 0 ถึง 9 ด้วยการหน่วงเวลา 1 วินาทีระหว่างแต่ละหมายเลขสำหรับ (int i = 0; i <10; i ++) {displayDigit (i); ความล่าช้า (1,000); }} void displayDigit (int digit) {// รับรูปแบบเซ็กเมนต์สำหรับรูปแบบไบต์ตัวเลข = DigitPatterns [Digit]; // ตั้งค่าพินเซ็กเมนต์ตามรูปแบบสำหรับ (int i = 0; i <7; i ++) {digitalWrite (segmentpins [i], bitread (pattern, i)); -
มัลติเพล็กซ์ LED 7 ส่วนหลายเซ็กเมนต์
ในหลายแอปพลิเคชัน LED 7 ส่วนหลายส่วนจะใช้เพื่อแสดงตัวเลขหรือข้อความหลายหลัก อย่างไรก็ตามการขับขี่ LED แต่ละตัวแต่ละตัวจะต้องใช้พินเอาท์พุทจำนวนมากบนไมโครคอนโทรลเลอร์ เพื่อเอาชนะข้อ จำกัด นี้เทคนิคที่เรียกว่ามัลติเพล็กซิ่งมักใช้
มัลติเพล็กซ์เกี่ยวข้องกับการสลับอย่างรวดเร็วระหว่าง LED แต่ละตัวส่องสว่างแต่ละอันตามลำดับในช่วงเวลาสั้น ๆ เนื่องจากดวงตาของมนุษย์มีการคงอยู่ของการมองเห็นมันจึงรับรู้ไฟ LED ทั้งหมดที่ถูกสว่างพร้อมกัน มัลติเพล็กซ์มีสองประเภทหลัก: มัลติเพล็กซ์เวลา (TDM) และมัลติเพล็กซ์ความถี่ (FDM) TDM เป็นวิธีที่ใช้กันมากที่สุดสำหรับการขับขี่ LED 7 ส่วน
ในการใช้งาน TDM multiplexing แต่ละ LED 7 เซ็กเมนต์แต่ละตัวเชื่อมต่อกับหมุดเซ็กเมนต์ชุดเดียวกันและใช้ PIN เปิดใช้งานแยกต่างหากเพื่อควบคุมว่า LED นั้นทำงานอยู่ในปัจจุบัน ไมโครคอนโทรลเลอร์สลับระหว่างการเปิดใช้งาน LED แต่ละตัวและแสดงตัวเลขที่เหมาะสม ต่อไปนี้เป็นตัวอย่างของรหัส Arduino ที่แสดงวิธีการหลาย LED Cathode 7-srement ทั่วไปสามตัวเพื่อแสดงหมายเลขสามหลัก:
// กำหนดพินที่เชื่อมต่อกับกลุ่ม const int segmentpins [] = {2, 3, 4, 5, 6, 7, 8}; // กำหนดพินที่เชื่อมต่อกับสายเปิดใช้งานของ LED const int enablePins [] = {9, 10, 11}; // รูปแบบเซ็กเมนต์สำหรับตัวเลข 0 ถึง 9 ไบต์ไบต์ DigitPatterns [] = {B1111110, // 0 B0110000, // 1 B1101101, // 2 B1111001, // 3 B0110011, // 4 B1011011, // 5 B101111, // 6 B111111111 // หมายเลขที่จะแสดงหมายเลข int = 123; โมฆะการตั้งค่า () {// ตั้งค่าพินเซ็กเมนต์เป็นเอาต์พุตสำหรับ (int i = 0; i <7; i ++) {pinmode (segmentpins [i], เอาต์พุต); } // ตั้งค่าการเปิดใช้งานพินเป็นเอาต์พุตสำหรับ (int i = 0; i <3; i ++) {pinmode (enablePins [i], เอาต์พุต); DigitalWrite (enablePins [i], สูง); // ปิดการใช้งาน LED ทั้งหมดในขั้นต้น}} void loop () {// แยกตัวเลขแต่ละตัวจากตัวเลข int digit1 = number / 100; int digit2 = (หมายเลข / 10) % 10; int digit3 = number % 10; // multiplex the LED สำหรับ (int i = 0; i <3; i ++) {// เปิดใช้งาน LED DigitalWrite ปัจจุบัน (enablePins [i], ต่ำ); // แสดงตัวเลขที่เหมาะสมถ้า (i == 0) {displayDigit (Digit1); } อื่นถ้า (i == 1) {displayDigit (Digit2); } else {displayDigit (Digit3); } // การหน่วงเวลาเป็นระยะเวลาสั้น ๆ เพื่อให้ LED ถึงความล่าช้า (2); // ปิดการใช้งาน LED DigitalWrite ปัจจุบัน (enablePins [i], สูง); }} void displayDigit (int digit) {// รับรูปแบบเซ็กเมนต์สำหรับรูปแบบไบต์ตัวเลข = DigitPatterns [Digit]; // ตั้งค่าพินเซ็กเมนต์ตามรูปแบบสำหรับ (int i = 0; i <7; i ++) {digitalWrite (segmentpins [i], bitread (pattern, i)); -
ผลิตภัณฑ์ LED 7 ส่วนของเรา
ในฐานะซัพพลายเออร์ LED 7 ส่วนเรานำเสนอผลิตภัณฑ์ LED 7 เซ็กเมนต์คุณภาพสูงที่หลากหลายเพื่อตอบสนองความต้องการที่หลากหลายของลูกค้าของเรา ผลิตภัณฑ์ของเรารวมถึงLED ส่วนเดียว 7 หลัก-LED สามหลัก 7 ส่วน, และLED สี่หลัก 7 ส่วน- ไฟ LED เหล่านี้มีอยู่ทั้งในแคโทดทั่วไปและการกำหนดค่าขั้วบวกทั่วไปและมีขนาดและสีต่าง ๆ เพื่อให้เหมาะกับแอปพลิเคชันที่แตกต่างกัน
LED 7 ส่วนของเราผลิตขึ้นโดยใช้เทคโนโลยีขั้นสูงและวัสดุคุณภาพสูงเพื่อให้มั่นใจถึงประสิทธิภาพและความน่าเชื่อถือที่ยอดเยี่ยม พวกเขาใช้กันอย่างแพร่หลายในแอพพลิเคชั่นเช่นนาฬิกาดิจิตอลเครื่องคิดเลขมิเตอร์และระบบควบคุมอุตสาหกรรม ไม่ว่าคุณจะเป็นงานอดิเรกวิศวกรหรือผู้ผลิตเรามีโซลูชัน LED 7 ส่วนที่เหมาะสมสำหรับคุณ
ติดต่อเราเพื่อรับการจัดซื้อ
หากคุณสนใจในผลิตภัณฑ์ LED 7 ส่วนของเราหรือมีคำถามใด ๆ เกี่ยวกับการแสดงอักขระตัวอักษรและตัวเลขใน LED 7 ส่วนโปรดติดต่อเรา ทีมผู้เชี่ยวชาญของเราพร้อมที่จะช่วยเหลือคุณเกี่ยวกับความต้องการการจัดซื้อของคุณและให้โซลูชั่นที่ดีที่สุดเท่าที่จะเป็นไปได้ เราหวังว่าจะได้ทำงานร่วมกับคุณและช่วยให้คุณบรรลุเป้าหมายโครงการของคุณ
การอ้างอิง
- เอกสาร Arduino: https://www.arduino.cc/reference/en/
- บทเรียนอิเล็กทรอนิกส์: https://www.electronics-tutorials.ws/
- SparkFun เรียนรู้: https://learn.sparkfun.com/tutorials/
