SPI-HMC5983 issue

Hi everyone,
I would like to show a problem that I've with HMC5983L by SPI and offer the code that i've written. I would be very greatful if somebody can help me to solve the problem.

// Arduino Code
/*
SS/CS 10
MOSI/SDI 11
MISO/SDO 12
SCK 13
*/
#include <SPI.h>

int CS=10;
char configA=0x00;
char configB=0x01;
char modereg=0x02;
char values[10];
int16_t x;
byte buff;
String val;

void setup() {

SPI.begin();
SPI.setClockDivider(42);
SPI.setDataMode(SPI_MODE2);
Serial.begin(115200);
pinMode(CS,OUTPUT);
digitalWrite(CS,HIGH);
delay(100);
//
digitalWrite(CS,LOW);
SPI.transfer(configA);
SPI.transfer(0xB0);
digitalWrite(CS,HIGH);
delay(50);
//
digitalWrite(CS,LOW);
SPI.transfer(configB);
SPI.transfer(0x80);
digitalWrite(CS,HIGH);
delay(50);
//
digitalWrite(CS,LOW);
SPI.transfer(modereg);
SPI.transfer(0x00);
digitalWrite(CS,HIGH);
delay(50);
Serial.println("Estamos configurando");
}

void loop() {
digitalWrite(CS,LOW);
SPI.transfer(0x83);
values[0]=SPI.transfer(0x00);
digitalWrite(CS,HIGH);
delay(50);
//
digitalWrite(CS,LOW);
SPI.transfer(0x8
4);
values[1]=SPI.transfer(0x00);
digitalWrite(CS,HIGH);
delay(50);

//

x=(((int)values[1])<<8 )|values[0];
Serial.println(x);

}

I'm receiving -1, -1, 0, 0 as values. Which could be the problem?
Thanks in advance.