(25-02-2017 18:55)SP7EZG napisał(a): [code]
....
uint16_t Fpom = 1;
int Sterowanie = 255 ; //25 kHz10100000
....
....
...Sterowanie przechodzi tylko jako postać dziesiętna....
Nie rozumiem co miałeś na myśli z tą postacią dziesiętną..
Ale po kolei..
Wytłumacz mi, dlaczego
Fpom ma wartość 1 ?
Sterowanie zadeklaruj jako
uint8_t. Typ
int jest tu bardzo na wyrost, a na dodatek jest to typ ze znakiem. Nie potrzeba w tym przypadku marnować pamięci.
Na dodatek zdajesz sobie sprawę, że wartość dziesiętna 255 to nie jest to samo co 0b10100000. Chyba, że komentarz został przez przypadek...
0b10100000 = 0xA0 = 160
Znasz sposoby zapisu w C liczb w postaci binarnej i szesnastkowej ?
zapis szesnastkowy poprzedzamy
0x,
zapis binarny -
0b,
oraz dziesiętny - bez żadnych dodatków.
Tak więc :
255 dzisiętnie, to 0xFF szesnastkowo oraz 0b11111111 w postaci binarnej.