Skip to content
Snippets Groups Projects
Commit 4546663b authored by Sergi Hernandez's avatar Sergi Hernandez
Browse files

Solved a bug in the head tracking pan and tilt target values storing into memory.

parent a0cda6e9
No related branches found
No related tags found
No related merge requests found
......@@ -249,17 +249,33 @@ void head_tracking_process_write_cmd(unsigned short int address,unsigned short i
}
if(ram_in_window(DARWIN_HEAD_PAN_TARGET_L,2,address,length))
{
target=head_tracking_pan.target_angle;
if(ram_in_range(DARWIN_HEAD_PAN_TARGET_L,address,length)) target=(target&0xFF00)|data[DARWIN_HEAD_PAN_TARGET_L-address];
if(ram_in_range(DARWIN_HEAD_PAN_TARGET_H,address,length)) target=(target&0x00FF)|(data[DARWIN_HEAD_PAN_TARGET_H-address]<<8);
head_tracking_pan.target_angle=target;
target=(head_tracking_pan.target_angle>>9);
if(ram_in_range(DARWIN_HEAD_PAN_TARGET_L,address,length))
{
target=(target&0xFF00)|data[DARWIN_HEAD_PAN_TARGET_L-address];
ram_data[DARWIN_HEAD_PAN_TARGET_L]=data[DARWIN_HEAD_PAN_TARGET_L-address];
}
if(ram_in_range(DARWIN_HEAD_PAN_TARGET_H,address,length))
{
target=(target&0x00FF)|(data[DARWIN_HEAD_PAN_TARGET_H-address]<<8);
ram_data[DARWIN_HEAD_PAN_TARGET_H]=data[DARWIN_HEAD_PAN_TARGET_H-address];
}
head_tracking_pan.target_angle=(target<<9);
}
if(ram_in_window(DARWIN_HEAD_TILT_TARGET_L,2,address,length))
{
target=head_tracking_tilt.target_angle;
if(ram_in_range(DARWIN_HEAD_TILT_TARGET_L,address,length)) target=(target&0xFF00)|data[DARWIN_HEAD_TILT_TARGET_L-address];
if(ram_in_range(DARWIN_HEAD_TILT_TARGET_H,address,length)) target=(target&0x00FF)|(data[DARWIN_HEAD_TILT_TARGET_H-address]<<8);
head_tracking_tilt.target_angle=target;
target=(head_tracking_tilt.target_angle>>9);
if(ram_in_range(DARWIN_HEAD_TILT_TARGET_L,address,length))
{
target=(target&0xFF00)|data[DARWIN_HEAD_TILT_TARGET_L-address];
ram_data[DARWIN_HEAD_TILT_TARGET_L]=data[DARWIN_HEAD_TILT_TARGET_L-address];
}
if(ram_in_range(DARWIN_HEAD_TILT_TARGET_H,address,length))
{
target=(target&0x00FF)|(data[DARWIN_HEAD_TILT_TARGET_H-address]<<8);
ram_data[DARWIN_HEAD_TILT_TARGET_H]=data[DARWIN_HEAD_TILT_TARGET_H-address];
}
head_tracking_tilt.target_angle=(target<<9);
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment