mirror of
https://github.com/sascha-hemi/Logitech-Z906.git
synced 2026-03-21 05:06:26 +01:00
Add files via upload
This commit is contained in:
12
src/Z906.cpp
12
src/Z906.cpp
@@ -29,7 +29,7 @@ int Z906::update(){
|
|||||||
for(int i = 0; i < STATUS_TOTAL_LENGTH; i++) status[i] = dev_serial->read();
|
for(int i = 0; i < STATUS_TOTAL_LENGTH; i++) status[i] = dev_serial->read();
|
||||||
|
|
||||||
if (status[STATUS_STX] != EXP_STX) return 0;
|
if (status[STATUS_STX] != EXP_STX) return 0;
|
||||||
if (status[STATUS_MODEL] != EXP_MODEL) return 0;
|
if (status[STATUS_MODEL] != EXP_MODEL_STATUS) return 0;
|
||||||
if (status[STATUS_CHECKSUM] == LRC(status, STATUS_TOTAL_LENGTH)) return 1;
|
if (status[STATUS_CHECKSUM] == LRC(status, STATUS_TOTAL_LENGTH)) return 1;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@@ -38,12 +38,14 @@ int Z906::update(){
|
|||||||
|
|
||||||
int Z906::request(uint8_t cmd){
|
int Z906::request(uint8_t cmd){
|
||||||
|
|
||||||
update();
|
if(update())
|
||||||
|
{
|
||||||
if(cmd == VERSION) return status[STATUS_VER_C] + 10 * status[STATUS_VER_B] + 100 * status[STATUS_VER_A];
|
if(cmd == VERSION) return status[STATUS_VER_C] + 10 * status[STATUS_VER_B] + 100 * status[STATUS_VER_A];
|
||||||
if(cmd == CURRENT_INPUT) return status[STATUS_CURRENT_INPUT] + 1;
|
if(cmd == CURRENT_INPUT) return status[STATUS_CURRENT_INPUT] + 1;
|
||||||
|
|
||||||
return status[cmd];
|
return status[cmd];
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int Z906::cmd(uint8_t cmd){
|
int Z906::cmd(uint8_t cmd){
|
||||||
@@ -100,8 +102,10 @@ uint8_t Z906::main_sensor(){
|
|||||||
if (millis() - currentMillis > SERIAL_TIME_OUT) return 0;
|
if (millis() - currentMillis > SERIAL_TIME_OUT) return 0;
|
||||||
|
|
||||||
uint8_t temp[TEMP_TOTAL_LENGTH];
|
uint8_t temp[TEMP_TOTAL_LENGTH];
|
||||||
|
|
||||||
for(int i = 0; i < TEMP_TOTAL_LENGTH; i++) temp[i] = dev_serial->read();
|
for(int i = 0; i < TEMP_TOTAL_LENGTH; i++) temp[i] = dev_serial->read();
|
||||||
|
|
||||||
|
if(temp[2] != EXP_MODEL_TEMP) return 0;
|
||||||
|
|
||||||
return temp[7];
|
return temp[7];
|
||||||
}
|
}
|
||||||
@@ -94,7 +94,8 @@ uint8_t main_sensor();
|
|||||||
private:
|
private:
|
||||||
|
|
||||||
const uint8_t EXP_STX = 0xAA;
|
const uint8_t EXP_STX = 0xAA;
|
||||||
const uint8_t EXP_MODEL = 0x0A;
|
const uint8_t EXP_MODEL_STATUS = 0x0A;
|
||||||
|
const uint8_t EXP_MODEL_TEMP = 0x0C;
|
||||||
|
|
||||||
const uint8_t STATUS_STX = 0x00;
|
const uint8_t STATUS_STX = 0x00;
|
||||||
const uint8_t STATUS_MODEL = 0x01;
|
const uint8_t STATUS_MODEL = 0x01;
|
||||||
|
|||||||
Reference in New Issue
Block a user