]> rtime.felk.cvut.cz Git - sysless.git/blobdiff - arch/arm/mach-lpc23xx/libs/1-wire/ds18s20.c
lpc23xx library - updated 1 wire driver and driver for ds18S20. It still needs some...
[sysless.git] / arch / arm / mach-lpc23xx / libs / 1-wire / ds18s20.c
index afa10787a4a748e6f815d76a8c81d346f9e920c5..f6db496c57ec41ce089ef8b852406ae164c98745 100644 (file)
@@ -37,26 +37,24 @@ uint8_t read_temp(struct ds18s20_dev * dev)
        uint8_t i, crc =0, data[9];
        int16_t temp =0;
 
-       init_1_wire(dev->port, dev->pin, 72000000/4);
+       init_1_wire(dev->port, dev->pin_read, dev->pin_write, 72000000/4);
                
-       if( Detect_Slave_Device())
+       if(  wire_detect_device())
                return DEVICE_NOT_FOUND;
                
        
-       OW_reset_pulse();
-       OW_write_byte (0xCC);           // Send a command to prepare read temp
-       OW_write_byte (0x44);
+       wire_reset();
+       wire_write_byte (0xCC);         // Send a command to prepare read temp
+       wire_write_byte (0x44);
 
-       T3TCR = 1;
-       while(T3TC < ( (72000000/4/100000) * 6));
-       T3TCR = 3;
+       wire_delay(6);
 
-       OW_reset_pulse();
-       OW_write_byte (0xCC);           // Read temp
-       OW_write_byte (0xBE);   
+       wire_reset();
+       wire_write_byte (0xCC);         // Read temp
+       wire_write_byte (0xBE); 
 
        for(i = 0; i < 9; i++)
-                       data[i] = OW_read_byte();       // Read 64-bit registration (48-bit serial number) number from 1-wire Slave Device
+                       data[i] = wire_read_byte();     // Read 64-bit registration (48-bit serial number) number from 1-wire Slave Device
 
        for(i = 0; i < 8; i++)
                update_crc(data[i], &crc);