Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

mnożenie w m128

djjagi
-
-
Posty: 14
Rejestracja: 25 paź 2003, o 17:32
Lokalizacja: Toronto
Kontaktowanie:

mnożenie w m128

Postautor: djjagi » 5 cze 2005, o 06:42

Mnożąc zmienną typu WORD przez stałą CONST wychodzi niedokładny wynik.

Np:
WORD = 200
x
CONST = 0.0025
=
SINGLE = 0.499999933.

Symulując wszystko jest o`k ale w procku cos szwankuje. Co może być przyczyną?
?

LucASWw
-
-
Posty: 248
Rejestracja: 23 sie 2003, o 18:26
Lokalizacja: UK

Postautor: LucASWw » 5 cze 2005, o 12:09

Pewne ograniczenia BASCOM'a, oraz brak FPU w ATMEGA.

djjagi
-
-
Posty: 14
Rejestracja: 25 paź 2003, o 17:32
Lokalizacja: Toronto
Kontaktowanie:

Postautor: djjagi » 5 cze 2005, o 15:38

Dzieki. Choć nie pocieszyła mnie twoja odpowiedź. Ale przynajmniej bede wiedział, że to nie mój błąd.

Awatar użytkownika
małysz
-
-
Posty: 330
Rejestracja: 4 cze 2004, o 22:16
Lokalizacja: Warszawa
Kontaktowanie:

Postautor: małysz » 5 cze 2005, o 21:14

Witam!
Jeśli to naprawde wina BASCOM'a to spróbuj dorzucić wstawkę w asemblerze, to naprawde nie jest trudne. Przy akazji pozwala lepiej zrozumieć co się w tym mikrokontrolerze dzieje.

yyy2
-
-
Posty: 5
Rejestracja: 6 cze 2005, o 10:28
Lokalizacja: cz-wa

Postautor: yyy2 » 6 cze 2005, o 12:02

sprubuj zaokraglic to przez FUSING
wynik = fusing(zaokraglana , #.####)
wpisujesz ile chcesz miejsc po przecinku i dzialac powinno
wynik to chyba string * liczba - ( liczba - ile ma buc cyfr po zaokragleniu )
zajrzyj do helpa tam to jest na pewno

Wróć do „Projektowanie PCB, programy EDA, CAD, narzędziowe”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 96 gości