Pravděpodobně máš někde jedno rovnítko místo dvou.
if (x = 3) …
K takovému dotazu je dobré přidat příslušný kousek kódu.
V prvním kódu chybí na konci složená závorka. Možná by bylo lepší psát tyto závorky pod sebe aby bylo vidět jejich párování.
for (i = 0; i < 255 ; i++)
{
if(!(PINC & (1<<PC3)))
obsah* = 0x01;
else
obsah*= 0x00;
}
Ve druhém kódu musíš mazat displej, jinak se data zobrazují stále za sebou.
for (i=0; i <255;i++)
{
sprintf (buffer, "obsah%d] = %d", i, obsah*);
lcd_clrscr();
lcd_puts(buffer);
_delay_ms(1000);
}
Doporučoval bych začít nové vlákno, dotazy už nemají s původním názvem nic společného.***