Inhaltsverzeichnis:

Einfacher und Standardrechner mit CloudX - Gunook
Einfacher und Standardrechner mit CloudX - Gunook

Video: Einfacher und Standardrechner mit CloudX - Gunook

Video: Einfacher und Standardrechner mit CloudX - Gunook
Video: FBA Rechner Tutorial. Einfache Margenberechnung für Dein Amazon FBA Business 2024, November
Anonim
Einfacher und Standard-Rechner mit CloudX
Einfacher und Standard-Rechner mit CloudX

In diesem Tutorial lernen wir, wie Sie mit CloudX einen einfachen und standardmäßigen Taschenrechner erstellen eigener Hardwarerechner mit cloudX M633.

Unser Ziel ist es, einen Taschenrechner zu entwickeln, der Addition (+), Subtraktion (-), Multiplikation (*) und Division (/) mit Ergebnissen in Dezimalzahlen bis zu 0,0000001 und in ganzen Zahlen bis zu 90000000 ausführen kann. Der Rechner hat die Fähigkeit, mathematische Fehler usw. zu erkennen. Jedes Kind, jeder Schüler und jeder Bastler sollte in der Lage sein, dieses fantastische Projekt durchzuführen.

Schritt 1: HARDWARE-ANFORDERUNGEN

HARDWARE-ANFORDERUNGEN
HARDWARE-ANFORDERUNGEN
HARDWARE-ANFORDERUNGEN
HARDWARE-ANFORDERUNGEN

1x CloudX-Mikrocontroller

1x CloudX-SoftCard

1x USB-Kabel

1x 4x4 Matrix-Tastatur

1x 16x2 LCD-Überbrückungskabel

1x 1kΩ Widerstand

4x 10kΩ Widerstände

Schritt 2: PIN-VERBINDUNG

PIN-VERBINDUNG
PIN-VERBINDUNG
PIN-VERBINDUNG
PIN-VERBINDUNG
PIN-VERBINDUNG
PIN-VERBINDUNG

CloudX-Verbindungsstifte mit LCD und CloudX-Verbindungsstifte mit Tastatur

Schritt 3: SCHALTPLAN

SCHALTPLAN
SCHALTPLAN

Schritt 4: SOFTWARE

/* * Datei: Smart KeyPad Lock System.c

* Autor: Hoodie

*

* Erstellt am 20. März 2018, 11:21 Uhr

*/

#enthalten

#enthalten

#enthalten

#enthalten

#define NumberOfRows 4 // Anzeige auf vier Zeilen setzen

#define NumberOfColumns 4 // Anzeige auf drei Spalten setzen

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-Tasten, a=0, check =0, operation=0, signa=0, signb=0;

vorzeichenbehaftete Float-Antwort;

char * Antwort;

char Aanswer[10];

mit Vorzeichen lange Eingabea;

char Ainputa[10];

Vorzeichen lange Eingabeb;

char Ainputb[10];

erstellen(){

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

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

lcdCmd (lcd_clear);

lcdCmd(cursor_off);

lcdWriteText(1, 1, " RECHNER MIT");

lcdWriteText(2, 1, "CLOUDX");

VerzögerungMs(2000);

lcdCmd (lcd_clear);

lcdCmd(cursor_blink);

Schleife(){

Schlüssel=getKey();

if(Schlüssel!=0 && Schlüssel=='C'){

lcdCmd (lcd_clear);

lcdCmd(cursor_blink);

für(a=0; a<10; a++){

Ainputa[a]=0;

Ainputb[a]=0;

Antwort[a]=0;

}

a = 0;

Betrieb=0;

prüfen = 0;

Vorzeichen = 0;

Vorzeichenb = 0;

}

if(check == 1 && Schlüssel!=0 && Schlüssel=='='){

lcdCmd(cursor_off);

inputa = atoi(Ainputa);

inputb = atoi(Ainputb);

if(signa=='-'){

Eingabea = -(Eingabea);

}

if(signb=='-'){

Eingabeb = -(Eingabeb);

}

if(operation == '+'){

Antwort = Eingabea + Eingabeb;

longTostr(Aanswer, answer, DEC);

}

if(operation == '-'){

Antwort = Eingabea - Eingabeb;

longTostr(Aanswer, answer, DEC);

}

if(operation == '*'){

Antwort = Eingabea * Eingabeb;

longTostr(Aanswer, answer, DEC);

}

if(operation == '/'){

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

Pantwort = floatTostr(Antwort);

if(inputa > inputb){

Pantwort[5]=0;

}

}

if(operation == '/'){

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

lcdWriteTextCP(Panswer);

}

anders {

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

lcdWriteTextCP(Antwort);

}

}

if(Schlüssel!=0 && (Schlüssel=='+' || Schlüssel=='-' || Schlüssel=='*' || Schlüssel=='/')){

if(Operation != 0 && a==0 && Zeichenb ==0 && (Tasten=='-'||Tasten=='+')){

lcdWriteCP(Schlüssel);

if(Schlüssel=='-' || Schlüssel=='+'){

Zeichenb = Schlüssel;

}

}

if(Operation == 0 && a == 0 && Zeichen ==0 && (Tasten=='-'||Tasten=='+')){

lcdWriteCP(Schlüssel);

if(Schlüssel=='-' || Schlüssel=='+'){

signa = Schlüssel;

}

}

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

lcdWriteCP(Schlüssel);

Bedienung = Tasten;

a = 0;

}

}

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

if(Operation != 0){

lcdWriteCP(Schlüssel);

Ainputb[a] = Schlüssel;

a++;

check=1;

}

if(Operation == 0){

lcdWriteCP(Schlüssel);

Ainputa[a] = Schlüssel;

a++;

}

}

}

}

Empfohlen: