Proszę o pomoc w zrozumieniu kodu.
Dokonuję pomiaru na pinie adc atmegi i wartość wyświetlam na lcd w postaci paska. Wszystko ładnie działa, ale nie do końca rozumiem istotę działania, dopiero się uczę.
Co rozumiem:
wartosc_z_adc, jest to wartość zmierzona na pinie adc atmegi8 w zakresie 0-1023 (postać cyfrowa)
max. wartość cyfrowa 1023 podzielona przez 20 kolumn w wierszu daje nam wartość 51 i po przecinku (po przecinku nie brane pod uwagę), czyli po przekroczeniu 51++ zaświeca się kolejny kwadrat, 102 kolejny kwadrat, itd. do 1023-świecą się 20 kwadraty w linijce.
Powołana jest zmienna a i na początku ma wartość 0. Następnie w pętli for zmienna ta jest inkrementowana przy każdym obiegu pętli o 1, jeśli jest mniejsza od zmiennej kolumna.
Zmienna kolumna przybiera wartości 0-20 w zależności, jaki jest wynik dzielenia wartosc_adc / 51
Program wyświetlający pasek działa i wszystko jest ok, poza tym, że nie do końca rozumiem kodu. Ważniejsze dla mnie jest zrozumienie kodu od samego jego działania
.
Nie rozumiem, po co tak na prawdę jest zmienna a. Jak to się dzieje, że kolejne segmenty zapalają się wraz ze wzrostem napięcia na pinie adc (kręcąc potencjometrem), a pozostałe-wcześniejsze nie
gasną.
Nie mogę jakoś logicznie powiązać tej pętli for z samym wyświetlaniem ciągu kwadratów.
Po krótce sobie tłumaczę, że co wartość około 51 następuje „przepełnienie” i zaświecanie kolejnego kwadratu, ale błądzę w domysłach, a chciałbym to zrozumieć.
Proszę o cierpliwość i łopatologiczne wyjaśnienie mi tej kwestii. Dzięki.
Dokonuję pomiaru na pinie adc atmegi i wartość wyświetlam na lcd w postaci paska. Wszystko ładnie działa, ale nie do końca rozumiem istotę działania, dopiero się uczę.
Kod: C / C++
Co rozumiem:
wartosc_z_adc, jest to wartość zmierzona na pinie adc atmegi8 w zakresie 0-1023 (postać cyfrowa)
max. wartość cyfrowa 1023 podzielona przez 20 kolumn w wierszu daje nam wartość 51 i po przecinku (po przecinku nie brane pod uwagę), czyli po przekroczeniu 51++ zaświeca się kolejny kwadrat, 102 kolejny kwadrat, itd. do 1023-świecą się 20 kwadraty w linijce.
Powołana jest zmienna a i na początku ma wartość 0. Następnie w pętli for zmienna ta jest inkrementowana przy każdym obiegu pętli o 1, jeśli jest mniejsza od zmiennej kolumna.
Zmienna kolumna przybiera wartości 0-20 w zależności, jaki jest wynik dzielenia wartosc_adc / 51
Program wyświetlający pasek działa i wszystko jest ok, poza tym, że nie do końca rozumiem kodu. Ważniejsze dla mnie jest zrozumienie kodu od samego jego działania
Nie rozumiem, po co tak na prawdę jest zmienna a. Jak to się dzieje, że kolejne segmenty zapalają się wraz ze wzrostem napięcia na pinie adc (kręcąc potencjometrem), a pozostałe-wcześniejsze nie
gasną.
Nie mogę jakoś logicznie powiązać tej pętli for z samym wyświetlaniem ciągu kwadratów.
Po krótce sobie tłumaczę, że co wartość około 51 następuje „przepełnienie” i zaświecanie kolejnego kwadratu, ale błądzę w domysłach, a chciałbym to zrozumieć.
Proszę o cierpliwość i łopatologiczne wyjaśnienie mi tej kwestii. Dzięki.