Перейти к содержанию
    

Перекодировка для ЖКИ

Привет! Не могу разобраться, как результат с АЦП перевести в подходящий для вывода на ЖКИ, помогите плз! МК Silabs c8051F120, ЖКИ 160203В.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Конкретизируйте, пожалуйста, Ваш вопрос. Что конкретно Вас интересует. Перевод выходного кода ацп в напряжение, выраженное в переменной определенного типа ( float, int ...) U=Ladc/(2^N)*Uref*Kdiv, Ladc - выходной код ацп, Kdiv - коэффициент предделителя. Либо что-то ещё?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня уже имеется готовый вычисленный результат с АЦП, но на ЖКИ его вывести нельзя, т.к. нужно определенным образом преобразовать в "понятный" ЖКИ, вот я и спрашиваю, как это лучше сделать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы задали вопрос, так укажите ссылку на ЖКИ 160203В. похоже это экзотика.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Беглый осмотр гугля показал, что оно построено на Seico M1632, а он, в свою очередь - аналог 44780, так что никакой экзотики. Хотя могу ошибаться, конечно, изучать вопрос детально лень.

 

Впрочем, да, вопрос чЮдный. Подозреваю, топикстартер пользуется ассемблером, т.к. я ещё не видел ни одной книжки про си, в которой не упоминался бы printf ;-)

Изменено пользователем esaulenka

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы задали вопрос, так укажите ссылку на ЖКИ 160203В. похоже это экзотика.

пожалуйста http://www.arihav.com/Products/DataSheet/L...-%20Catalog.pdf :)

 

Беглый осмотр гугля показал, что оно построено на Seico M1632, а он, в свою очередь - аналог 44780, так что никакой экзотики. Хотя могу ошибаться, конечно, изучать вопрос детально лень.

 

Впрочем, да, вопрос чЮдный. Подозреваю, топикстартер пользуется ассемблером, т.к. я ещё не видел ни одной книжки про си, в которой не упоминался бы printf ;-)

нет-нет, printf ни при чем, нужно как-то преобразовать результат с АЦП в шестнадцатиричный, либо в двоичный, который можно вывести на ЖКИ

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ЖКИ состоит из 16 сегментов. По моему его лучше использовать как барграф. Разбить динамический диапазон АЦП на 16 частей и выводить результат посегментно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Смотря что вы собираетесь отображать на дисплее, какой процесс и с какой точностью.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Смотря что вы собираетесь отображать на дисплее, какой процесс и с какой точностью.

мне нужно отображать непрерывное измерение температуры, с точностью ну где-то до 4-го знака!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

с точностью ну где-то до 4-го знака!

Хорошее начало. Предоставьте, пожалуйста расчёты, подтверждающие, что Вы можете измерить температуру с такой точностью.

 

 

Хм. unsigned char с точностью до четвёртого знака. Звучит... :)

 

Модератор (rezident). Фиксирую оффтопик в сообщении. Вопрос топикстартера про способы отображения, а не про точность измерения!

Изменено пользователем rezident

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Привет! Не могу разобраться, как результат с АЦП перевести в подходящий для вывода на ЖКИ, помогите плз! МК Silabs c8051F120, ЖКИ 160203В.
Не ленитесь пользоваться поиском! Тема двоично-десятичного преобразования (BCD - Binary-Coded Decimal) мусолится на форуме постоянно.

Навскидку

http://electronix.ru/forum/index.php?showtopic=66009

http://electronix.ru/forum/index.php?showtopic=68217

Или вот статья из Википедии

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не ленитесь пользоваться поиском! Тема двоично-десятичного преобразования (BCD - Binary-Coded Decimal) мусолится на форуме постоянно.

мне нужно преобразовать в строку то-есть в char :)

 

пробую так

temperaturefin = (temperature-41857)/154;//это вычисление температуры
    sprintf(buf,"%d",temperaturefin);

 

в окне просмотра показывает нормальную температуру, а на ЖКИ высвечивается 01, непонятно :)

Изменено пользователем rezident
Излишнее цитирование.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

непонятно :)

Непонятно, чего Вы веселитесь, вместо того, чтобы помочь желающим помочь Вам.

Какие типы переменных?

Какая переменная правильно видна в окне отладки?

Какие их значения?

temperature?

temperaturefin?

buf?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Какие типы переменных?

Какая переменная правильно видна в окне отладки?

в окне отладки ставится по умолчанию, предположительно int

 

а вот интересно, Вы спросили про значение buf в окне, я посмотрел, высветило следующее- 0x2a "0", хотя temperaturefin=14(т.е. правильно)

Изменено пользователем rezident
Нарушение п.3.4 Правил форума.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...