logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Bascom[AVR] użycie zmiennej unsigned long

bigolo 18 Maj 2015 14:26 1125 4
REKLAMA
  • #1 14702365
    bigolo
    Poziom 10  
    Witam
    Proszę o pomoc w rozwiązaniu problemu.
    W celu wyliczenia cisnienia z czujnika Bmp180 należy wykonać obliczenia z użyciem liczby unsigned long ; poniżej fragment algorytmu w c
    ..
    v_b7_u32 = ((u32)(v_uncomp_pressure_u32 - v_b3_s32) *(50000 >>p_bmp180->oversamp_setting));
    ...
    https://github.com/BoschSensortec/BMP180_driver/blob/master/bmp180.c

    W bascomie mam deklarowane zmienne jako long zaś zmienna wyliczona w arkuszu wynosi: v_b7_u32 = 16 261 620 744
    nie jest możliwe obliczenie bo liczba zbyt dużą na long.
    Proszę o pomoc jak to rozwiązać.
  • REKLAMA
  • #2 14702533
    Jaca
    Poziom 31  
    Przecież w u32 też się nie zmieści.

    ps. Zamiast Long możesz użyć Dword ale to i tak za mało na liczbę z Twojego wyliczenia.
  • REKLAMA
  • REKLAMA
  • #4 14702661
    Jaca
    Poziom 31  
    Podana przez Ciebie liczba 16 261 620 744 nie zmieści się w 32 bitach ! Liczba B7 z załącznika zmieści się i w Long.
REKLAMA