|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.10.2018, 15:44 | #1 |
Новичок
Джуниор
Регистрация: 15.10.2018
Сообщений: 4
|
Разложение чисел на разряды
Всем доброго времени суток!!! Как дальше разложить число 1000000?
case 4: lcd_data((value/1000)+'0'); case 3: lcd_data(((value/100)%10)+'0'); case 2: lcd_data(((value/10)%10)+'0'); case 1: lcd_data((value%10)+'0'); |
15.10.2018, 15:58 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
если правильно понял вопрос:
Код:
|
15.10.2018, 16:31 | #3 | |
Новичок
Джуниор
Регистрация: 15.10.2018
Сообщений: 4
|
Цитата:
Дело вот в чем. Я пишу прошивку для самодельного частотомера. Он у меня измеряет только до 10000 Гц. И ни как не пойму, как увеличить этот предел измерений. Данный код, Вами предложенный не работает. |
|
15.10.2018, 16:33 | #4 |
Новичок
Джуниор
Регистрация: 15.10.2018
Сообщений: 4
|
// Функция вывода переменной
void lcd_num_to_str(unsigned int value, unsigned char nDigit) { switch(nDigit) { case 4: lcd_data((value/1000)+'0'); case 3: lcd_data(((value/100)%10)+'0'); case 2: lcd_data(((value/10)%10)+'0'); case 1: lcd_data((value%10)+'0'); } |
15.10.2018, 16:45 | #5 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
|
15.10.2018, 16:55 | #6 |
Новичок
Джуниор
Регистрация: 15.10.2018
Сообщений: 4
|
Может подскажите алгоритм разложения чисел по данному примеру? А уж под свой проект я сам попробую доработать
|
15.10.2018, 17:03 | #7 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
А ничего, что это просто вывод на экран? Ваш датчик/схема измерения позволяет измерять выше? Вы ее перенастроили/номиналы изменили?
|
15.10.2018, 17:04 | #8 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
так я уже показал пример разложения десятичных чисел на отдельные разряды по вашему примеру. Вы на вход вашей функции lcd_num_to_str подайте число > 10000 и посмотрите, как это работает. p.s. посмотрите, где и как эта функция вызывается. вангую, что там при вызове по nDigit цикл от 0 до 4 Вот этот цикл Вам и нужно изменить на нужно число разрядов. (не забыв изменить и тело функции, как я показал выше) |
|
15.10.2018, 21:05 | #9 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,620
|
Теме самое место в "Микроконтроллеры".
А для измерения больших частот (МГц), к примеру, вывод на дисплей - не самый большой камень проникновения . МК д.быть достаточно быстродействующим (частота тактирования, время обработки поступающего импульса). Если недостаточно, применяются входные делители частоты. И если в МК нет аппаратной реализации умножения/деления, то о мегагерцах можно забыть. Хотя м.быть речь о новомодных STM32 ? Эти - да, могут. Но скорее всего, просто учебное задание ? Ну если воплощение не грозит, то сгодится. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Разбиение едит на разряды | Mixasnt | Общие вопросы Delphi | 9 | 16.12.2012 16:44 |
Чётный разряды м.квадрата | FlipFan | Общие вопросы Delphi | 2 | 21.06.2012 20:41 |
старшие разряды | Михаил2261 | Microsoft Office Excel | 13 | 15.10.2010 02:00 |
Разложение чисел на множители | Masia | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 28.05.2009 14:32 |
Есть ли разряды у программистов? | Cubar | Свободное общение | 6 | 17.02.2008 13:07 |