|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.09 Kraj: Dragomer
|
Objavljeno: Čet Mar 31, 2016 4:01 pm Naslov sporočila: Še ena, kjer mi boste gotovo pomagali kar iz rokava. |
|
|
Kodiram:
Koda: |
byte aa = B00000001 ;
Serial.println(aa,DEC);
Serial.println(aa,HEX);
Serial.println(aa,BIN); |
A izpis, ki ga dobim je vedno 1.
Jaz pa bi rad
1 za decimalni izpis
01 za heksadecimalni izpis in
00000001 za binarni izpis .
Kako? _________________ Prepričan sem, da je inteligentnih bitij v vesolju veliko. A ker so inteligenta, se nam nočejo prikazati. |
|
Nazaj na vrh |
|
|
rplink3r Član
Pridružen-a: Tor 06 Feb 2007 20:02 Prispevkov: 480 Aktiv.: 2.30 Kraj: Levec
|
Objavljeno: Čet Mar 31, 2016 4:50 pm Naslov sporočila: |
|
|
Primer za izpis binarne številke v terminal:
Primer za celoten integer 2 x byte
Koda: |
//
// davekw7x
//
void setup()
{
Serial.begin(9600);
}
int Sensor = 0;
void loop()
{
Sensor++;
for (unsigned int mask = 0x8000; mask; mask >>= 1) {
if (mask & Sensor) {
Serial.print('1');
}
else {
Serial.print('0');
}
}
Serial.println();
delay(1000);
}
|
Če pa hočeš samo en byte pa masko na 0x80 in spremenljivko na byte
Koda: |
void setup()
{
Serial.begin(9600);
}
byte Sensor = 0;
void loop()
{
Sensor++;
for (byte mask = 0x80; mask; mask >>= 1) {
if (mask & Sensor) {
Serial.print('1');
}
else {
Serial.print('0');
}
}
Serial.println();
delay(1000);
}
|
Na tej strani primeri za Binaren izpis:
http://forum.arduino.cc/index.php?topic=45679.0
Na tej strani primeri za Hex izpis:
http://forum.arduino.cc/index.php?topic=38107.0 _________________ "The statement below is false."
"The statement above is true." |
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.09 Kraj: Dragomer
|
Objavljeno: Čet Mar 31, 2016 4:57 pm Naslov sporočila: |
|
|
Uh!
Tokrat pa nisem srečen!
A vseeno, hvala! _________________ Prepričan sem, da je inteligentnih bitij v vesolju veliko. A ker so inteligenta, se nam nočejo prikazati. |
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.09 Kraj: Dragomer
|
Objavljeno: Čet Mar 31, 2016 5:01 pm Naslov sporočila: |
|
|
In še ena izmed osnovnih manipulacij z binarnimi veličinami:
Rotate! To se pravi shift v eno ali drugo smer, kjer bit ki se na eni strani izrine, se na drugi strani pojavi na mestu novega bita.
Verjetno spet moram sam testirati bit, ki se bo izrinil, si ga nekje zapomnil in na druigi strani moram spet sam dati ga na vstopno mesto.
Ja, veste, to je pa mučenje kristjanov! _________________ Prepričan sem, da je inteligentnih bitij v vesolju veliko. A ker so inteligenta, se nam nočejo prikazati. |
|
Nazaj na vrh |
|
|
Slowfly Član
Pridružen-a: Sre 18 Feb 2004 2:07 Prispevkov: 4082 Aktiv.: 18.38 Kraj: Ljubljana
|
Objavljeno: Čet Mar 31, 2016 7:46 pm Naslov sporočila: |
|
|
vilko je napisal/a: |
Ja, veste, to je pa mučenje kristjanov! |
He, he. Pa bi bil ateist, kot jaz! _________________ Še dobro, da bitje srca in dihanje nadzoruje vegetativno živčevje. V nasprotnem primeru nekateri ne bi preživeli niti 24 ur. |
|
Nazaj na vrh |
|
|
rplink3r Član
Pridružen-a: Tor 06 Feb 2007 20:02 Prispevkov: 480 Aktiv.: 2.30 Kraj: Levec
|
Objavljeno: Čet Mar 31, 2016 9:07 pm Naslov sporočila: |
|
|
Namesto spremenljivke sensor daš notri svojo spremenljivko, for zanko za primerjavo in izpis pa daš v funkcijo in samo pošlješ v funkcijo podatek, ostalo naredi funkcija. Sem se še malo poigral, mogoče bolj pregledno
Koda: |
void setup()
{
Serial.begin(9600);
}
void binaren_izpis(byte podatek)
{
for (byte mask = 0x80; mask; mask >>= 1)
{
Serial.print(mask&podatek?'1':'0');
}
}
byte moj_podatek = 0;
void loop()
{
moj_podatek++;
binaren_izpis(moj_podatek);
Serial.println();
delay(1000);
}
|
_________________ "The statement below is false."
"The statement above is true." |
|
Nazaj na vrh |
|
|
Jaka57 Moderator
Pridružen-a: Ned 12 Dec 2004 21:47 Prispevkov: 5766 Aktiv.: 25.97 Kraj: Grosuplje
|
Objavljeno: Pet Apr 01, 2016 1:13 am Naslov sporočila: |
|
|
Vilko, Rotate. _________________ Lp, Jaka |
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.09 Kraj: Dragomer
|
Objavljeno: Pet Apr 01, 2016 7:45 am Naslov sporočila: |
|
|
Saj pravim. Mučenje kristjanov.
Se spominjate starega Commodore-a 64? Ta je imel rotate ukaz v assemblerju.
Hvala za trud, Bom že štrikal in sinu zaračunal ure. _________________ Prepričan sem, da je inteligentnih bitij v vesolju veliko. A ker so inteligenta, se nam nočejo prikazati. |
|
Nazaj na vrh |
|
|
vilko Član
Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3351 Aktiv.: 15.09 Kraj: Dragomer
|
Objavljeno: Pet Apr 01, 2016 7:46 am Naslov sporočila: |
|
|
Saj pravim. Mučenje kristjanov.
Se spominjate starega Commodore-a 64? Ta je imel rotate ukaz v assemblerju.
Hvala za trud, Bom že štrikal in sinu zaračunal ure. _________________ Prepričan sem, da je inteligentnih bitij v vesolju veliko. A ker so inteligenta, se nam nočejo prikazati. |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 48 dni
Powered by phpBB © 2001, 2005 phpBB Group
|