شاشة TM1637 هي شاشة عرض رقمية مشهورة تستخدم في العديد من التطبيقات الإلكترونية والمشاريع التي تحتاج إلى عرض أرقام رقمية بطريقة بسيطة وواضحة. تعتمد على رقاقة TM1637 المدمجة التي تتيح عرض الأرقام الرقمية من 0 إلى 9، وهي تتكون عادةً من أربعة أرقام، مثل شاشات الساعة الرقمية أو العدادات.
تُستخدم هذه الشاشات في مشاريع الروبوتات الصغيرة، وساعات الحائط الرقمية، والأجهزة الصغيرة الأخرى. يمكن التحكم بها بسهولة باستخدام مجموعة بسيطة من الأوامر وتتوافق مع مجموعة متنوعة من المنصات الميكروكنترولر والأردوينو، مما يجعلها خيارًا شائعًا للمبتدئين في عالم الإلكترونيات.
لعرض النصوص على شاشة TM1637 باستخدام MicroPython على لوحة ESP32، يمكنك استخدام مكتبة ميكروبايثون المتوفرة لتواصل مع هذه الشاشة. لكن قبل البدء، تحتاج إلى التأكد من أنك قمت بتثبيت مكتبة TM1637 على MicroPython المثبتة على لوحة ESP32.
هناك العديد من المكتبات المتاحة لـ MicroPython للتواصل مع شاشات TM1637، ومنها مكتبة "micropython-tm1637" التي يمكن استخدامها. يجب تثبيت هذه المكتبة أولاً على جهازك. بعد ذلك، يمكنك استخدامها لعرض النصوص على شاشة TM1637.
المكونات المطلوبة لعرض الأعداد المتصل بالاردوينو على شاشة TM1637
شاشة TM1637:
يمكنك شراء شاشة TM1637 جاهزة مع وحدة التحكم والشاشة الرقمية.
لوحة ESP32:
لوحة ESP32 هي لوحة تطوير مصغرة تعتمد على شرائح ESP32 المتكاملة، والتي توفر إمكانيات متقدمة للاتصال بشبكات Wi-Fi و Bluetooth بالإضافة إلى إمكانيات الحوسبة الصغيرة. تمكّنك هذه اللوحة من بناء مشاريع الإنترنت الصغيرة (IoT) والتحكم في الأجهزة والروبوتات والتفاعل مع البيئة المحيطة بسهولة.
أسلاك التوصيل (Jumpers):
أسلاك للتوصيل بين شاشة TM1637 ولوحة ESP32.
لوحة الاختبار:
اللوحة ، المعروف أيضًا باسم اللوحة ، هو مكون إلكتروني شائع الاستخدام لأداء النماذج الأولية السريعة والتجريب. يجعل من السهل توصيل المكونات الإلكترونية دون الحاجة إلى لحام.
توصيل شاشة TM1637 مع لوحة ESP32 يكون عادةً عبر توصيل الأطراف بطريقة محددة. إليك مخطط توصيلات بسيط لشاشة TM1637 مع لوحة ESP32:
قم بتوصيل الطرف VCC من شاشة TM1637 بطرف 3.3V على لوحة ESP32 (اعتمادًا على جهد التشغيل المناسب للشاشة).
قم بتوصيل الطرف GND من شاشة TM1637 بطرف GND على لوحة ESP32 .
GPIO 2 على لوحة ESP32 يتصل بطرف CLK (الساعة) على شاشة TM1637.
GPIO 4 على لوحة ESP32 يتصل بطرف DIO (البيانات) على شاشة TM1637.
بعد توصيل الشاشة ولوحة ESP32، يمكنك استخدام مكتبة TM1637 في برنامج Micropython للتحكم في الشاشة وعرض الأرقام أو النصوص عليها.
لعرض النص على شاشة TM1637 باستخدام MicroPython على لوحة ESP32، يمكنك استخدام مكتبة "tm1637.py" التي تُمكّن التواصل مع شاشة TM1637 بسهولة. تأكد من أنك قد قمت بتثبيت هذه المكتبة على لوحة ESP32.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 |
import tm1637 from machine import Pin # إنشاء كائن لشاشة TM1637 tm = tm1637.TM1637(clk=Pin(2), dio=Pin(4)) # all LEDS on "88:88" tm.write([127, 255, 127, 127]) tm.write(bytearray([127, 255, 127, 127])) tm.write(b'\x7F\xFF\x7F\x7F') tm.show('8888', True) tm.numbers(88, 88, True) # all LEDS off tm.write([0, 0, 0, 0]) tm.show(' ') # write to the 2nd and 3rd segments only tm.write([119, 124], 1) # _Ab_ tm.write([124], 2) # __b_ tm.write([119], 1) # _A__ # display "0123" tm.write([63, 6, 91, 79]) tm.write(bytearray([63, 6, 91, 79])) tm.write(b'\x3F\x06\x5B\x4F') tm.show('1234') tm.number(1234) tm.numbers(12, 34, False) # display "4567" tm.write([102, 109, 125, 7]) tm.write([102], 0) # 4___ tm.write([109], 1) # _5__ tm.write([125], 2) # __6_ tm.write([7], 3) # ___7 # set middle two segments to "12", ie "4127" tm.write([6, 91], 1) # _12_ # set last segment to "9", ie "4129" tm.write([111], 3) # ___9 # show "AbCd" tm.write([119, 124, 57, 94]) tm.show('abcd') # show "COOL" tm.write([0b00111001, 0b00111111, 0b00111111, 0b00111000]) tm.write([0x39, 0x3F, 0x3F, 0x38]) tm.write(b'\x39\x3F\x3F\x38') tm.write([57, 63, 63, 56]) tm.show('cool') tm.show('COOL') # display "dEAd", "bEEF" tm.hex(0xdead) tm.hex(0xbeef) tm.show('dead') tm.show('Beef') # show "12:59" tm.numbers(12, 59) tm.show('1259', True) # show "-123" tm.number(-123) tm.show('-123') # Show Help tm.show('Help') tm.write(tm.encode_string('Help')) tm.write([tm.encode_char('H'), tm.encode_char('e'), tm.encode_char('l'), tm.encode_char('p')]) # Scroll Hello World from right to left tm.scroll('Hello World') # 4 fps tm.scroll('Hello World', 1000) # 1 fps # Scroll all available characters tm.scroll(list(tm1637._SEGMENTS)) # all LEDs dim tm.brightness(0) # all LEDs bright tm.brightness(7) # converts a digit 0-0x0f to a byte representing a single segment # use write() to render the byte on a single segment tm.encode_digit(0) # 63 tm.encode_digit(8) # 127 tm.encode_digit(0x0f) # 113 # 15 or 0x0f generates a segment that can output a F character tm.encode_digit(15) # 113 tm.encode_digit(0x0f) # 113 # used to convert a 1-4 length string to an array of segments tm.encode_string(' 1') # bytearray(b'\x00\x00\x00\x06') tm.encode_string('2 ') # bytearray(b'[\x00\x00\x00') tm.encode_string('1234') # bytearray(b'\x06[Of') tm.encode_string('-12-') # bytearray(b'@\x06[@') tm.encode_string('cafe') # bytearray(b'9wqy') tm.encode_string('CAFE') # bytearray(b'9wqy') tm.encode_string('a') # bytearray(b'w\x00\x00\x00') tm.encode_string('ab') # bytearray(b'w|\x00\x00') # used to convert a single character to a segment byte tm.encode_char('1') # 6 tm.encode_char('9') # 111 tm.encode_char('-') # 64 tm.encode_char('a') # 119 tm.encode_char('F') # 113 # display "dEAd", "bEEF", "CAFE" and "bAbE" tm.hex(0xdead) tm.hex(0xbeef) tm.hex(0xcafe) tm.hex(0xbabe) # show "00FF" (hex right aligned) tm.hex(0xff) # show " 1" (numbers right aligned) tm.number(1) # show " 12" tm.number(12) # show " 123" tm.number(123) # show "9999" capped at 9999 tm.number(20000) # show " -1" tm.number(-1) # show " -12" tm.number(-12) # show "-123" tm.number(-123) # show "-999" capped at -999 tm.number(-1234) # show "01:02" tm.numbers(1, 2) # show "0102" tm.numbers(1, 2, False) # show "-5:11" tm.numbers(-5, 11) # show "12:59" tm.numbers(12, 59) # show temperature '24*C' tm.temperature(24) tm.show('24*C') # show temperature works for range -9 to +99 tm.temperature(-10) # LO*C tm.temperature(-9) # -9*C tm.temperature(5) # 5*C tm.temperature(99) # 99*C tm.temperature(100) # HI*C |
تشير الروبوتات التعليمية إلى استخدام الروبوتات وتكنولوجيا الروبوتات لتعزيز التعلم في بيئات التعليم. إنه ينطوي على دمج التكنولوجيا والهندسة وعلوم الحاسوب في الفصل الدراسي، مما يتيح للطلاب المشاركة في تجارب تعلم عملية وعملية.
في هذا السياق ، يمثل موقعنا الإلكتروني مصدرًا ممتازًا للآباء والمعلمين والأطفال الذين يرغبون في اكتشاف الروبوتات.
زاوية قنطش ـ جمال ـ المنستير ـ تونس
+216 92 886 231
medaliprof@gmail.com
هذا موقع واب تم إنشاؤه بواسطة محمد علي أستاذ إعلامية