Ska man vara exakt så är det C++ och inte C för att i C finns det inte färdiga klasser att jobba med
Men nog om det.
Det är ingen hembrännare jag ska göra. Men det har något med alkohol att göra också
Måste jag skapa en klass som heter "input" och alla funktioner har jag som statiska? Bry er inte om "void". Jag har inte tänkt ut direkt om dem ska skicka tillbaka något eller inte.
#include <LedControl.h>
#include <Keypad.h>
// MAX7219 inputs: DIN pin, CLK pin, LOAD pin. number of chips
LedControl mydisplay = LedControl(13, 12, 11, 1);
// Digital Keypad 4x4
const byte rows = 4; //four rows
const byte cols = 3; //three columns
char keys[rows][cols] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'#','0','*'}
};
byte rowPins[rows] = {3, 2, 1, 0}; //connect to the row pinouts of the keypad
byte colPins[cols] = {6, 5, 4}; //connect to the column pinouts of the keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, rows, cols );
void setup()
{
mydisplay.shutdown(0, false); // turns on display
mydisplay.setIntensity(0, 15); // 15 = brightest
pinMode(13, OUTPUT); // Green LED
}
void loop()
{
}
void setTimeHumle()
{
}
void speaker()
{
}
void setEndTimeKok()
{
}
void setTempKok()
{
}
void setBeginTimeLak()
{
}
void setTempLak()
{
}
void relay_kok()
{
}
void relay_lak()
{
}
void getTempKok()
{
}
void getTempLak()
{
}
int tempsensor_kok()
{
// get average temperature
}
int tempsensor_lak()
{
// get average temperature
}
int digitalKeyPad()
{
}
void show_digit(int i)
{
// if i is 4 digit
if (i >= 1000)
{
String str = String(i);
char charBuf[5];
str.toCharArray(charBuf, 5);
int a = charBuf[0] - '0';
int b = charBuf[1] - '0';
int c = charBuf[2] - '0';
int d = charBuf[3] - '0';
mydisplay.setDigit(0, 0, a, false);
mydisplay.setDigit(0, 1, b, true);
mydisplay.setDigit(0, 2, c, false);
mydisplay.setDigit(0, 3, d, false);
}
// if i is 3 digit
else if (i <= 999 && i >= 100)
{
String str = String(i);
char charBuf[4];
str.toCharArray(charBuf, 4);
int a = charBuf[0] - '0';
int b = charBuf[1] - '0';
int c = charBuf[2] - '0';
mydisplay.setDigit(0, 0, 0, false);
mydisplay.setDigit(0, 1, a, true);
mydisplay.setDigit(0, 2, b, false);
mydisplay.setDigit(0, 3, c, false);
}
// if i is 2 digit
else if(i < 100 && i >= 10)
{
String str = String(i);
char charBuf[3];
str.toCharArray(charBuf, 3);
int a = charBuf[0] - '0';
int b = charBuf[1] - '0';
mydisplay.setDigit(0, 0, 0, false);
mydisplay.setDigit(0, 1, 0, false);
mydisplay.setDigit(0, 2, a, false);
mydisplay.setDigit(0, 3, b, false);
}
else // if i is 1 digit
{
String str = String(i);
char charBuf[2];
str.toCharArray(charBuf, 2);
int a = charBuf[0] - '0';
mydisplay.setDigit(0, 0, 0, false);
mydisplay.setDigit(0, 1, 0, false);
mydisplay.setDigit(0, 2, 0, false);
mydisplay.setDigit(0, 3, a, false);
}
}