Лагает код для atmega8535 / lcd !!!

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
MyXaSA
Первый раз сказал Мяу!
Сообщения: 20
Зарегистрирован: Сб фев 18, 2012 18:05:14

Лагает код для atmega8535 / lcd !!!

Сообщение MyXaSA »

Элементы выбираются и выводятся нормально на дисплей. Но когда я жму кнопку выбрать(ентер как бэ) то диод загорается, но при этом виснет "меню"... думаю в коде дело. т.к 4 мгц должно хватить на эти пару строк.:

Код: Выделить всё

#include <mega8535.h>
  #include <delay.h>
   #include <stdio.h>
#asm
   .equ __lcd_port=0x1B ;PORTA
#endasm
#include <lcd.h>
         int i = 0;
         int up_key = 0;
         int enter_key = 0;
         int selected;
         int lamp1 = 0;
char *bb[] = { "Settings", "Lamp 1", "Lamp 2", "Backlig.","point4","point5","point6" };
void main(void)
{
PORTA=0x00;
DDRA=0x00;

DDRB=0x00;
PORTB=0xFF;

PORTC=0x00;
DDRC=0x00;

DDRD=0xff;
 
// LCD module initialization
lcd_init(8);
 //sprintf( buffer,"abc""abc %s","abc" );
while (1)
      {
        if(PINB.0 == 0){
             if(up_key == 0){
              lcd_clear( );
              if(i >=(sizeof(bb)/sizeof(int))){ i = 0; }        
              
                     i++;
               lcd_gotoxy(0,0);
               lcd_puts(bb[i]);
               selected = i;
               lcd_gotoxy(0,1);
               if(i+1 >=  (sizeof(bb)/sizeof(int))){
               lcd_putsf("--------");
                }else{
               lcd_puts(bb[i+1]);
                 } 
                  lcd_gotoxy(7,0 );
                   lcd_putchar(0xff);
               }
                 up_key = 1;
         }else{ up_key = 0; }
         
          if(PINB.1 == 0){
            if(enter_key == 0){
               PORTD.6 = 0xff;
   /*    if(selected == 1){
      if(!lamp1){
       lamp1 = 0;
        PORTD.6 = 0x00;
      } 
      if(lamp1){
        lamp1 = 1;
      PORTD.6 = 0xff;
      }    
        enter_key = 1;
       }*/
      }
      } else{
      enter_key = 0;
       
        }    
         } 
}
Реклама
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»