-
PROHARDVER!
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
zka67
őstag
válasz
dave0825 #1267 üzenetére
Szia, parancsolj:
const unsigned char minutes[60][6] = {
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000}, // perc 0
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000}, // perc 1
...
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000} // perc 59
};
const unsigned char hours[12][6] = {
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000}, // ora 0
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000}, // ora 1
...
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000} // ora 11
};
const unsigned char temperatures[17][6] = {
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000}, // fok 15
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000}, // fok 16
...
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000} // fok 30
{B00000000,B00000000,B00000000,B00000000,B00000000,B00000000} // ures
};
void checkMinute() {
unsigned char second,minute,i;
second=Clock.getSecond();
minute=Clock.getMinute();
for (i=0; i<6; i++) data[i] = minutes[minute][i];
showpattern();
}
void checkHour() {
unsigned char hour;
hour=Clock.getHour(h12, PM);
for (i=0; i<6; i++) data[i] = hours[hour % 12][i];
showpattern();
}
void checkTemperature() {
unsigned char temperature;
temperature=Clock.getTemperature() - 15;
if (temperature >= 16) temperature = 16;
for (i=0; i<6; i++) data[i] = temperatures[temperature][i];
showpattern();
}vagy szerintem így sokkal szebb, csak másképp kell meghívnod (ebben az esetben természetesen semmi szükség a fenti rutinokra, checkMinutes stb...):
void checkValue(const unsigned char *table) {
unsigned char i;
for (i=0; i<6; i++) data[i] = *table++;
showpattern();
}
checkValue(&minutes[Clock.getSecond()][0]);
checkValue(&hours[Clock.getHour() % 12][0]);
checkValue(&temperatures[Clock.getTemperature()][0]);Remélem a fordító elfogadja a programot, ha meg nem, majd még igazítunk rajta
Szerk: mégiscsak megírtam...
Új hozzászólás Aktív témák
- Intel Core i7 6700K / GTX 1660TI / 16GB DDR4 RAM / 500 GB SSD konfig eladó
- Samsung Galaxy S23 128GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy A53 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Megkímélt állapotú Xbox Series X 1TB eladó. Kitisztítva és újrapasztázva!
- Gamer PC - i5 13400F, GTX 1080ti és 16gb DDR5
- SAMSUNG DDR4 REG ECC 32GB 2666MHz RDIMM szerver RAM modulok, nettó 15740Ft+ÁFA, 1 év gar., több db
- 14" Dell Latitude laptopok: 5400, 5480, 5490, 7480, E7440, E7450 / SZÁMLA + GARANCIA
- 13-14" Új és használt laptopok , üzletitől a gamerig , kedvező áron. Garanciával !
- Lenovo V130-15IGM laptop (Pentium Silver N5000/8GB/256GB SSD
- Samsung Galaxy A14 64GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest