|
|
@@ -57,16 +57,22 @@ uint8_t DS28EC20_writeMem(uint16_t addr, uint8_t size) {
|
|
|
|
|
|
owWriteByte(CMD_READ_SCRATCHPAD, OW_STRONG_OFF); //0xAA
|
|
|
uint8_t tempVal = owReadByte();
|
|
|
- if (tempVal != TA1) return 1;
|
|
|
+ if (tempVal != TA1) {
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
|
|
|
tempVal = owReadByte();
|
|
|
- if (tempVal != TA2) return 2;
|
|
|
+ if (tempVal != TA2) {
|
|
|
+ return 2;
|
|
|
+ }
|
|
|
|
|
|
uint8_t ES = owReadByte();
|
|
|
|
|
|
for (i = 0 ; i < size; i++) {
|
|
|
tempVal = owReadByte();
|
|
|
- if (tempVal != mem_page.buffer_tx[i]) return i+10;
|
|
|
+ if (tempVal != mem_page.buffer_tx[i]) {
|
|
|
+ return i + 10;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
HAL_Delay(10);
|
|
|
@@ -102,6 +108,13 @@ uint16_t DS28EC20_readData2B(uint16_t address) {
|
|
|
return data16;
|
|
|
}
|
|
|
|
|
|
+uint8_t DS28EC20_readData1B(uint16_t address) {
|
|
|
+ mem_page.buffer_rx[1] = mem_page.buffer_rx[0] = 0;
|
|
|
+ DS28EC20_readMem(address, 1);
|
|
|
+ uint8_t data8 = mem_page.buffer_rx[0];
|
|
|
+ return data8;
|
|
|
+}
|
|
|
+
|
|
|
|
|
|
uint8_t DS28EC20_writeData4B(uint32_t data, uint16_t adr) {
|
|
|
mem_page.buffer_tx[0] = data>>24;
|
|
|
@@ -117,11 +130,24 @@ uint8_t DS28EC20_writeData2B(uint16_t data, uint16_t adr) {
|
|
|
return DS28EC20_writeMem(adr,2);
|
|
|
}
|
|
|
|
|
|
+uint8_t DS28EC20_writeData1B(uint8_t data, uint16_t adr) {
|
|
|
+ mem_page.buffer_tx[0] = (data) & 0xFF;
|
|
|
+ return DS28EC20_writeMem(adr,1);
|
|
|
+}
|
|
|
+
|
|
|
uint8_t DS28EC20_getId(uint8_t* data) {
|
|
|
owGetROM(mem_page.ROM);
|
|
|
memcpy(data, mem_page.ROM, 8);
|
|
|
return 8;
|
|
|
}
|
|
|
+
|
|
|
+/**
|
|
|
+ * Return capacity in Bytes
|
|
|
+ */
|
|
|
+uint32_t DS28EC20_getCapacity(void) {
|
|
|
+ return 2560;
|
|
|
+}
|
|
|
+
|
|
|
/*
|
|
|
uint8_t DS28EC20_writeData4char(uint8_t *data, uint16_t adr) {
|
|
|
mem_page.buffer_tx[0] = data[0];
|