সুচিপত্র:
- ধাপ 1: আপনার প্রয়োজনীয় জিনিসগুলি
- ধাপ 2: Arduino IDE তে TFT ডিসপ্লে লাইব্রেরি ইনস্টল করা
- ধাপ 3: ক্যালকুলেটর কোড আপলোড করুন
ভিডিও: Arduino TFT LCD টাচস্ক্রিন ক্যালকুলেটর: 3 ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:00
হাই বন্ধুরা এই নির্দেশাবলীতে আমরা 3.5 TFT LCD টাচস্ক্রিন ডিসপ্লে দিয়ে Arduino Uno ব্যবহার করে একটি ক্যালকুলেটর তৈরি করতে শিখব। সুতরাং আমরা একটি কোড লিখব এবং এটি arduino তে আপলোড করব যা ডিসপ্লেতে ক্যালকুলেটর ইন্টারফেস প্রদর্শন করবে এবং স্পর্শ কার্যকারিতা গ্রহণ করবে এবং মৌলিক গাণিতিক এক্সপ্রেশন আউটপুট দিন।
ধাপ 1: আপনার প্রয়োজনীয় জিনিসগুলি
এই প্রকল্পের জন্য আপনার নিম্নলিখিত বিষয়গুলির প্রয়োজন হবে: 3.5 TFT LCD DISPLAYARDUINO UNO
ধাপ 2: Arduino IDE তে TFT ডিসপ্লে লাইব্রেরি ইনস্টল করা
আমরা SPFD5408 লাইব্রেরি ব্যবহার করছি:
এই arduino ক্যালকুলেটর কোড কাজ পেতে। এটি অ্যাডাফ্রুটের একটি পরিবর্তিত লাইব্রেরি এবং আমাদের এলসিডি টিএফটি মডিউল দিয়ে নির্বিঘ্নে কাজ করতে পারে। আপনার Arduino IDE এ এই লাইব্রেরিটি ইনস্টল করা বা এই প্রোগ্রামে কোন ত্রুটি ছাড়াই কম্পাইল করার জন্য এটি খুবই গুরুত্বপূর্ণ। সেখানে ক্লোন বা ডাউনলোড এ ক্লিক করুন এবং "ডাউনলোড জিপ" নির্বাচন করুন। একটি জিপ ফাইল ডাউনলোড করা হবে। একটি ব্রাউজার উইন্ডো জিপ ফাইলে নেভিগেট খুলবে এবং "ওকে" ক্লিক করবে। আপনি Arduino এর নিচের বাম কোণে "আপনার লাইব্রেরিতে যোগ করা লাইব্রেরি" লক্ষ্য করুন।
ধাপ 3: ক্যালকুলেটর কোড আপলোড করুন
লাইব্রেরি ইনস্টল করার পর ডিসপ্লেটি আরডুইনোতে সংযুক্ত করুন এবং নিচের কোডটি অনুলিপি করুন এবং এটি আরডুইনোতে আপলোড করুন। লাইব্রেরি#অন্তর্ভুক্ত "SPFD5408_TouchScreen.h"/*_ লাইব্রেরির সমাপ্তি _*//*_ LCD পিন সংজ্ঞায়িত করুন (আমি ডিফল্ট মানগুলি স্বাক্ষর করেছি) _*/#YP A1 সংজ্ঞায়িত করুন // একটি এনালগ পিন হতে হবে, "একটি" নোটেশন ব্যবহার করুন!# XM A2 সংজ্ঞায়িত করুন // একটি এনালগ পিন হতে হবে, "একটি" স্বরলিপি ব্যবহার করুন! A1#LCD_RD A0#সংজ্ঞায়িত করুন LCD_RESET A4/*_ সংজ্ঞা সমাপ্তি _*//*_ রং এবং চাপের নাম নির্ধারণ করুন _*/#নির্ধারণ করুন সাদা 0x0000 // কালো-> সাদা#YELLOW 0x001F // নীল-> হলুদ#সংজ্ঞায়িত করুন CYAN 0xF800 // লাল-> সায়ান#PINK 0x07E0 সংজ্ঞায়িত করুন // সবুজ-> গোলাপী#RED 0x07FF নির্ধারণ করুন // সায়ান-> লাল#সবুজ 0xF81F সংজ্ঞায়িত করুন // গোলাপী-> সবুজ#ডিফাইন ব্লু 0xFFE0 // হলুদ- > নীল#সংজ্ঞায়িত কালো 0xFFFF // সাদা-> কালো#সংজ্ঞা MINPRESSURE 10#সংজ্ঞায়িত MAXPRESSURE 1000/*_ বরাদ্দ _*//*_ ক্যালিব্রেট TFT LCD _*/#TS_MINX 125#সংজ্ঞায়িত TS_MINY 85#সংজ্ঞায়িত TS_MAX 950 _ ক্রমাঙ্কনের শেষ _*/টাচস্ক্রিন ts = টাচস্ক্রিন (XP, YP, XM, YM, 300); // 300 হল সংবেদনশীলতা Adafruit_TFTLCD tft (LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET); // LCDString চিহ্নের সাথে যোগাযোগ শুরু করুন [4] [4] = {{"7", "8", "9", "/"}, {"4", "5", "6", "*"}, {"1", "2", "3", "-"}, {"C", "0", "=", "+"}}; int X, Y; দীর্ঘ সংখ্যা 1, সংখ্যা 2, সংখ্যা; চার অ্যাকশন; বুলিয়ান ফলাফল = মিথ্যা; অকার্যকর সেটআপ () {Serial.begin (9600); // tft.reset () ডিবাগ করার জন্য সিরিয়াল মনিটর ব্যবহার করুন; // সর্বদা tft.begin (0x9341) শুরুতে রিসেট করুন; // আমার LCD LIL9341 ইন্টারফেস ড্রাইভার IC tft.setRotation (2) ব্যবহার করে; // আমি শুধু ঘোরালাম যাতে পাওয়ার জ্যাক মুখোমুখি হয় - alচ্ছিক tft.fillScreen (সাদা); ইন্ট্রোস্ক্রিন (); draw_BoxNButtons (); } অকার্যকর লুপ () {TSPoint p = waitTouch (); X = p.y; Y = p.x; // Serial.print (X); সিরিয়াল.প্রিন্ট (','); Serial.println (Y); // + "" + Y); DetectButtons (); if (result == true) CalculateResult (); DisplayResult (); বিলম্ব (300);} TSPoint waitTouch () {TSPoint p; করুন {p = ts.getPoint (); পিনমোড (এক্সএম, আউটপুট); পিনমোড (ওয়াইপি, আউটপুট); } যখন ((p.z MAXPRESSURE)); p.x = মানচিত্র (p.x, TS_MINX, TS_MAXX, 0, 320); p.y = মানচিত্র (p.y, TS_MINY, TS_MAXY, 0, 240);; return p;} void DetectButtons () {if (X0) // কলাম 1 এ বোতাম শনাক্ত করা {যদি (Y> 0 && Y <85) // যদি বাতিল বোতাম টিপানো হয় {Serial.println ("Button Cancel"); সংখ্যা = সংখ্যা 1 = সংখ্যা 2 = 0; result = false;} if (Y> 85 && Y <140) // যদি বাটন 1 টি টিপানো হয় {Serial.println ("Button 1"); যদি (সংখ্যা == 0) সংখ্যা = 1; অন্য সংখ্যা = (সংখ্যা*10) + 1; // দুবার চাপানো হয়} যদি (Y> 140 && Y <192) // যদি বোতাম 4 টি চাপানো হয় {Serial.println ("Button 4"); যদি (সংখ্যা == 0) সংখ্যা = 4; অন্য সংখ্যা = (সংখ্যা*10) + 4; // দুবার চাপানো হয়} যদি (Y> 192 && Y <245) // যদি বোতাম 7 টি টিপানো হয় {Serial.println ("Button 7"); যদি (সংখ্যা == 0) সংখ্যা = 7; অন্য সংখ্যা = (সংখ্যা*10) + 7; // দুবার চাপানো}} if (X50) // কলাম 2 এ বোতাম সনাক্তকরণ {if (Y> 0 && Y <85) {Serial.println ("Button 0"); // বোতাম 0 চাপানো হয় যদি (সংখ্যা == 0) সংখ্যা = 0; অন্য সংখ্যা = (সংখ্যা*10) + 0; // দুবার চাপে} যদি (Y> 85 && Y <140) {Serial.println ("Button 2"); যদি (সংখ্যা == 0) সংখ্যা = 2; অন্য সংখ্যা = (সংখ্যা*10) + 2; // দুবার চাপে} যদি (Y> 140 && Y <192) {Serial.println ("Button 5"); যদি (সংখ্যা == 0) সংখ্যা = 5; অন্য সংখ্যা = (সংখ্যা*10) + 5; // চাপা twic} যদি (Y> 192 && Y <245) {Serial.println ("Button 8"); যদি (সংখ্যা == 0) সংখ্যা = 8; অন্য সংখ্যা = (সংখ্যা*10) + 8; // চাপানো twic}} if (X105) // কলাম 3 এ বোতাম সনাক্তকরণ {if (Y> 0 && Y <85) {Serial.println ("Button Equal"); সংখ্যা 2 = সংখ্যা; ফলাফল = সত্য; } যদি (Y> 85 && Y <140) {Serial.println ("Button 3"); যদি (সংখ্যা == 0) সংখ্যা = 3; অন্য সংখ্যা = (সংখ্যা*10) + 3; // দুবার চাপে} যদি (Y> 140 && Y <192) {Serial.println ("Button 6"); যদি (সংখ্যা == 0) সংখ্যা = 6; অন্য সংখ্যা = (সংখ্যা*10) + 6; // দুবার চাপে} যদি (Y> 192 && Y <245) {Serial.println ("Button 9"); যদি (সংখ্যা == 0) সংখ্যা = 9; অন্য সংখ্যা = (সংখ্যা*10) + 9; // দুবার চাপানো}} যদি (X165) // কলাম 3 এ বোতাম শনাক্ত করা {Num1 = সংখ্যা; সংখ্যা = 0; tft.setCursor (200, 20); tft.setTextColor (RED); যদি (Y> 0 && Y <85) {Serial.println ("সংযোজন"); কর্ম = 1; tft.println ('+');} যদি (Y> 85 && Y <140) {Serial.println ("বিয়োগ"); কর্ম = 2; tft.println ('-');} যদি (Y> 140 && Y <192) {Serial.println ("Multiplication"); কর্ম = 3; tft.println ('*');} যদি (Y> 192 && Y <245) {Serial.println ("Devesion"); কর্ম = 4; tft.println ('/');} বিলম্ব (300); }} অকার্যকর CalculateResult () {if (action == 1) Number = Num1+Num2; যদি (ক্রিয়া == 2) সংখ্যা = সংখ্যা 1-সংখ্যা 2; যদি (ক্রিয়া == 3) সংখ্যা = সংখ্যা 1*সংখ্যা 2; যদি (ক্রিয়া == 4) সংখ্যা = সংখ্যা 1/সংখ্যা 2; } অকার্যকর DisplayResult () {tft.fillRect (0, 0, 240, 80, CYAN); // পরিষ্কার ফলাফলের বাক্স tft.setCursor (10, 20); tft.setTextSize (4); tft.setTextColor (কালো); tft.println (সংখ্যা); // নতুন মান আপডেট করুন} অকার্যকর ইন্ট্রোস্ক্রিন () {tft.setCursor (55, 120); tft.setTextSize (3); tft.setTextColor (RED); tft.println ("ARDUINO"); tft.setCursor (30, 160); tft.println ("ক্যালকুলেটর"); tft.setCursor (30, 220); tft.setTextSize (2); tft.setTextColor (নীল); tft.println ("-সার্কিট ডাইজেস্ট"); বিলম্ব (1800);} অকার্যকর draw_BoxNButtons () {// ফলাফল বাক্স আঁকুন tft.fillRect (0, 0, 240, 80, CYAN); // প্রথম কলাম আঁকুন tft.fillRect (0, 260, 60, 60, RED); tft.fillRect (0, 200, 60, 60, কালো); tft.fillRect (0, 140, 60, 60, কালো); tft.fillRect (0, 80, 60, 60, কালো); // তৃতীয় কলাম আঁকুন tft.fillRect (120, 260, 60, 60, GREEN); tft.fillRect (120, 200, 60, 60, কালো); tft.fillRect (120, 140, 60, 60, কালো); tft.fillRect (120, 80, 60, 60, কালো); // (int b = 260; b> = 80; b- = 60) {tft.fillRect (180, b, 60, 60, BLUE) এর জন্য গোপন এবং চতুর্থ কলাম আঁকুন; tft.fillRect (60, b, 60, 60, BLACK);} // (int h = 80; h <= 320; h+= 60) tft.drawFastHLine (0, h, 240, WHITE) এর জন্য অনুভূমিক রেখা আঁকুন; // (int v = 0; v <= 240; v+= 60) tft.drawFastVLine (v, 80, 240, WHITE) এর জন্য উল্লম্ব রেখা আঁকুন; // (int j = 0; j <4; j ++) {জন্য (int i = 0; i <4; i ++) {tft.setCursor (22+(60*i), 100+(60* j)); tft.setTextSize (3); tft.setTextColor (সাদা); tft.println (প্রতীক [j] ); }}} কোডটি আপলোড করার পর আপনি আপনার ডিসপ্লেতে আমার মত ক্যালকুলেটর দেখতে পাবেন এবং এখন আপনি এই বিষয়ে গণিতের মৌলিক হিসাব করতে পারবেন। তাই আরডুইনো ইউএনও দিয়ে আপনার নিজের ক্যালকুলেটর তৈরি করে মজা করুন।
প্রস্তাবিত:
Arduino টাচস্ক্রিন ক্যালকুলেটর: 7 টি ধাপ
Arduino টাচস্ক্রিন ক্যালকুলেটর: হ্যালো! এটি একটি Arduino Uno এবং TFT LCD ieldাল ব্যবহার করে একটি টাচস্ক্রিন ক্যালকুলেটর তৈরির একটি প্রকল্প। আমি আমার হোমস্কুল প্রোগ্রামিং ক্লাসের জন্য ধারণা নিয়ে এসেছিলাম, এবং এই প্রকল্পটি নির্মাণের অভিজ্ঞতা ছিল খুবই আকর্ষণীয়। এই ক্যালকুলেটরটি প্রায়
Arduino Flappy বার্ড - Arduino 2.4 "TFT টাচস্ক্রিন SPFD5408 বার্ড গেম প্রকল্প: 3 টি ধাপ
Arduino Flappy বার্ড | আরডুইনো 2.4 "টিএফটি টাচস্ক্রিন এসপিএফডি 5408 বার্ড গেম প্রকল্প: ফ্ল্যাপি বার্ড কয়েক বছর আগেও সেখানে খুব জনপ্রিয় খেলা ছিল এবং অনেক লোক এটিকে তাদের নিজস্ব উপায়ে তৈরি করেছিল তাই আমিও করেছি, আমি আরডুইনো এবং সস্তা 2.4 " টিএফটি দিয়ে ফ্ল্যাপি পাখির আমার সংস্করণ তৈরি করেছি টাচস্ক্রিন SPFD5408, তাহলে শুরু করা যাক
BluBerriSix - একটি TFT টাচস্ক্রিন / Arduino টিউটোরিয়াল: 12 টি ধাপ (ছবি সহ)
BluBerriSix - একটি TFT TouchScreen / Arduino Tutorial: 2019 হল 20 তম বার্ষিকী RIM Blackberry 850! কানাডার এই ছোট্ট আবিষ্কার বিশ্বের যোগাযোগের ধরন বদলে দিয়েছে। এটা অনেক আগেই চলে গেছে, কিন্তু এর উত্তরাধিকার অব্যাহত আছে! টিএফটি ডিস
Arduino TFT টাচস্ক্রিন ডোর লক: 5 টি ধাপ
Arduino TFT টাচস্ক্রিন ডোর লক: এটি আমার প্রথম নির্দেশযোগ্য। এই প্রকল্পটি Arduino এবং একটি 2.8 " একটি রিলে সক্রিয় করতে একটি পাসওয়ার্ড স্কেচ সহ টিএফটি টাচস্ক্রিন যা একটি ম্যাগ লক দরজায় সার্কিট ভেঙ্গে দেয়।
Arduino Uno: ILI9341 TFT টাচস্ক্রিন ডিসপ্লে শিল্ডে ভিসুইনো সহ বিটম্যাপ অ্যানিমেশন: 12 টি ধাপ (ছবি সহ)
Arduino Uno: ILI9341 TFT টাচস্ক্রিন ডিসপ্লে শিল্ডে Vismaino এর সাথে বিটম্যাপ অ্যানিমেশন: ILI9341 ভিত্তিক TFT টাচস্ক্রিন ডিসপ্লে শিল্ডগুলি Arduino এর জন্য খুব কম খরচে ডিসপ্লে শিল্ড। ভিসুইনো বেশ কিছুদিন ধরে তাদের জন্য সমর্থন পেয়েছে, কিন্তু সেগুলি কীভাবে ব্যবহার করতে হয় সে সম্পর্কে আমি কখনই টিউটোরিয়াল লেখার সুযোগ পাইনি। সম্প্রতি যদিও খুব কম লোকই প্রশ্ন করেছিল