આર્ડુઇનો સાથે TM1637 4-અંકનું 7-સેગમેન્ટ ડિસ્પ્લે વાપરવું
આ ટ્યુટોરિયલમાં, આપણે Arduino સાથે TM1637 4-અંકનો 7-સેગમેન્ટ ડિસ્પ્લે કેવી રીતે ઉપયોગ કરવો તે શીખીશું. આ ડિસ્પ્લેનો ઉપયોગ સંખ્યાઓ, કાઉન્ટર્સ, અથવા અન્ય કોઈપણ આંકડાકીય માહિતી દર્શાવવા માટે થઈ શકે છે. પ્રોજેક્ટના અંત સુધીમાં, તમારી પાસે એક કાર્યરત ડિસ્પ્લે હશે જે 0 થી 500 સુધી ગણી શકે છે અને તેજસ્વિતા ગોઠવણ જેવી વિવિધ સુવિધાઓ દર્શાવી શકે છે.

આ પ્રોજેક્ટ માટે, આપણે TM1637 ડિસ્પ્લેને માત્ર થોડા વાયરનો ઉપયોગ કરીને Arduino સાથે જોડીશું. ડિસ્પ્લેમાં ચાર પિન છે: VCC, GND, DIO, અને CLK. VCC 5V પાવર સપ્લાય સાથે જોડાય છે, જ્યારે GND ગ્રાઉન્ડ સાથે જોડાય છે. DIO પિન Arduino ના ડિજિટલ પિન 3 સાથે જોડાશે, અને CLK પિન ડિજિટલ પિન 2 સાથે જોડાશે. આ ગોઠવણી Arduino ને ડિસ્પ્લે સાથે સરળતાથી વાતચીત કરવાની મંજૂરી આપે છે.
વ્યવહારિક અમલીકરણ જોવા માટે, વિઝ્યુઅલ માર્ગદર્શિકા માટે વિડિયો (વિડિયોમાં 00:00 પર) સાથે અનુસરવાનું સુનિશ્ચિત કરો.
હાર્ડવેર સમજાવ્યું
TM1637 એક બહુમુખી 7-સેગમેન્ટ ડિસ્પ્લે ડ્રાઇવર છે જે 4-અંકના ડિસ્પ્લેના સરળ નિયંત્રણ માટે પરવાનગી આપે છે. તે બે-વાયર ઇન્ટરફેસનો ઉપયોગ કરીને નિયંત્રિત થાય છે, જેમાં ડેટા પિન (DIO) અને ક્લોક પિન (CLK) શામેલ છે. આ વધારાના ઘટકોની જરૂર વિના Arduino જેવા માઇક્રોકંટ્રોલર્સ સાથે જોડવાનું સરળ બનાવે છે.
ડિસ્પ્લે દશાંશ સંખ્યાઓ બતાવી શકે છે અને તેજસ્વિતા નિયંત્રણને સપોર્ટ કરે છે, જે તેને કાઉન્ટર્સ, ઘડિયાળો અને ટાઇમર્સ જેવી વિવિધ એપ્લિકેશનો માટે યોગ્ય બનાવે છે. તેની કોમ્પેક્ટ ડિઝાઇન અને ઉપયોગમાં સરળતા તેને શોખીનો અને વ્યાવસાયિકો બંનેમાં લોકપ્રિય પસંદગી બનાવે છે.
ડેટાશીટ વિગતો
| ઉત્પાદક | Titan Micro Electronics |
|---|---|
| ભાગ નંબર | TM1637 |
| લોજિક/IO વોલ્ટેજ | 5 V |
| સપ્લાય વોલ્ટેજ | 3.3 V - 5.5 V |
| આઉટપુટ કરંટ (પ્રતિ સેગમેન્ટ) | 20 mA |
| PWM ફ્રીક્વન્સી માર્ગદર્શન | N/A |
| ઇનપુટ લોજિક થ્રેશોલ્ડ | 0.3 VCC (નીચું), 0.7 VCC (ઊંચું) |
| વોલ્ટેજ ડ્રોપ / RDS(on) / સેચ્યુરેશન | 2.5 V (સામાન્ય) |
| થર્મલ મર્યાદાઓ | 125 °C |
| પેકેજ | 16-પિન DIP |
- ડિસ્પ્લે ખામી ટાળવા માટે VCC સ્થિર 5V સ્ત્રોત સાથે જોડાયેલ છે તેની ખાતરી કરો.
- સેગમેન્ટ્સને નુકસાન થતું અટકાવવા જરૂરી હોય તો કરંટ લિમિટિંગ રેઝિસ્ટરનો ઉપયોગ કરો.
- અવાજ અને દખલ ઘટાડવા માટે વાયરિંગ ટૂંકું રાખો.
- રિવર્સ પોલેરિટી અટકાવવા માટે હંમેશા પિન જોડાણો બે વાર તપાસો.
- શ્રેષ્ઠ દૃશ્યતા માટે
setBrightnessફંક્શનનો ઉપયોગ કરીને તેજસ્વિતા સ્તર ગોઠવો.
વાયરિંગ સૂચનાઓ


TM1637 ડિસ્પ્લેને વાયર કરવા માટે, પહેલા VCC પિનને Arduino ના 5V આઉટપુટ સાથે જોડો. આગળ, GND પિનને Arduino પરના ગ્રાઉન્ડ પિનમાંથી એક સાથે જોડો. ડેટા સંચાર માટે, ડિસ્પ્લેના DIO પિનને Arduino પરના ડિજિટલ પિન 3 સાથે અને CLK પિનને ડિજિટલ પિન 2 સાથે જોડો. આ સરળ ગોઠવણી Arduino ને ડિસ્પ્લે સાથે અસરકારક રીતે વાતચીત કરવાની મંજૂરી આપે છે.
ખાતરી કરો કે તમારી પાસે ઢીલા વાયરિંગ સમસ્યાઓ ટાળવા માટે સુરક્ષિત જોડાણો છે. વિડિયોમાં, વૈકલ્પિક વાયરિંગ રૂપરેખાંકનો બતાવવામાં આવ્યા છે, પરંતુ પ્રદાન કરેલા જોડાણો મૂળભૂત કામગીરી માટે સૌથી સીધા છે (વિડિયોમાં 01:30 પર).
કોડ ઉદાહરણો અને વોકથ્રુ
પ્રદાન કરેલ કોડ ડિસ્પ્લેને પ્રારંભ કરે છે અને જરૂરી રૂપરેખાંકનો સેટ કરે છે. કોડમાં મુખ્ય ઓળખકર્તાઓમાં CLK અને DIO શામેલ છે, જે અનુક્રમે ડિજિટલ પિન 2 અને 3 તરીકે વ્યાખ્યાયિત છે. ડિસ્પ્લેની તેજસ્વિતા setBrightness ફંક્શનનો ઉપયોગ કરીને સેટ કરવામાં આવે છે.
#define CLK 2
#define DIO 3
TM1637Display display(CLK, DIO);
void setup() {
display.setBrightness(0x0f); // મહત્તમ તેજસ્વિતા સેટ કરો
}
આ કોડ અંશ ડિસ્પ્લેનું પ્રારંભિકરણ અને મહત્તમ તેજસ્વિતાની સેટિંગ દર્શાવે છે. આગળ, loop ફંક્શન વિવિધ સંખ્યાઓ કેવી રીતે દર્શાવવી તે દર્શાવે છે.

void loop() {
uint8_t data[] = { 0x0, 0x0, 0x0, 0x0 };
display.setSegments(data); // ડિસ્પ્લે સાફ કરો
display.showNumberDec(23, false, 2, 1); // નંબર 23 બતાવો
delay(TEST_DELAY);
}
અહીં, ડિસ્પ્લે સાફ કરવામાં આવે છે, અને નંબર 23 બતાવવામાં આવે છે. showNumberDec ફંક્શન દર્શાવેલ નંબર અને તેના ફોર્મેટિંગને નિયંત્રિત કરવા માટે પરિમાણો લે છે. લૂપ 500 સુધીની સંખ્યાઓ દર્શાવવાનું ચાલુ રાખે છે.
for(int i=0; i<=500; i++) {
display.showNumberDec(i); // 0 થી 500 સુધીની સંખ્યાઓ બતાવો
}
આ કોડ સ્નિપેટ એક સરળ કાઉન્ટર દર્શાવે છે જે TM1637 ડિસ્પ્લે પર 0 થી 500 સુધીની સંખ્યાઓ દર્શાવે છે. ડિસ્પ્લે 500 સુધી પહોંચે ત્યાં સુધી સતત અપડેટ થશે, પછી તે 0 પર પાછું લૂપ થશે. સંપૂર્ણ કોડ તમારા સંદર્ભ માટે લેખની નીચે ઉપલબ્ધ છે.
પ્રદર્શન / શું અપેક્ષા રાખવી
એકવાર બધું વાયર થઈ જાય અને કોડ અપલોડ થઈ જાય, ડિસ્પ્લે 0 થી 500 સુધીની સંખ્યાઓ ક્રમિક રીતે બતાવવી જોઈએ. તે વિવિધ તેજસ્વિતા સેટિંગ્સ પણ દર્શાવશે અને અપડેટ્સ વચ્ચે સ્ક્રીનને યોગ્ય રીતે સાફ કરશે. રિવર્સ પોલેરિટીથી સાવચેત રહો, કારણ કે આ ડિસ્પ્લેને નુકસાન પહોંચાડી શકે છે. તમે વિડિયો દરમિયાન ડિસ્પ્લેનું અવલોકન કરીને કાર્યક્ષમતાની પુષ્ટિ કરી શકો છો (વિડિયોમાં 04:00 પર).
વિડિયો ટાઇમસ્ટેમ્પ્સ
- 00:00 - TM1637 ડિસ્પ્લેનો પરિચય
- 01:30 - વાયરિંગ સૂચનાઓ
- 02:45 - કોડ વોકથ્રુ
- 04:00 - ડિસ્પ્લેનું પ્રદર્શન
/*
* This is the Arduino code for TM1637 4-digit display.
*
* Written by Ahmad S. for Robojax Video
*visit www.Robojax.com to get wiring diagram and other resources for this project
* Permission granted to share this code given that this
* note is kept with the code.
* Disclaimer: this code is "AS IS" and for educational purposes only.
*
*/
/*
* Original code from https://github.com/avishorp/TM1637
* Modified for Robojax video on December 6, 2017
*/
#include <Arduino.h>
#include <TM1637Display.h>
// Module connection pins (Digital Pins)
#define CLK 2
#define DIO 3
// The amount of time (in milliseconds) between tests
#define TEST_DELAY 2000
TM1637Display display(CLK, DIO);
void setup()
{
}
void loop()
{
display.setBrightness(0x0f);
uint8_t data[] = { 0x0, 0x0, 0x0, 0x0 };
display.setSegments(data);
display.showNumberDec(23, false, 2,1);
delay(TEST_DELAY);
display.setSegments(data);
display.showNumberDec(153, false, 3, 1);
delay(TEST_DELAY);
display.setSegments(data);
for(int i=0; i<=500; i++)
{
display.showNumberDec(i);
}
}
સંસાધનો અને સંદર્ભો
હજી સુધી કોઈ સંસાધનો નથી.
ફાઇલો📁
Arduino લાઇબ્રેરીઓ (zip)
-
TM1637 Arduino Library
TM1637_library.zip1.36 MB
ડેટાશીટ (pdf)
-
Datasheet for TM1637 4 digit seven segment display
/download/datasheet/robojax_TM1637_datasheet.pdf0.67 MB
વપરાશકર્તાનું માર્ગદર્શિકા
-
TM1637 Display Manual
robojax-TM1637_display_manual.pdf0.31 MB