реклама на сайте
подробности

 
 
> индикатор MC14489B.pdf, sprintf
addi II
сообщение Jun 16 2018, 10:07
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 277
Регистрация: 1-02-16
Пользователь №: 90 294



Здравствуйте !
Вопрос к профи в Си, как можно использовать функцию Sprintf чтобы можно было бы hex представлять в dec на индикаторе
Информация выводиться со счетчика от 0 до 5 разрядов индикатора

Спасибо
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 6)
Forger
сообщение Jun 16 2018, 16:13
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(addi II @ Jun 16 2018, 13:07) *
Sprintf
Читайте подробное описание возможностей printf и ей подобных в мануале на библиотеки Вашего компилятора.
Изначально в стандарте предусмотрен перевод HEX в строку в этой библиотечной функции.
Далее полученную строку нужно преобразовать в кодировку вашего индикатора.

Есть другой вариант - без sprintf, т.е. "руками" разбирать число и формировать соотв. символы на экране дисплея. Короче, курите гугль wink.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jun 16 2018, 20:38
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (addi II @ Jun 16 2018, 13:07) *
чтобы можно было бы hex представлять в dec
Что за hex?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
dimka76
сообщение Jun 16 2018, 21:08
Сообщение #4


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Цитата(addi II @ Jun 16 2018, 13:07) *
как можно использовать функцию Sprintf чтобы можно было бы hex представлять в dec на индикаторе
Информация выводиться со счетчика от 0 до 5 разрядов индикатора


Код
char str[6];
uint32_t data;
sprintf(str, "% 5u", data);


--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post
firstvald
сообщение Jun 16 2018, 22:09
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 580
Регистрация: 3-06-08
Пользователь №: 38 041



Цитата(dimka76 @ Jun 17 2018, 00:08) *
Код
char str[6];
uint32_t data;
sprintf(str, "% 5u", data);



я бы добавил:
Код
char str[16];//пусть больше - у нас не будет проблем с вылезанием за границы массива
memset(str,0,sizeof(str));
sprintf(str, "% 5u", data);// ну и можно поиграться sprintf(str, "% -5u", data); и посмотреть как будет удобнее отображаться


а вопрос стоял: что потом делать с получившейся строкой? и какой индикатор? сегментный/ графический? если сегментный, то вполне возможно сделать своей функцией которая числа (0 1 2 3....), а не символы (0x30 0x31 0x32 0x33 ....) переводит в сочетания сегментов.
Go to the top of the page
 
+Quote Post
k155la3
сообщение Jun 17 2018, 14:25
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(addi II @ Jun 16 2018, 13:07) *
. . . Вопрос к профи в Си, как можно использовать функцию Sprintf чтобы можно было бы hex представлять в dec на индикаторе . . .
Есть производственная мудрость, что правильно сформулированное ТЗ упрощает решение задачи на 50 проц.
В данном случае - проценты повышаются до 99 sm.gif
Неплохо было бы дать ссылку на поминаемый в заголовке pdf.
Go to the top of the page
 
+Quote Post
Forger
сообщение Jun 17 2018, 14:44
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Похоже на вброс: ТС создал тему с "сырым" ТЗ и .... пропал cool.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 01:14
Рейтинг@Mail.ru


Страница сгенерированна за 0.01918 секунд с 7
ELECTRONIX ©2004-2016