Daftar Isi:

Kalkulator Sederhana dan Standar Dengan CloudX: 5 Langkah
Kalkulator Sederhana dan Standar Dengan CloudX: 5 Langkah

Video: Kalkulator Sederhana dan Standar Dengan CloudX: 5 Langkah

Video: Kalkulator Sederhana dan Standar Dengan CloudX: 5 Langkah
Video: Kalkulator Sederhana 2024, November
Anonim
Kalkulator Sederhana dan Standar Dengan CloudX
Kalkulator Sederhana dan Standar Dengan CloudX

Dalam tutorial ini, kita akan belajar tentang cara membuat kalkulator sederhana dan standar dengan CloudX, Silakan klik Jika Anda belum pernah membaca apa pun tentang Menghubungkan keypad dengan CloudX sebelumnya, Di Sini, Target kami adalah mengajari Anda cara mengembangkan kalkulator perangkat keras sendiri menggunakan cloudX M633.

Tujuan kami adalah untuk dapat merancang sebuah kalkulator yang dapat melakukan Penjumlahan (+), Pengurangan (-), Perkalian (*) dan Pembagian (/) dengan Hasil dalam desimal serendah 0,0000001 dan dalam bilangan bulat hingga 90000000. Kalkulator memiliki kemampuan untuk mendeteksi kesalahan matematika, dll. Setiap anak, siswa, dan penghobi harus dapat melakukan proyek fantastis ini.

Langkah 1: PERSYARATAN PERANGKAT KERAS

PERSYARATAN PERANGKAT KERAS
PERSYARATAN PERANGKAT KERAS
PERSYARATAN PERANGKAT KERAS
PERSYARATAN PERANGKAT KERAS

1x Mikrokontroler CloudX

1x CloudX SoftCard

1x Kabel USB

1x 4x4 Matriks Keypad

1x16x2 LCD Jumper Kabel

1x 1kΩ Resistor

4x 10kΩ Resistor

Langkah 2: KONEKSI PIN

KONEKSI PIN
KONEKSI PIN
KONEKSI PIN
KONEKSI PIN
KONEKSI PIN
KONEKSI PIN

Pin Koneksi CloudX dengan LCD dan pin Koneksi CloudX dengan Keypad

Langkah 3: DIAGRAM SIRKUIT

DIAGRAM SIRKUIT
DIAGRAM SIRKUIT

Langkah 4: PERANGKAT LUNAK

/* * File: Smart KeyPad Lock System.c

* Penulis: hoodie

*

* Dibuat pada 20 Maret 2018, 11:21

*/

#termasuk

#termasuk

#termasuk

#termasuk

#define NumberOfRows 4 // atur tampilan menjadi empat baris

#define NumberOfColumns 4 // atur tampilan menjadi tiga kolom

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, centang =0, operation=0, signa=0, signb=0;

jawaban float yang ditandatangani;

char * Pjawab;

char Jawaban[10];

menandatangani input panjang;

char Ainputa[10];

masukan panjang yang ditandatanganib;

char Ainputb[10];

mempersiapkan(){

Pengaturan Keypad (PULLDOWNCOL, RowPins, ColumnsPins, NumberOfRows, NumberOfColumns, KeypadCharacters);

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

lcdCmd(lcd_clear);

lcdCmd(kursor_mati);

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

lcdWriteText(2, 1, " CLOUDX ");

delayMs(2000);

lcdCmd(lcd_clear);

lcdCmd(kursor_blink);

lingkaran(){

Kunci=getKey();

if(Tombol!=0 && Kunci=='C'){

lcdCmd(lcd_clear);

lcdCmd(kursor_blink);

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

Ainputa[a]=0;

Ainputb[a]=0;

Jjawab[a]=0;

}

a=0;

operasi=0;

cek = 0;

tanda =0;

tanda =0;

}

if(centang == 1 && Tombol!=0 && Tombol=='='){

lcdCmd(kursor_mati);

masukana = atoi(Ainputa);

masukanb = atoi(Ainputb);

jika(tanda=='-'){

masukan = -(masukan);

}

jika(tandab=='-'){

masukanb = -(masukanb);

}

if(operasi == '+'){

jawaban = masukana + masukanb;

longTostr(Jawaban, jawab, DES);

}

if(operasi == '-'){

jawaban = inputa - inputb;

longTostr(Jawaban, jawab, DES);

}

if(operasi == '*'){

jawaban = masukana * masukanb;

longTostr(Jawaban, jawab, DES);

}

if(operasi == '/'){

jawaban = (mengambang)input / (mengambang)inputb;

Pjawaban = floatTostr(jawaban);

jika(masukan > masukanb){

Pjawab[5]=0;

}

}

if(operasi == '/'){

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

lcdWriteTextCP(Jawaban);

}

lain {

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

lcdWriteTextCP(Jawaban);

}

}

if(Tombol!=0 && (Tombol=='+' || Tombol=='-' || Tombol=='*' || Tombol=='/')){

if(operasi != 0 && a==0 && tanda ==0 && (Tombol =='-'||Tombol =='+')){

lcdWriteCP(Tombol);

if(Tombol=='-' || Tombol=='+'){

signb = Kunci;

}

}

if(operasi == 0 && a == 0 && tanda ==0 && (Tombol =='-'||Tombol =='+')){

lcdWriteCP(Tombol);

if(Tombol=='-' || Tombol=='+'){

tanda = Kunci;

}

}

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

lcdWriteCP(Tombol);

operasi = Kunci;

a=0;

}

}

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

jika(operasi != 0){

lcdWriteCP(Tombol);

Ainputb[a] = Kunci;

sebuah++;

centang=1;

}

jika(operasi == 0){

lcdWriteCP(Tombol);

Ainputa[a] = Kunci;

sebuah++;

}

}

}

}

Direkomendasikan: