Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 11.01.2009, 18:46  
DDimon
Временная регистрация
 
Регистрация: 13.05.2008
Сообщений: 88
Сказал спасибо: 2
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
DDimon на пути к лучшему
По умолчанию Вывод переменной на LCD

Нахожусь в раздумьях - как же вывести изменяющуюся переменную на алфавитно-цифровой экранчик?
Код:
 
if (PORTD.F7=0) {
i=8;
};

...
Lcd_Chr(1, 1, 'i');  //так не получается - просто выводит и
...

IntToStr(b, txt);  // пробую преобразовывать в текст (микроС)
Lcd_Chr(1, 1, txt); // все равно ерунду показывает
Как следует поступать в этом случае?
Реклама:
DDimon вне форума  
Непрочитано 11.01.2009, 18:55  
DDimon
Временная регистрация
 
Регистрация: 13.05.2008
Сообщений: 88
Сказал спасибо: 2
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
DDimon на пути к лучшему
По умолчанию

И еще вопросик - беру из АЦП значение в двоизной форме, как его перевести в десятичную? Так почемуто не выходит
Код:
temp_res = Adc_Read(2); // получаю результат преобразования   
Delay_ms(100);          //* Жду на всякий случай :) */
Lcd_Chr(1, 1, temp_res);// не выводит по аналогии с первым пунктом

     b = Bcd2Dec(temp_res);  // Перевожу в DEC
     Lcd_Chr(1, 1, b);       // а оно не пишется :(
DDimon вне форума  
Непрочитано 11.01.2009, 19:05  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,018
Сказал спасибо: 936
Сказали Спасибо 2,270 раз(а) в 1,565 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Керниган и Ричи и функция ITOA -"Integer to ansi "(целое в строку)
тебе в помощь .
Передавать надо не числа а символы.
То есть имеем в переменной 2009 преобразовываем в строку (получается 4 переменных char или строка)и передаем последовательно "32","30","30","39" в десятичном представлении.
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 11.01.2009, 19:12  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,018
Сказал спасибо: 936
Сказали Спасибо 2,270 раз(а) в 1,565 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Cообщи какой компилятор...
Lcd_chr() я так понял выводит char ?
В CCS например так.
Код:
 printf(Lcd_chr(),"строка")
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 11.01.2009, 20:05  
lyk
Гражданин KAZUS.RU
 
Регистрация: 20.05.2005
Сообщений: 660
Сказал спасибо: 40
Сказали Спасибо 186 раз(а) в 116 сообщении(ях)
lyk на пути к лучшему
По умолчанию

Сообщение от DDimon
И еще вопросик - беру из АЦП значение в двоизной форме, как его перевести в десятичную? Так почемуто не выходит
[/code]
У тебя нет папки EXAMPLES ?

/*
* Project name:
ADC_on_LCD (Displaying ADC result on LCD)
* Copyright:
(c) Mikroelektronika, 2005-2008.
* Description:
This code demonstrates how to use library function ADC_read, and library
procedures and functions for LCD display (4 bit interface).
* Test configuration:
MCU: PIC16F877A
Dev.Board: EasyPIC4
Oscillator: HS, 08.0000 MHz
Ext. Modules: LCD
SW: mikroC v8.0.0.0
* NOTES:
On EasyPIC4 jumper should be on RA2 at A-D Converter Input.
*/

#include"built_in.h"

unsigned char ch;
unsigned int adc_rd;
char *text;
long tlong;

void main() {
INTCON = 0; // disable all interrupts
Lcd_Init(&PORTD); // Lcd_Init_EP4, see Autocomplete
LCD_Cmd(LCD_CURSOR_OFF); // send command to LCD (cursor off)
LCD_Cmd(LCD_CLEAR); // send command to LCD (clear LCD)

text = "mikroElektronika"; // assign text to string
LCD_Out(1,1,text); // print string a on LCD, 1st row, 1st column
text = "LCD example"; // assign text to string
LCD_Out(2,1,text); // print string a on LCD, 2nd row, 1st column

ADCON1 = 0x82; // configure VDD as Vref, and analog channels
TRISA = 0xFF; // designate PORTA as input
Delay_ms(5000);
text = "voltage:"; // assign text to string
while (1) {
adc_rd = ADC_read(2); // get ADC value from 2nd channel
LCD_Out(2,1,text); // print string a on LCD, 2nd row, 1st column

tlong = (long)adc_rd * 5000; // covert adc reading to milivolts
tlong = tlong / 1023; // 0..1023 -› 0-5000mV

ch = tlong / 1000; // extract volts digit
LCD_Chr(2,9,48+ch); // write ASCII digit at 2nd row, 9th column
LCD_Chr_CP('.');

ch = (tlong / 100) % 10; // extract 0.1 volts digit
LCD_Chr_CP(48+ch); // write ASCII digit at cursor point

ch = (tlong / 10) % 10; // extract 0.01 volts digit
LCD_Chr_CP(48+ch); // write ASCII digit at cursor point

ch = tlong % 10; // extract 0.001 volts digit
LCD_Chr_CP(48+ch); // write ASCII digit at cursor point
LCD_Chr_CP('V');

Delay_ms(1);
}
}//~!
lyk вне форума  
Непрочитано 11.01.2009, 21:37  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,018
Сказал спасибо: 936
Сказали Спасибо 2,270 раз(а) в 1,565 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Ну так я и знал , что микрос доведет до ручки...
Использование готовых решений , не думая как они устроены до добра не доводят...
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 11.01.2009, 22:51  
lyk
Гражданин KAZUS.RU
 
Регистрация: 20.05.2005
Сообщений: 660
Сказал спасибо: 40
Сказали Спасибо 186 раз(а) в 116 сообщении(ях)
lyk на пути к лучшему
По умолчанию

Сообщение от dosikus
Ну так я и знал , что микрос доведет до ручки...
Использование готовых решений , не думая как они устроены до добра не доводят...
Готовых решений хватает и в других компиляторах, никто не заставляет ими пользоваться.
Чем плох микроС -это размером хекса и кривым отладчиком, и то и другое погоды не делает. Первое решается более мощным МК, второе -транслятором в MPlab.
Радует то что куча примеров и практически все примеры запускаются и работают, невысокая цена софта.
Для начинающих самый привлекательный софт.
lyk вне форума  
Непрочитано 12.01.2009, 01:32  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,018
Сказал спасибо: 936
Сказали Спасибо 2,270 раз(а) в 1,565 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Сообщение от lyk
Радует то что куча примеров и практически все примеры запускаются и работают...
Меня честно говоря уже достают эти "религиозные войны" , так что переубеждать не буду.
Но такие "мелкие" неудобства как несовместимость с остальными программами ( mplab ,proteus) отсутствие поддержки ICD2 и PICKIT ,а также закрытость либ(соласитесь - новичку намного полезнее переделать под себя существующую и учится на ней, чем писать заного и тем более не понимать что происходит внутри), сводят на нет все видимые удобства .
Насчет работоспособности примеров - в ccs и hi-tech так же примеры рабочии.
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 12.01.2009, 22:33  
DDimon
Временная регистрация
 
Регистрация: 13.05.2008
Сообщений: 88
Сказал спасибо: 2
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
DDimon на пути к лучшему
По умолчанию

to dosikus
Буду пробовать, спасибо за доходчивое разьяснение. А про компилятор в моем посте меленько так написано "микроС"
А про неудобства этто точно, даже coff'a нету, ну и так по мелочи, но все же я согласен с lyk'ом.
DDimon вне форума  
Непрочитано 12.01.2009, 22:36  
DDimon
Временная регистрация
 
Регистрация: 13.05.2008
Сообщений: 88
Сказал спасибо: 2
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
DDimon на пути к лучшему
По умолчанию

to lyk
Про примеры это я немного с тормозил Обещаю исправиться и не быть таким нубом
DDimon вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AVR,PIC вывод на VGA , TV,LCD zloy2005 Микроконтроллеры, АЦП, память и т.д 83 07.01.2010 19:36
Вывод русского языка на LCD. uhbwtyrj1987 Микроконтроллеры, АЦП, память и т.д 24 12.06.2008 19:55
LCD,как редактировать любую цифру переменной? MAX1978 Микроконтроллеры, АЦП, память и т.д 2 04.08.2007 14:29
LCD DEM16216 инвертный вывод символов ajborman Микроконтроллеры, АЦП, память и т.д 8 02.06.2007 00:00
Вывод состояния через 1 вывод DL36 Микроконтроллеры, АЦП, память и т.д 0 16.11.2006 14:27


Часовой пояс GMT +4, время: 09:54.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot