2015-04-27 13 views
0

我在arduino IDE編碼,所以基本上是C++。我需要使用一個只有1個字節的變量用於傳輸目的,但我需要對其進行簽名。如何使用char值作爲簽名變量

更具體地說,我需要發送一個int(2字節),但是這個int有2個值,其中一個是字節,因爲我不關心符號,因爲它總是正數,但另一個我需要它包括負面信息。

我正在做這樣的事情。

turn = -120 
int PromedioD_turn = PromedioD << 8 | (turn & 0b11111111); 
Serial.println("test"); 
Serial.println(PromedioD); 
Serial.println(turn & 0b11111111,DEC);  //this is printing as 136 
Serial.println(PromedioD_turn); 

我不明白爲什麼或如何解決這個問題,我需要能夠發送的價值,也打破了以後。

+3

'int8_t'或'簽署char' – bolov

回答

0

由於通過向中int8_t我@bolov可以轉換它巴赫簽署價值

int PromedioD_turn = PromedioD << 8 | turn & 0b11111111; 
Serial.println("test"); 
Serial.println(PromedioD); 
Serial.println(turn); 
Serial.println(PromedioD_turn); 
Serial.println(int8_t(PromedioD_turn &0b11111111));