Isi kandungan:

Kalkulator Ringkas dan Piawai Dengan CloudX: 5 Langkah
Kalkulator Ringkas dan Piawai Dengan CloudX: 5 Langkah

Video: Kalkulator Ringkas dan Piawai Dengan CloudX: 5 Langkah

Video: Kalkulator Ringkas dan Piawai Dengan CloudX: 5 Langkah
Video: SULTAN MEDAN INDRAKENZ NAIK JET PRIBADI KE PULAU PRIBADI!! 2024, November
Anonim
Kalkulator Ringkas dan Piawai Dengan CloudX
Kalkulator Ringkas dan Piawai Dengan CloudX

Dalam tutorial ini, kita akan belajar bagaimana membuat kalkulator ringkas dan standard dengan CloudX, Klik Jika anda belum pernah membaca apa-apa mengenai Pad muka dengan CloudX sebelumnya, Di sini, Sasaran kami adalah untuk mengajar anda bagaimana anda dapat mengembangkan kalkulator perkakasan sendiri menggunakan cloudX M633.

Tujuan kami adalah untuk dapat merancang kalkulator yang dapat melakukan Penambahan (+), Penolakan (-), Pendaraban (*) dan Pembahagian (/) dengan Hasil dalam perpuluhan serendah 0.0000001 dan dalam jumlah keseluruhan hingga 90000000. Kalkulator mempunyai keupayaan untuk mengesan kesalahan matematik dan lain-lain. Setiap kanak-kanak, pelajar dan penggemar harus dapat melakukan projek hebat ini.

Langkah 1: KEPERLUAN PERKAKASAN

KEPERLUAN PERKAKASAN
KEPERLUAN PERKAKASAN
KEPERLUAN PERKAKASAN
KEPERLUAN PERKAKASAN

1x Mikrokontroler CloudX

1x CloudX SoftCard

Kabel USB 1x

Pad Kekunci 1x 4x4

Wayar Pelompat LCD 1x 16x2

Perintang 1x 1kΩ

Perintang 4x 10kΩ

Langkah 2: Sambungan PIN

Sambungan PIN
Sambungan PIN
Sambungan PIN
Sambungan PIN
Sambungan PIN
Sambungan PIN

Pin Sambungan CloudX dengan LCD dan pin Sambungan CloudX dengan Pad Kekunci

Langkah 3: DIAGRAM PEKELILING

RAJAH PEKELILING
RAJAH PEKELILING

Langkah 4: PERISIAN

/ * * Fail: Sistem Kunci KeyPad Pintar.c

* Pengarang: hoodie

*

* Dicipta pada 20 Mac 2018, 11:21 PG

*/

#sertakan

#sertakan

#sertakan

#sertakan

#define NumberOfRows 4 // tetapkan paparan kepada empat baris

#define NumberOfColumns 4 // tetapkan paparan kepada tiga lajur

char KeypadCharacters [NumberOfRows] [NumberOfColumns] = {

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

};

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

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

char Keys, a = 0, check = 0, operasi = 0, signa = 0, signb = 0;

jawapan terapung yang ditandatangani;

char * Panswer;

char Aanswer [10];

menandatangani inputa panjang;

char Ainputa [10];

inputb panjang ditandatangani;

char Ainputb [10];

persediaan () {

KeypadSetting (PULLDOWNCOL, RowPins, ColumnsPins, NumberOfRows, NumberOfColumns, KeypadCharacters);

Pengaturan lcd (1, 2, 3, 4, 5, 6);

lcdCmd (lcd_clear);

lcdCmd (kursor_off);

lcdWriteText (1, 1, "KALKULATOR DENGAN");

lcdWriteText (2, 1, "CLOUDX");

kelewatanMs (2000);

lcdCmd (lcd_clear);

lcdCmd (kursor_blink);

gelung () {

Kekunci = getKey ();

jika (Kekunci! = 0 && Kekunci == 'C') {

lcdCmd (lcd_clear);

lcdCmd (kursor_blink);

untuk (a = 0; a <10; a ++) {

Ainputa [a] = 0;

Ainputb [a] = 0;

Aanswer [a] = 0;

}

a = 0;

operasi = 0;

semak = 0;

signa = 0;

signb = 0;

}

jika (tandakan == 1 && Kunci! = 0 && Kunci == '=') {

lcdCmd (kursor_off);

inputa = atoi (Ainputa);

inputb = atoi (Ainputb);

jika (signa == '-') {

inputa = - (inputa);

}

jika (signb == '-') {

inputb = - (inputb);

}

jika (operasi == '+') {

jawapan = inputa + inputb;

longTostr (Aanswer, jawapan, DEC);

}

jika (operasi == '-') {

jawapan = inputa - inputb;

longTostr (Aanswer, jawapan, DEC);

}

jika (operasi == '*') {

jawapan = inputa * inputb;

longTostr (Aanswer, jawapan, DEC);

}

jika (operasi == '/') {

jawapan = (float) inputa / (float) inputb;

Panswer = floatTostr (jawapan);

jika (inputa> inputb) {

Panswer [5] = 0;

}

}

jika (operasi == '/') {

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

lcdWriteTextCP (Panswer);

}

lain {

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

lcdWriteTextCP (Aanswer);

}

}

jika (Kekunci! = 0 && (Kekunci == '+' || Kekunci == '-' || Kekunci == '*' || Kekunci == '/')) {

jika (operasi! = 0 && a == 0 && signb == 0 && (Kunci == '-' || Kekunci == '+')) {

lcdWriteCP (Kekunci);

jika (Kekunci == '-' || Kekunci == '+') {

signb = Kekunci;

}

}

jika (operasi == 0 && a == 0 && signa == 0 && (Kunci == '-' || Kekunci == '+')) {

lcdWriteCP (Kekunci);

jika (Kekunci == '-' || Kekunci == '+') {

signa = Kekunci;

}

}

jika (operasi == 0 && a! = 0) {

lcdWriteCP (Kekunci);

operasi = Kekunci;

a = 0;

}

}

jika (Kekunci! = 0 && (Kekunci == '0' || Kekunci == '1' || Kekunci == '2' || Kekunci == '3' || Kekunci == '4' || Kekunci = = '5' || Kekunci == '6' || Kekunci == '7' || Kekunci == '8' || Kekunci == '9')) {

jika (operasi! = 0) {

lcdWriteCP (Kekunci);

Ainputb [a] = Kekunci;

a ++;

semak = 1;

}

jika (operasi == 0) {

lcdWriteCP (Kekunci);

Ainputa [a] = Kekunci;

a ++;

}

}

}

}

Disyorkan: