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

 
 
> Вывод на ЖКИ значений переменных.
andre583
сообщение Mar 7 2008, 15:21
Сообщение #1





Группа: Новичок
Сообщений: 8
Регистрация: 7-03-08
Пользователь №: 35 720



Подскажите новичку, как выводить значения переменных на экран ЖКИ HD44780 при программировании в CodeVisionAVR. Вывод символьных строк и отдельных символов получается, а значений переменных - нет.
C примером на Си, пожалйста.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Sergey529
сообщение Jan 13 2012, 19:43
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 16
Регистрация: 12-12-11
Пользователь №: 68 814



Добрый вечер! Подниму эту старую тему, т.к. сам начинающий и столкнулся со следующей проблемой. Вот кусок программы, в котором значение переменной i увеличивается от 1 до 7 и всякий раз оно выводится на дисплей:
Код
#include <avr/io.h>   //подключаем библиотеки
#include <avr/delay.h>
#include <stdio.h>
#include <lcd_lib.h>

#define delay _delay_ms(20)
#define button_0 (bit_is_clear(PIND,0)) //макрос - нажата кнопка 0
//итд

char i=-1;
int p=0;
unsigned char array[10];

int main(void)
{
  
  LCDinit();
  LCDclr();
  LCDcursorOFF();
  sprintf(array,"%u",i);
  LCDstring(array, 10);  //10 - взял с запасом

while(1) //БЕСКОНЕЧНЫЙ ЦИКЛ ОПРОСА КНОПОК
    {
     if(button_0 && p==0)  //проверяем нажатие кнопки 0, если нажата и p=0, продолжаем
        {
         delay;        //антидребезговая задержка
         if(button_0 && p==0) //повторно проверяем, нажата ли кнопка. Если да, то
            {          
                if(i<7) //если еще не сдвинуто 7 раз, то продолжить
                {
                         i++; //увеличить i (номер бита)
             }
              else //иначе установить значение бита = 7
             {
                 i = 7;
                      }
              PORTB = (1<<i); //сдвигаем 1 в порте влево на 1 бит (i-номер бита)
                      LCDstring(array, 10);      
         }
            else continue; //если кнопка не была нажата, то ПРОДОЛЖАТЬ ДАЛЬШЕ ОПРАШИВАТЬ КНОПКИ
        }  
//и так далее на разные вариации с переменной i и выводом ее в порт по нажатию кнопки
   }


Компилятор выдает предупреждение pointer targets in passing argument 1 of 'sprintf' differ in signedness.
На экране дисплея: 0 и далее в строке разные символы.
Работаю в связке WinAVR + AVRStudio4.

Прошу заранее не пинать... wacko.gif

Сообщение отредактировал Sergey529 - Jan 13 2012, 19:45
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- andre583   Вывод на ЖКИ значений переменных.   Mar 7 2008, 15:21
- - Aesthete Animus   Цитата(andre583 @ Mar 7 2008, 18:21) Подс...   Mar 7 2008, 15:27
|- - andre583   Спасибо, все заработало!!!   Mar 7 2008, 15:33
|- - А.Петрович   Цитата(andre583 @ Mar 7 2008, 18:33) Спас...   Mar 20 2008, 08:41
- - MrYuran   sprintf формирует строку символов в памяти. Дальше...   Mar 20 2008, 09:30
|- - А.Петрович   Цитата(MrYuran @ Mar 20 2008, 12:30) spri...   Mar 20 2008, 10:00
- - MrYuran   Вверху - lcd_putsf() внизу - lcd_puts() Хотя, може...   Mar 20 2008, 10:22
|- - А.Петрович   Цитата(MrYuran @ Mar 20 2008, 13:22) Ввер...   Mar 20 2008, 10:41
- - MrYuran   разница только в том, что одна функция берёт строк...   Mar 20 2008, 11:13
|- - А.Петрович   Цитата(MrYuran @ Mar 20 2008, 14:13) Если...   Mar 20 2008, 11:24
|- - MrYuran   Цитата(А.Петрович @ Mar 20 2008, 14:24) В...   Mar 20 2008, 11:47
|- - А.Петрович   Цитата(MrYuran @ Mar 20 2008, 14:47) #inc...   Mar 20 2008, 12:52
- - MrYuran   а может, так попробовать? sprintf(s,"Test...   Mar 20 2008, 13:33
|- - А.Петрович   Цитата(MrYuran @ Mar 20 2008, 16:33) а мо...   Mar 20 2008, 13:40
|- - Goodefine   А если в настройках Project-Configure-C Compiler у...   Mar 20 2008, 13:56
|- - MrYuran   Цитата(Goodefine @ Mar 20 2008, 16:56) А ...   Mar 20 2008, 14:05
|- - А.Петрович   Цитата(Goodefine @ Mar 20 2008, 16:56) А ...   Mar 20 2008, 14:23
|- - Freerider   Здраствуйте , я решил тоже разобраться с HD44780, ...   Sep 9 2008, 06:46
- - А.Петрович   И иеще вопрос, если можно... ? ATMega 8 можно исп...   Mar 21 2008, 13:19
|- - MrYuran   Цитата(А.Петрович @ Mar 21 2008, 16:19) A...   Mar 22 2008, 10:34
|- - XVR   Цитата(А.Петрович @ Mar 21 2008, 17:19) И...   Sep 9 2008, 12:17
- - Herz   Что это за странная команда? ЦитатаPORTB = (1<...   Jan 14 2012, 10:51
|- - Sergey529   Цитата(Herz @ Jan 14 2012, 13:51) Что это...   Jan 14 2012, 11:04
|- - Herz   Цитата(Sergey529 @ Jan 14 2012, 13:04) См...   Jan 14 2012, 11:13
|- - RabidRabbit   Цитата(Herz @ Jan 14 2012, 15:13) Я надея...   Jan 14 2012, 12:46
||- - Herz   Цитата(RabidRabbit @ Jan 14 2012, 14:46) ...   Jan 14 2012, 12:57
||- - mdmitry   Обе конструкции Цитата(Herz @ Jan 14 2012, 1...   Jan 14 2012, 13:48
||- - RabidRabbit   Цитата(Herz @ Jan 14 2012, 16:57) Может, ...   Jan 14 2012, 13:54
|- - Sergey529   Цитата(Herz @ Jan 14 2012, 14:13) Я надея...   Jan 14 2012, 13:24
- - Herz   Да это я Вас запутал, извините. Всё правильно там ...   Jan 14 2012, 14:05
- - Sergey529   Вроде разобрались И все-таки, что делать с преду...   Jan 14 2012, 14:43
- - Alexashka   Цитатаunsigned char array[10]; ЦитатаКомпилятор вы...   Jan 14 2012, 20:32
- - ASDFG123   Подскажите пожалуйста как правильно отображать пер...   May 10 2016, 05:35
- - Lagman   Если вам понятен пример, который вы привели, тогда...   May 11 2016, 07:12
- - ASDFG123   Вообщем частично разобрался. Функция Кодsprintf...   May 16 2016, 17:02


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

 


RSS Текстовая версия Сейчас: 21st August 2025 - 07:20
Рейтинг@Mail.ru


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