সুচিপত্র:
- সরবরাহ
- ধাপ 1: TinkerCad- এ আপনার সরবরাহ সংগ্রহ করুন
- পদক্ষেপ 2: আপনার সরবরাহের ব্যবস্থা করুন
- ধাপ 3: তারের সংযোগ
- ধাপ 4: কোড লেখা
- ধাপ 5: কোড ভাঙা
- ধাপ 6: এই ক্যালকুলেটরের হার্ডওয়্যার কিভাবে কাজ করে?
- ধাপ 7: ক্যালকুলেটরের সম্পূর্ণ পূর্বরূপ
- ধাপ 8: এই কোডের আমার অনুপ্রেরণা
ভিডিও: জয় মিশ্রের এলসিডি ক্যালকুলেটর: 8 টি ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 07:58
Tinkercad প্রকল্প
এটি একটি খুব দরকারী প্রকল্প যা আপনাকে শেখায় কিভাবে আপনার নিজস্ব ক্যালকুলেটর তৈরি করতে হয়। আপনি এই ক্যালকুলেটরটি অনলাইনে বা বাস্তব জীবনে অতিরিক্ত সরবরাহের সাহায্যে তৈরি করতে পারেন তবে আপাতত আমরা কেবল একটি অনলাইন ক্যালকুলেটর তৈরির দিকে মনোনিবেশ করতে যাচ্ছি।
সরবরাহ
- Arduino Uno R3
- 220 Ohms প্রতিরোধক
- 4*4 কীপ্যাড
- 16*2 এলসিডি
- সার্কিট সংযোগ করার জন্য তারের গুচ্ছ
ধাপ 1: TinkerCad- এ আপনার সরবরাহ সংগ্রহ করুন
চাপ এবং ভুল কমাতে পদক্ষেপ 2 দিয়ে শুরু করার আগে নিশ্চিত করুন যে আপনার সমস্ত সরবরাহ উপলব্ধ। সঠিক সরবরাহগুলিও ব্যবহার করতে ভুলবেন না, উপরের এই চিত্রের কিছু উপাদান অন্যান্য উপাদানগুলির মতো, তাই এর মধ্যে মিশ্রিত হবেন না। আপনার নির্দেশিকা হিসাবে উপরের ছবিটি ব্যবহার করুন।
পদক্ষেপ 2: আপনার সরবরাহের ব্যবস্থা করুন
আপনার সরবরাহের ব্যবস্থা করা আপনার ক্যালকুলেটর কেমন হতে পারে তার পূর্বরূপ দেখার সর্বোত্তম উপায়। আপনি যে কোন ধরনের ক্যালকুলেটর ডিজাইন তৈরি করতে পারেন কিন্তু নিশ্চিত করুন যে ক্যালকুলেটরটি প্রাকৃতিক দেখায় এবং ব্যবহারকারীরা ডিজাইন বুঝতে পারে এবং বিভ্রান্ত না হয়। আমি একটি সাধারণ ক্লাসি ক্যালকুলেটর ডিজাইন ব্যবহার করেছি যা প্রত্যেকের দ্বারা কার্যকর এবং বোধগম্য। আপনি হয় আমার নকশা নির্বাচন করতে পারেন অথবা আপনার নিজের তৈরি করতে পারেন, কিন্তু যাই হোক না কেন এটি সৃজনশীল এবং শুভকামনা!
ধাপ 3: তারের সংযোগ
তারের সাথে সংযোগ স্থাপন করা একটি কঠিন কাজ যদি আপনি এর পিছনের অর্থটি না বুঝতে পারেন। এই তারের মধ্যে, আমরা চারটি উপাদানকে একসাথে সংযুক্ত করার চেষ্টা করছি যাতে কোড লেখার সময় হলে তারা একটি গোষ্ঠী হিসাবে কাজ করতে পারে। যদি কোন তারের না থাকে, কোন স্রোত প্রবাহিত হচ্ছে, একটি ব্যর্থ প্রকল্পের দিকে পরিচালিত করে। নিশ্চিত করুন যে আপনার তারগুলি কোনও ভুল বোঝাবুঝি ছাড়াই সঠিকভাবে সংযুক্ত রয়েছে।
আপনি তারের সংযোগ করার পরে, নিশ্চিত করুন যে আপনার তারগুলি ঝরঝরে এবং সুসংগঠিত যাতে আপনার এবং অন্যদের পক্ষে এই ক্যালকুলেটরের হার্ডওয়্যারে ঠিক কী চলছে তা বোঝা সহজ হয়। যেমনটি আমি আগেই বলেছি, আপনি হয় আপনার তারগুলি সংগঠিত করার কৌশল ব্যবহার করতে পারেন অথবা আপনি নিজের তৈরি করতে পারেন, তবে আপনি যা করার সিদ্ধান্ত নিবেন তা নিশ্চিত করুন যে সেগুলি কিছু জায়গা দিয়ে একত্রিত হয়েছে।
ধাপ 4: কোড লেখা
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত #অন্তর্ভুক্ত
লিকুইডক্রিস্টাল এলসিডি (13, 12, 11, 10, 9, 8);
দীর্ঘ প্রথম = 0; দীর্ঘ সেকেন্ড = 0; দ্বিগুণ মোট = 0;
char customKey; const বাইট ROWS = 4; const বাইট COLS = 4;
চার কী [ROWS] [COLS] = {{'1', '4', '7', '/'}, {'2', '5', '8', '+'}, {'3', '6', '9', '-'}, {'C', '0', '=', '*'}}; বাইট rowPins [ROWS] = {7, 6, 5, 4}; // কীপ্যাড বাইট কলপিন্স [COLS] = {3, 2, 1, 0} এর সারি পিনআউটগুলির সাথে সংযুক্ত করুন; // কীপ্যাডের কলাম পিনআউটগুলির সাথে সংযুক্ত করুন
// ক্লাস নিউকেপ্যাড কীপ্যাড কাস্টম কেপ্যাড = কীপ্যাড (মেককাইম্যাপ (কী), রোপিনস, কোলপিন্স, রোজ, কোলস) এর একটি উদাহরণ আরম্ভ করুন;
অকার্যকর সেটআপ () {lcd.begin (16, 2); // শুরু lcd এর জন্য (int i = 0; i <= 3; i ++); lcd.setCursor (0, 0); lcd.print ("ক্যালকুলেটর"); lcd.setCursor (0, 1); lcd.print ("জয় মিশ্র দ্বারা"); বিলম্ব (4000); lcd.clear (); lcd.print ("চূড়ান্ত প্রকল্প"); বিলম্ব (2500); lcd.clear (); lcd.setCursor (0, 0); }
অকার্যকর লুপ () {
customKey = customKeypad.getKey (); সুইচ করুন প্রথম = প্রথম * 10 + (customKey - '0'); lcd.print (প্রথম); বিরতি;
কেস '+': প্রথম = (মোট! = 0? মোট: প্রথম); lcd.setCursor (0, 1); lcd.print ("+"); সেকেন্ড = সেকেন্ড নম্বর (); // সংগ্রহ করা দ্বিতীয় সংখ্যা মোট = প্রথম + সেকেন্ড; lcd.setCursor (0, 3); lcd.print (মোট); প্রথম = 0, দ্বিতীয় = 0; // পরবর্তী ব্যবহারের বিরতির জন্য মানগুলি শূন্যে ফিরিয়ে দিন;
কেস '-': প্রথম = (মোট! = 0? মোট: প্রথম); lcd.setCursor (0, 1); lcd.print ("-"); সেকেন্ড = সেকেন্ড নম্বর (); মোট = প্রথম - দ্বিতীয়; lcd.setCursor (0, 3); lcd.print (মোট); প্রথম = 0, দ্বিতীয় = 0; বিরতি;
কেস '*': প্রথম = (মোট! = 0? মোট: প্রথম); lcd.setCursor (0, 1); lcd.print ("*"); সেকেন্ড = সেকেন্ড নম্বর (); মোট = প্রথম * সেকেন্ড; lcd.setCursor (0, 3); lcd.print (মোট); প্রথম = 0, দ্বিতীয় = 0; বিরতি;
কেস '/': প্রথম = (মোট! = 0? মোট: প্রথম); lcd.setCursor (0, 1); lcd.print ("/"); সেকেন্ড = সেকেন্ড নম্বর (); lcd.setCursor (0, 3);
দ্বিতীয় == 0? lcd.print ("অবৈধ"): মোট = (float) প্রথম / (float) সেকেন্ড;
lcd.print (মোট); প্রথম = 0, দ্বিতীয় = 0; বিরতি;
কেস 'সি': মোট = 0; lcd.clear (); বিরতি; }}
long SecondNumber () {while (1) {customKey = customKeypad.getKey (); যদি (customKey> = '0' && customKey <= '9') {second = second * 10 + (customKey - '0'); lcd.setCursor (0, 2); lcd.print (দ্বিতীয়); }
যদি (customKey == '=') বিরতি; // দ্বিতীয় রিটার্ন; } দ্বিতীয় ফিরে; }
ধাপ 5: কোড ভাঙা
আমরা কম্পিউটারের বোঝার জন্য মানগুলি শুরু করেছি
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত #অন্তর্ভুক্ত
লিকুইডক্রিস্টাল এলসিডি (13, 12, 11, 10, 9, 8);
দীর্ঘ প্রথম = 0; দীর্ঘ সেকেন্ড = 0; দ্বিগুণ মোট = 0;
char customKey; const বাইট ROWS = 4; const বাইট COLS = 4;
আমরা কম্পিউটারকে সেই নম্বর এবং লক্ষণগুলো বলে দিয়েছি যার কীপ্যাডে কাজ করা উচিত।
char কী [ROWS] [COLS] = {{'1', '2', '3', '/'}, {'4', '5', '6', '+'}, {'7', '8', '9', '-'}, {'C', '0', '=', '*'}};
আমরা কীপ্যাডের সারি এবং কলাম চূড়ান্ত করেছি এবং কোন নম্বরটি কোন কলামে আসে ইত্যাদি।
বাইট rowPins [ROWS] = {7, 6, 5, 4}; বাইট কলপিনস [COLS] = {3, 2, 1, 0};
আমরা কম্পিউটারের জন্য ইন্ট্রো বা পাওয়ার অন স্ক্রিন তৈরি করেছি (আপনি এতে আপনার নিজের নাম লিখতে পারেন)।
অকার্যকর সেটআপ () {lcd.begin (16, 2); জন্য (int i = 0; i <= 3; i ++); lcd.setCursor (0, 0); lcd.print ("ক্যালকুলেটর"); lcd.setCursor (0, 1); lcd.print ("জয় মিশ্র দ্বারা"); বিলম্ব (4000); lcd.clear (); lcd.print ("চূড়ান্ত প্রকল্প"); বিলম্ব (2500); lcd.clear (); lcd.setCursor (0, 0); }
আমরা ক্যালকুলেটরে প্রতিটি ক্রিয়াকলাপের অর্থ এবং সূত্র তৈরি করি যাতে কম্পিউটার বুঝতে পারে যে ব্যবহারকারী যখন ক্যালকুলেটরে "+" চাপবে তখন কোন সূত্রটি ব্যবহার করতে হবে।
{case '0'… '9': lcd.setCursor (0, 0); প্রথম = প্রথম * 10 + (customKey - '0'); lcd.print (প্রথম); বিরতি;
কেস '/': প্রথম = (মোট! = 0? মোট: প্রথম); lcd.setCursor (0, 1); lcd.print ("/"); সেকেন্ড = সেকেন্ড নম্বর (); lcd.setCursor (0, 3);
দ্বিতীয় == 0? lcd.print ("অবৈধ"): মোট = (float) প্রথম / (float) সেকেন্ড;
lcd.print (মোট); প্রথম = 0, দ্বিতীয় = 0; বিরতি; কেস '+': প্রথম = (মোট! = 0? মোট: প্রথম); lcd.setCursor (0, 1); lcd.print ("+"); সেকেন্ড = সেকেন্ড নম্বর (); lcd.setCursor (0, 3); lcd.print (মোট); প্রথম = 0, দ্বিতীয় = 0; বিরতি;
কেস '-': প্রথম = (মোট! = 0? মোট: প্রথম); lcd.setCursor (0, 1); lcd.print ("-"); সেকেন্ড = সেকেন্ড নম্বর (); মোট = প্রথম - দ্বিতীয়; lcd.setCursor (0, 3); lcd.print (মোট); প্রথম = 0, দ্বিতীয় = 0; বিরতি;
কেস '*': প্রথম = (মোট! = 0? মোট: প্রথম); lcd.setCursor (0, 1); lcd.print ("*"); সেকেন্ড = সেকেন্ড নম্বর (); মোট = প্রথম * সেকেন্ড; lcd.setCursor (0, 3); lcd.print (মোট); প্রথম = 0, দ্বিতীয় = 0; বিরতি;
কেস 'সি': মোট = 0; lcd.clear (); বিরতি; }}
কোডটি খুব সহজ, আপনাকে যা করতে হবে তা বোঝার চেষ্টা করুন এবং তারপর সবকিছু সহজেই করা যাবে। কোডে কোন সমস্যা হলে আমাকে ইমেইল করুন।
ধাপ 6: এই ক্যালকুলেটরের হার্ডওয়্যার কিভাবে কাজ করে?
এই ক্যালকুলেটর ব্যবহার করে, একটি LCD, একটি কীপ্যাড, একটি Arduino বোর্ড এবং একটি 220 ohms প্রতিরোধক। এই সমস্ত উপাদান পৃথক কিন্তু Arduino থেকে কীপ্যাড এবং LCD পর্যন্ত তারের সাথে সংযুক্ত। এলসিডির বিভিন্ন বিভাগগুলি আরডুইনো বোর্ডের সাথে সংযুক্ত যা শেষ পর্যন্ত তাদের উভয়কেই কীপ্যাডের সাথে সংযুক্ত করে। সংযোগের পরে, কোডিং সমস্ত কাজ করে এবং কীপ্যাডের প্রতিটি অপারেশন এবং বোতাম অনুসরণ করার জন্য একটি কাজ দেয়।
ধাপ 7: ক্যালকুলেটরের সম্পূর্ণ পূর্বরূপ
এই আমাদের চূড়ান্ত প্রকল্প মত দেখায়! যদি আপনার কোড কাজ না করে, অথবা কিছু প্রযুক্তিগত সমস্যা হয় তাহলে দয়া করে আমাকে ইমেল করুন এবং আমি আপনাকে সেরা ক্যালকুলেটর তৈরিতে সাহায্য করার জন্য যথাসাধ্য চেষ্টা করব!
ধাপ 8: এই কোডের আমার অনুপ্রেরণা
টিঙ্কারক্যাডে কীভাবে ক্যালকুলেটর তৈরি করা যায় সে সম্পর্কে আমি উপরের ভিডিও থেকে অনুপ্রাণিত হয়েছি! আমি কিছু কপি এবং পেস্ট করিনি কিন্তু আমি ক্যালকুলেটর সম্পর্কে তার ধারণা এবং কোড বোঝার ব্যবহার করেছি।
প্রস্তাবিত:
[জয়] CMD এ ADB কমান্ড কিভাবে ইনস্টল করবেন (ব্যবহারের জন্য প্রস্তুত): 6 টি ধাপ
[জয়] CMD এ ADB কমান্ড কিভাবে ইনস্টল করবেন (ব্যবহারের জন্য প্রস্তুত): পরবর্তী ধাপে এগিয়ে যান
এলসিডি আক্রমণকারী: 16x2 এলসিডি ক্যারেক্টার ডিসপ্লেতে একটি স্পেস ইনভেডার্স গেমের মতো: 7 টি ধাপ
এলসিডি ইনভেডার্স: 16x2 এলসিডি ক্যারেক্টার ডিসপ্লেতে একটি স্পেস ইনভেডার্স গেমের মতো: একটি কিংবদন্তী "স্পেস ইনভেডার্স" গেম চালু করার দরকার নেই। এই প্রকল্পের সবচেয়ে আকর্ষণীয় বৈশিষ্ট্য হল এটি গ্রাফিক্যাল আউটপুটের জন্য পাঠ্য প্রদর্শন ব্যবহার করে। এটি 8 টি কাস্টম অক্ষর প্রয়োগ করে অর্জন করা হয়। আপনি সম্পূর্ণ Arduino ডাউনলোড করতে পারেন
জয় রোবট (Robô Da Alegria) - ওপেন সোর্স 3D মুদ্রিত, Arduino চালিত রোবট !: 18 ধাপ (ছবি সহ)
জয় রোবট (Robô Da Alegria) - ওপেন সোর্স 3D মুদ্রিত, Arduino চালিত রোবট!: Instructables Wheels প্রতিযোগিতায় প্রথম পুরস্কার, Instructables Arduino প্রতিযোগিতায় দ্বিতীয় পুরস্কার, এবং ডিজাইন ফর কিডস চ্যালেঞ্জে রানার আপ। যারা আমাদের ভোট দিয়েছেন তাদের সবাইকে ধন্যবাদ !!! রোবট সর্বত্র পাওয়া যাচ্ছে। শিল্প অ্যাপ্লিকেশন থেকে শুরু করে আপনার কাছে
এলসিডি স্টুডিওতে একটি কাস্টম ডিসপ্লে তৈরি করুন (জি 15 কীবোর্ড এবং এলসিডি স্ক্রিনের জন্য)।: 7 টি ধাপ
এলসিডি স্টুডিওতে একটি কাস্টম ডিসপ্লে তৈরি করুন (জি 15 কীবোর্ড এবং এলসিডি স্ক্রিনগুলির জন্য): ঠিক আছে যদি আপনি কেবল আপনার জি 15 কীবোর্ড পেয়ে থাকেন এবং এটির সাথে আসা মৌলিক ডিসপ্লেগুলি নিয়ে অত্যন্ত অসন্তুষ্ট হন তবে আমি আপনাকে এলসিডি স্টুডিও ব্যবহারের মূল বিষয়গুলি নিয়ে যাব। আপনার নিজের তৈরি করতে এই উদাহরণটি এমন একটি ডিসপ্লে তৈরি করবে যা শুধুমাত্র বেস দেখায়
এলসিডি স্মার্টির সাথে নেটওয়ার্কযুক্ত এলসিডি ব্যাকপ্যাক: 6 টি ধাপ
এলসিডি স্মার্টির সাথে নেটওয়ার্কযুক্ত এলসিডি ব্যাকপ্যাক: অক্ষর এলসিডি স্ক্রিন যা তথ্য স্ক্রোল করে একটি জনপ্রিয় কেস মোড। এগুলি সাধারণত একটি সমান্তরাল পোর্ট, সিরিয়াল পোর্ট ব্যাকপ্যাক বা ইউএসবি ব্যাকপ্যাক (আরও) এর মাধ্যমে নিয়ন্ত্রিত হয়। এই নির্দেশযোগ্য আমাদের ওপেন সোর্স ইথারনেট নেটওয়ার্ক LCD ব্যাকপ্যাক প্রদর্শন করে। এলসি