jenya7 0 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба Мне нужно высветить на ЛСД число. Я пользуюсь функцией void LCD_DisplayNumber(uint32_t number) { uint8_t num, i, digit; uint32_t div; uint8_t val; uint8_t bitval; div = 1; for (digit = 0; digit < 9; digit++) { //get a digit num = (number / div) % 10; //take the digit pattern from a lookup table val = lcd_digits_seg1_seg8[num]; /* Get number layout of display */ for (i = 0; i < 7; i++) { bitval = val & 0x01; LCD_SegmentHandle(i,digit,bitval); val = val >> 1; } div = div * 10; } } Но она переворачивает число, то есть вместо 1234567 я вижу на ЛСД 7654321. Как мне эфективно перевернуть число. Или может есть более лучшая функция? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Th0r 0 3 ноября, 2014 Опубликовано 3 ноября, 2014 (изменено) · Жалоба измени вот так LCD_SegmentHandle(i,9-digit,bitval); возможно не именно 9, а в зависимости от дисплея - 7 или 8 Изменено 3 ноября, 2014 пользователем Th0r Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 119 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба И при чем здесь наркотики? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба И при чем здесь наркотики? ЛСД = LCD Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 119 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба Нет, блин! ЛСД = наркотик. А LCD = ЖКИ (жидкокристаллический индикатор). За что же вы так не уважаете родной язык? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба измени вот так LCD_SegmentHandle(i,9-digit,bitval); возможно не именно 9, а в зависимости от дисплея - 7 или 8 Спасибо. Так почти работает. Проблема в том что мне надо вычислять сколько цифр в числе. То еть вместо for (digit = 0; digit < 9; digit++) Нужно писать for (digit = 0; digit < real_number_of_digits; digit++) И тут возникает вопрос как вычислить количество цифр в числе. Нет, блин! ЛСД = наркотик. А LCD = ЖКИ (жидкокристаллический индикатор). За что же вы так не уважаете родной язык? Да просто все время работаю с английской тех документацией вот и врезалось в мозг ЛСД . Скажем среди моих знакомых редко говорят массив, говорят аррэй потому что именно аррэй с утра до вечера мозолит глаза. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 119 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба Да просто все время работаю с английской тех документацией вот и врезалось в мозг ЛСД.Ну уж букву "Цэ" от "Эс" можно отличить... Скажем среди моих знакомых редко говорят массив, говорят аррэйСочувствую. Тошнит уже от креатива релаксующих. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба Ну уж букву "Цэ" от "Эс" можно отличить... Сочувствую. Тошнит уже от креатива релаксующих. Не берите в голову. Глубоко вдыхайте и радуйтесь жизни, она коротка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 119 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба Не берите в голову. Глубоко вдыхайте и радуйтесь жизни, она коротка.Да не вопрос. Заведите аррай, сложите в него резулт дивизии, потом сделайте пасс по араю скипая первые зеры. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Th0r 0 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба Да не вопрос. Заведите аррай, сложите в него резулт дивизии, потом сделайте пасс по араю скипая первые зеры. слишком долго проще так: когда num/div = 0, значит предыдущий разряд был последним Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 3 ноября, 2014 Опубликовано 3 ноября, 2014 · Жалоба Да не вопрос. Заведите аррай, сложите в него резулт дивизии, потом сделайте пасс по араю скипая первые зеры. А потом они еще по всей распиновке пины каррентом драйвят, форсят и релизят... Просто ужас, как за пины обидно! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться