summaryrefslogtreecommitdiff
path: root/avr/1wire.c
diff options
context:
space:
mode:
Diffstat (limited to 'avr/1wire.c')
-rw-r--r--avr/1wire.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/avr/1wire.c b/avr/1wire.c
index 54c8dcc..72722df 100644
--- a/avr/1wire.c
+++ b/avr/1wire.c
@@ -238,6 +238,16 @@ uint8_t ds1992_scratch_verify(uint16_t addr, const uint8_t* buf, uint8_t len, ui
return status;
}
+void ds1992_scratch_copy(uint16_t addr, uint8_t es_reg)
+{
+ w1_byte_wr(SKIP_ROM);
+ w1_byte_wr(0x55); // copy scratchpad to memory
+ w1_byte_wr((addr & 0x00FF));
+ w1_byte_wr((addr & 0xFF00) >> 8);
+ w1_byte_wr(es_reg);
+
+ while(w1_byte_rd() != 0);
+}
void w1_command( uint8_t command, uint8_t *id )
{