Witam,
buduje sobie spokojnie na zaliczenie termometr oparty o atmege i ds1820
wiem że są gotowe rozwiązania na forum ale ja chce zrobić to sam, w pełni to rozumiejąc i umiejąc się z tego wytłumaczyć czemu kod wygląda tak a nie inaczej
ogólnie jedna rzecz mnie męczy - mianowicie wymyśliłem sobie że na mój wyświetlacz puszcze cyfry przez 7448(wchodzi bcd wychodzi 7 segment)
ale jest jeden mały problem gdyż jak wiadomo ds1820 przez 1-wire™ da mi ciąg binarny z temperaturą i trzeba go obrobić.
Głównie mi chodzi o to że na liczbach w systemie dziesiętnym mi będzie wygodnie operować a konkretnie potrzebuje 2 rzeczy:
przejść z binarki na dziesiętny - jako ze mikrokontroler ma coś takiego jak przesunięcia, dodawanie odejmowanie a mnożenie to już jest problem(napisze kod do mnożenia ale co to mi da jak w pewnym momencie mi pamięci braknie).
Głownie na 10-tce sobie wydzielić z liczby część dziesiatek, i jedności ale problem w tym że dzielenie przez 10 odpada(pamięć) poszukuje jakiegoś sprytnego sposobu, chyba że jest opcja na binarnym dowiedzieć się o tym, ale ja niestety jakoś nie potrafie nic sensownego wymyśleć, więc jakby ktoś mi pokazał/powiedział sposób na binarnym operować byłbym baardzo ucieszony.
Głównie to mnie ogranicza CodeVision AVR który w wersji darmowej ma ograniczenie do wielkości kodu jak i ten 1kb w mikrokontrolerze.
W skrócie: potrzebuje z liczby binarnej w sposób najkrótszy wydzielić cyfrę jedności, cyfrę dziesiątek i wysłać najlepiej przez jeden port.
Pozdrawiam.
buduje sobie spokojnie na zaliczenie termometr oparty o atmege i ds1820
wiem że są gotowe rozwiązania na forum ale ja chce zrobić to sam, w pełni to rozumiejąc i umiejąc się z tego wytłumaczyć czemu kod wygląda tak a nie inaczej
ogólnie jedna rzecz mnie męczy - mianowicie wymyśliłem sobie że na mój wyświetlacz puszcze cyfry przez 7448(wchodzi bcd wychodzi 7 segment)
ale jest jeden mały problem gdyż jak wiadomo ds1820 przez 1-wire™ da mi ciąg binarny z temperaturą i trzeba go obrobić.
Głównie mi chodzi o to że na liczbach w systemie dziesiętnym mi będzie wygodnie operować a konkretnie potrzebuje 2 rzeczy:
przejść z binarki na dziesiętny - jako ze mikrokontroler ma coś takiego jak przesunięcia, dodawanie odejmowanie a mnożenie to już jest problem(napisze kod do mnożenia ale co to mi da jak w pewnym momencie mi pamięci braknie).
Głownie na 10-tce sobie wydzielić z liczby część dziesiatek, i jedności ale problem w tym że dzielenie przez 10 odpada(pamięć) poszukuje jakiegoś sprytnego sposobu, chyba że jest opcja na binarnym dowiedzieć się o tym, ale ja niestety jakoś nie potrafie nic sensownego wymyśleć, więc jakby ktoś mi pokazał/powiedział sposób na binarnym operować byłbym baardzo ucieszony.
Głównie to mnie ogranicza CodeVision AVR który w wersji darmowej ma ograniczenie do wielkości kodu jak i ten 1kb w mikrokontrolerze.
W skrócie: potrzebuje z liczby binarnej w sposób najkrótszy wydzielić cyfrę jedności, cyfrę dziesiątek i wysłać najlepiej przez jeden port.
Pozdrawiam.