
I have a struct as below:
struct Five_Bytes_struct {
  unsigned char B0;
  unsigned char B1;
  unsigned char B2;
  unsigned char B3;
  unsigned char B4;

};

struct Five_Bytes_struct data Active_Value _at_ 0x25;
I use KeilC to write function below:
void Inc_Data()
{
   Active_Value.B0 = Active_Value.B0+1;
}

Use adjust function to decimal adjust written in assembly    :
_Adjust:
    USING 0
        MOV   R1,AR7 //Want to get Active_Value.B0 ? Is this True?

        MOV   A,@R1        
        CJNE  A, #32,Not_Eq1
        SJMP  Inc_Data
Not_Eq1:
    JC    END22
Inc_Data:
    SUBB  A,#32
    MOV   @R1,A    
    MOV   R0, #0x01
	
    INC	  R1
    CLR   C
    MOV   A,@R1		
    ADD   A, R0                 
    DA    A
    MOV   @R1,A
......

I using this _Adjust function in C as header below:
   void Adjust(char data *Pointer);
Call this in main function:
void main()
{
   ...
   Adjust(&Active_Value.B0);
...
}
But in see it on the LCD screen, the value is not true.
Anyone can show me how can I do?
