ক্লাউডএক্স সহ সহজ এবং স্ট্যান্ডার্ড ক্যালকুলেটর: 5 টি ধাপ
ক্লাউডএক্স সহ সহজ এবং স্ট্যান্ডার্ড ক্যালকুলেটর: 5 টি ধাপ
Anonim
ক্লাউডএক্সের সাথে সহজ এবং স্ট্যান্ডার্ড ক্যালকুলেটর
ক্লাউডএক্সের সাথে সহজ এবং স্ট্যান্ডার্ড ক্যালকুলেটর

এই টিউটোরিয়ালে, আমরা ক্লাউডএক্স দিয়ে কিভাবে একটি সহজ এবং স্ট্যান্ডার্ড ক্যালকুলেটর তৈরি করতে হয় তা শিখব, দয়া করে ক্লিক করুন যদি আপনি ক্লাউডএক্সের সাথে ইন্টারফেসিং কীপ্যাডে আগে কিছু না পড়ে থাকেন, এখানে, আমাদের লক্ষ্য হল কিভাবে আপনি আপনার ডেভেলপ করতে পারেন তা শেখানো। ক্লাউডএক্স M633 ব্যবহার করে নিজস্ব হার্ডওয়্যার ক্যালকুলেটর।

আমাদের লক্ষ্য হল একটি ক্যালকুলেটর ডিজাইন করতে সক্ষম হওয়া যা যোগ (+), বিয়োগ (-), গুণ (*) এবং বিভাগ (/) করতে পারে যার ফলাফল দশমিকের মধ্যে কম 0.0000001 এবং সম্পূর্ণ সংখ্যায় 90000000 পর্যন্ত। গণিতের ত্রুটি ইত্যাদি শনাক্ত করার ক্ষমতা আছে।

ধাপ 1: হার্ডওয়্যার প্রয়োজনীয়তা

হার্ডওয়্যার প্রয়োজনীয়তা
হার্ডওয়্যার প্রয়োজনীয়তা
হার্ডওয়্যার প্রয়োজনীয়তা
হার্ডওয়্যার প্রয়োজনীয়তা

1x ক্লাউডএক্স মাইক্রোকন্ট্রোলার

1x ক্লাউডএক্স সফটকার্ড

1x ইউএসবি কেবল

1x 4x4 ম্যাট্রিক্স কীপ্যাড

1x 16x2 LCD জাম্পার ওয়্যার

1x 1kΩ প্রতিরোধক

4x 10kΩ প্রতিরোধক

ধাপ 2: পিন সংযোগ

পিন সংযোগ
পিন সংযোগ
পিন সংযোগ
পিন সংযোগ
পিন সংযোগ
পিন সংযোগ

এলসিডি সহ ক্লাউডএক্স সংযোগ পিন এবং কীপ্যাডের সাথে ক্লাউডএক্স সংযোগ পিন

ধাপ 3: সার্কিট ডায়াগ্রাম

বর্তনী চিত্র
বর্তনী চিত্র

ধাপ 4: সফটওয়্যার

/ * * ফাইল: স্মার্ট কীপ্যাড লক System.c

* লেখক: হুডি

*

* 20 মার্চ, 2018, সকাল 11:21 এ তৈরি

*/

#অন্তর্ভুক্ত

#অন্তর্ভুক্ত

#অন্তর্ভুক্ত

#অন্তর্ভুক্ত

#সংজ্ঞায়িত করুন NumberOfRows 4 // চারটি সারিতে ডিসপ্লে সেট করুন

#Define NumberOfColumns 4 // সেট প্রদর্শন তিনটি কলামে

char KeypadCharacters [NumberOfRows] [NumberOfColumns] = {

'1', '2', '3', '+', '4', '5', '6', '-', '7', '8', '9', '*', 'সি', '0', '=', '/'

};

char RowPins [NumberOfRows] = {7, 8, 9, 10};

char ColumnsPins [NumberOfColumns] = {11, 12, 13, 14};

char কী, a = 0, check = 0, operation = 0, signa = 0, signb = 0;

স্বাক্ষরিত ভাসা উত্তর;

char * Panswer;

চর Aanswer [10];

স্বাক্ষরিত দীর্ঘ ইনপুটা;

চর আইনপুতা [১০];

স্বাক্ষরিত দীর্ঘ ইনপুটবি;

চর Ainputb [10];

সেটআপ () {

কীপ্যাডসেটিং (পুলডাউনকোল, রোপিনস, কলামপিনস, নম্বরঅফরো, নম্বরঅফকলমস, কীপ্যাড অক্ষর);

lcdSetting (1, 2, 3, 4, 5, 6);

lcdCmd (lcd_clear);

lcdCmd (cursor_off);

lcdWriteText (1, 1, "সঙ্গে ক্যালকুলেটর");

lcdWriteText (2, 1, "CLOUDX");

বিলম্ব (2000);

lcdCmd (lcd_clear);

lcdCmd (cursor_blink);

লুপ(){

কী = getKey ();

যদি (কী! = 0 && কী == 'সি') {

lcdCmd (lcd_clear);

lcdCmd (cursor_blink);

জন্য (a = 0; a <10; a ++) {

আইনপুতা [a] = 0;

Ainputb [a] = 0;

Aanswer [a] = 0;

}

a = 0;

অপারেশন = 0;

চেক = 0;

signa = 0;

signb = 0;

}

যদি (চেক == 1 && কী! = 0 && কী == '=') {

lcdCmd (cursor_off);

ইনপুটা = অটোই (আইনপুতা);

inputb = atoi (Ainputb);

যদি (signa == '-') {

ইনপুটা = -(ইনপুটা);

}

যদি (signb == '-') {

ইনপুটবি = -(ইনপুটবি);

}

যদি (অপারেশন == '+') {

উত্তর = ইনপুট + ইনপুটবি;

longTostr (Aanswer, উত্তর, DEC);

}

যদি (অপারেশন == '-') {

উত্তর = ইনপুট - ইনপুটবি;

longTostr (Aanswer, উত্তর, DEC);

}

যদি (অপারেশন == '*') {

উত্তর = ইনপুট * ইনপুটবি;

longTostr (Aanswer, উত্তর, DEC);

}

যদি (অপারেশন == '/') {

উত্তর = (float) inputa / (float) inputb;

Panswer = floatTostr (উত্তর);

যদি (ইনপুটা> ইনপুটবি) {

প্যানসওয়ার [5] = 0;

}

}

যদি (অপারেশন == '/') {

lcdWriteText (2, 1, "ANS:");

lcdWriteTextCP (Panswer);

}

অন্য {

lcdWriteText (2, 1, "ANS:");

lcdWriteTextCP (Aanswer);

}

}

যদি (কী! = 0 && (কী == '+' || কী == '-' || কী == '*' || কী == '/')) {

if (operation! = 0 && a == 0 && signb == 0 && (কী == '-' || কী == '+')) {

lcdWriteCP (কী);

যদি (কী == '-' || কী == '+') {

signb = কী;

}

}

যদি (অপারেশন == 0 && a == 0 && signa == 0 && (কী == '-' || কী == '+')) {

lcdWriteCP (কী);

যদি (কী == '-' || কী == '+') {

signa = কী;

}

}

যদি (অপারেশন == 0 && এ! = 0) {

lcdWriteCP (কী);

অপারেশন = কী;

a = 0;

}

}

যদি (কী! = 0 && (কী == '0' || কী == '1' = '5' || কী == '6' || কী == '7' || কী == '8' || কী == '9')) {

যদি (অপারেশন! = 0) {

lcdWriteCP (কী);

Ainputb [a] = কী;

একটি ++;

চেক = 1;

}

যদি (অপারেশন == 0) {

lcdWriteCP (কী);

আইনপুতা [a] = কী;

একটি ++;

}

}

}

}

প্রস্তাবিত: