> >Den skal styre en uP der skal genere et videosignal. PIC'en skal sende
nogle
> >otte-bit signaler på en port
> Hvad med :
>
> void send(char command){
> register unsigned char bit;
>
> // Wait for BUSY signal to go low
> while(BUSY==1);
>
> for(bit=0;bit<8;bit++)
> {
> // Send data bits
> CLOCK = 0; // Clock low level must be at least 700 nS
> DATA = (command & (1<<bit));
> CLOCK = 1; // Clock high level must be at least 700 nS
> }
>
> Denne vil sende din byte ud med lsb først.
>
> Hvis du skal bruge msb først så prøv
> for(bit=8;bit<=0;--bit)
Det ligner jo lige det jeg mangler, men det virker ikke helt.
For det første er bit et reserveret or, men det kan jeg jo nemt klare
Nu får jeg en fejl, der siger: Can't generate code for this expression. Det
er linien med DATA = ... der fejler. De kommandoer, der blive sendt er
defineret med #define EnKommando 0x.. (og er naturligvus mindre end oxFF).
Hvad betyder register?
mvh
Stefan