Что касается логического уравнения на моем C-программировании

У меня есть ситуация с моим программированием на C, и я просто задаюсь вопросом, является ли мое решение правильным:

У меня есть светодиодный дисплей с датчиком количества частиц, и в качестве значения счетчика будет отображаться 6 цифр из семи номеров сегментов. Датчик выдаст входное значение напряжения. Вход от 0 до 10 В. Таким образом, диапазон 0В-10В должен отображаться на дисплее как число от 000000 до 999999.

Мое решение:

Номер дисплея = Входное напряжение * 99999,9

Например:

Номер дисплея = 10.000 * 99999.9 = 999999

Дисплей номер = 5,500 * 99999,9 = 549999

Дисплей номер = 2.300 * 99999.9 = 229999

Это правильное решение? Я заметил, что я получу много 9 на дисплее значения.

-1

Решение

Наиболее удобное и удобное решение — игнорировать тот факт, что ваша самая значимая цифра способна отображать до 9, и просто умножить на 10000, если вам не нужно максимальное разрешение, в этом случае просто используйте масштабный коэффициент 100000 и документируйте, что ваш диапазон 0-9,99999.

Я рассуждаю так: лучше потерять одну цифру с точностью во всем диапазоне или обрезать только максимальное значение, чем иметь ошибку во всем диапазоне.

2

Другие решения


По вопросам рекламы [email protected]