Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: avr и lcd
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > MCS51, AVR, PIC, STM8, 8bit
Viktor110668
пишу на cvavr вывод из переменной на дисплей а дисплей чистый и ничего некажет


#include <mega8.h>
#include <delay.h>
#include <stdio.h>
#include <lcd.h>
#asm
.equ __lcd_port=0x12; PORTD /* ÆÊÈ äèñïëåé ïîäêëþ÷èëè ê ïîðòó I/O D */
#endasm
unsigned int s = 5000;
int tmp;

void main(void)
{

lcd_init( 16 );
lcd_clear( );
lcd_gotoxy( 1,0 );

DDRB = 0x00; //ñòàâèì âñå ëàïêè ïîðòà B íà âõîä
PORTB = 0x00;

DDRD = 0xff; //ñòàâèì âñå ëàïêè ïîðòà D íà âûõîä
PORTD = 0x00;
DDRC = 0xff; //ñòàâèì âñå ëàïêè ïîðòà D íà âûõîä
PORTC = 0x00;
lcd_init(16);
delay_ms(100);
while(1) //áåñêîíå÷íûé öèêë
{
#asm("cli")
tmp = s;
#asm("sei")
if (PINB.1==0) {
(s=s++) ;
}
if (PINB.2==1) {
(s=s--);
}

if (PINB.0==0) /* "ÅÑËÈ íà ïîðò Á îáíàðóæåíî íàïðÿæåíèå"; '==' - îçíà÷àåò ñðàâíåíèå, à '=' - ïðèñâàèâàíèå çíà÷åíèÿ. Êîãäà ëàïêà ïîðòà íàçíà÷åíà íà âõîä, òî â óñëîâèè ìû óæå ïèøåì íå PORT, à PIN.*/
{
PORTC.0=1;
}
else
{
PORTC.0=0;
};
if (PINB.0==0) {
delay_ms(tmp);
PORTC.1=1;
}
else {
PORTC.1=0;
}


lcd_gotoxy( 1,1 ); /* çàïîëíÿåì ñèìâîëîì 2-óþ ñòðîêó îò 0 äî 15 */
lcd_putchar( tmp ); /* Ñèìâîë çàïîëíåííîãî çíàêîìåñòà èç òàáëèöû êîäîâ ñèìâîëîâ */
delay_ms( 50 );
} ;
}
Vetal-Soft
RTFM
В lcd_putchar( tmp ) переменная tmp должнабыть типа char и должна содержать в себе код символа в соответствии с таблицей знакогенератора вашего дисплея. Эта функция используется для вывода одного символа!

Если хотите вывести переменную на экран в читаемом виде надо использовать printf или sprintf.
Viktor110668
непойдет !!!
функция printf сразу задействует usart и в протеусе выдает кучу ошибок
Vetal-Soft
Используйте sprintf:
Код
char lcd_buffer[33];

sprintf(lcd_buffer,"%i",tmp);
lcd_puts(lcd_buffer);


ну и еще надо начать пользоваться хэлпом к вашему компилятору.
_Pasha
АВР и ЛЦД...
Мартышко и очко ...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.