Добрый день,ни как не могу разобраться в чем у меня ошибка.При обращение к функции 2-й раз происходит следующее вместо печать нормальной строки начальные буквы пропадают.
flash unsigned char ish_str_0[74]={' ',66,195,99,111,186,184,185,32,121,112,111,179,101,189,196,32,99,184,180,189,97,187,97,32,99,32,227,97,191,192,184,186,97,32,112,97,99,120,111,227,97,32,179,111,183,227,121,120,97,' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '};
flash unsigned char ish_str_1[21]={' ',72,101,191,32,179,32,99,190,184,99,186,101,32,111,193,184,178,111,186,' '};
.......
.......
.......
/************************************************************************************
                               Функция LCD бегущая стоки 
************************************************************************************/
beg_stroka(int stroka)
{
unsigned char i;
unsigned char ish_str[70];      
switch(stroka) 
   {
   case 0:
         for(i=0;i<73;i++)
            {
             ish_str[i]=ish_str_0[i];
            }
            break;
   case 1:
         for(i=0;i<20;i++)
            {
            ish_str[i]=ish_str_1[i];
            }
            break;
    };
if(beg_str) {
for(i=0;i<16;i++)lcd_write_byte(0xC0+i,lcd_read_byte(0xC1+i));// установка позиций курсора
    beg_str=0;
    // запись очередного символа в крайний правую позицию
    lcd_gotoxy(15,1);  
    lcd_putchar(ish_str[n_sim]); 
    if(++n_sim>m_end)n_sim=0;
    }
}
вот обращение к функции
case 1:
 beg_stroka(0);   
for(w=0;w<73;w++)
{
beg_str=1;//разрешение бегущей строки
beg_stroka(0);
     
 beg_str=0;
delay_ms(200); 
}
lcd_clear();// очиста LCВ
break;
 
При при обращение к следующиму case начальные буквы пропадают.
Подскажите в чем проблема?Может у кого есть еще варианты как организовать бегущую строку.
			
		

 отформатировал немного эти каракули
 отформатировал немного эти каракули