roboforum.ru

Технический форум по робототехнике.

функция подобная printf для LCD128x64

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

функция подобная printf для LCD128x64

Сообщение grek » 11 ноя 2010, 10:15

Добрый день.Хотелось бы написать функцию,подобную printf для, что бы вывод был такой
printf(" t=%i.%u\xdfC ",Value_Of_Temperature,Value_Of_Temperature%1);
что бы значения выводились не в порт, а на экран графического lcd 128ч64.То есть,что бы была возможность забить те же параметры для вывода такойже графики но только на экран LCD.
Может у кого то будут предложения как по другому вывести температуру с ds18b20 на графический дисплей.
Переменные Value_Of_Temperature типа INT.
grek
 
Сообщения: 159
Зарегистрирован: 16 сен 2009, 15:41
Откуда: Арзамас

Re: функция подобная printf для LCD128x64

Сообщение Сергей » 11 ноя 2010, 10:20

Перенаправь stdout. Для этого потребуется погуглить по этим словам и написать функцию вывода одного символа на дисплей.
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Re: функция подобная printf для LCD128x64

Сообщение galex1981 » 11 ноя 2010, 10:21

А что мешает вам написать такую функцию?
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: функция подобная printf для LCD128x64

Сообщение EdGull » 11 ноя 2010, 10:22

в васике команда Lcdat тебе поможет
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: функция подобная printf для LCD128x64

Сообщение Сергей » 11 ноя 2010, 10:22

Вот пример из stdio.h
Код: Выделить всёРазвернуть
    #include <stdio.h>

    static int uart_putchar(char c, FILE *stream);

    static FILE mystdout = FDEV_SETUP_STREAM(uart_putchar, NULL,
                                             _FDEV_SETUP_WRITE);

    static int
    uart_putchar(char c, FILE *stream)
    {

      if (c == '\n')
        uart_putchar('\r', stream);
      loop_until_bit_is_set(UCSRA, UDRE);
      UDR = c;
      return 0;
    }

    int
    main(void)
    {
      init_uart();
      stdout = &mystdout;
      printf("Hello, world!\n");

      return 0;
    }
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Re: функция подобная printf для LCD128x64

Сообщение grek » 11 ноя 2010, 16:02

Решил вопрос,затащил строку в массив и вывел поэлементно.
grek
 
Сообщения: 159
Зарегистрирован: 16 сен 2009, 15:41
Откуда: Арзамас

Re: функция подобная printf для LCD128x64

Сообщение elesy » 12 ноя 2010, 14:09

а какой индикатор?
elesy
 
Сообщения: 92
Зарегистрирован: 24 май 2010, 15:31
Откуда: Екатеринбург
ФИО: Зайцев Иван Алексеевич


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8