static void ds1820_write_byte(uint8_t byte){ delay_us(100); portENTER_CRITICAL(); int ii; for (ii = 0; ii < 8; ii++) { if (byte&0x01){ ds1820_write_bit(1); // printf("1 written\r\n\0"); } else { ds1820_write_bit(0); //printf("0 written\r\n\0"); } byte = byte>>1; } portEXIT_CRITICAL(); }
/*Write one BYTE to 1-wire data line*/ void ds1820_write_byte(uint8_t byte, int sensor){ for(int i = 0; i < 8; i++){ ds1820_write_bit((byte & (1<<i)), sensor); } }