MOVFF INDF0,PORTB //当前空间的值放入PORTB 这句话是用汇编读的,汇编读得是对的,如上面蓝色的图显示,但用C语言读得不对,我该怎么办?
#define DBYTE ((unsigned char volatile*)0x100) //指向100h
#asm
LFSR 0, 0x1ff
LOOP:
BSF PORTC,0 //RC0=1
BCF PORTC ,0 //RC0=0
MOVF PORTD, W //将PORTD,即AD转换的值写入W
MOVWF INDF0 //w写入当前指向的空间
MOVFF INDF0,PORTB //当前空间的值放入PORTB
MOVWF POSTINC0 //w写入POSTINC0,指针加一
BTFSS FSR0H ,1
CALL LOOP
#endasm
while(i<255)
{
a[i]=DBYTE[i];//偏移i
PORTC=1;
PORTC=0;
PORTB=a[i];
i++;
}
|