Lib. for Atmel 1Mbits Serial EEPROM, AT24C1024B
Dependents: LPC1114_data_logger dmx_to_stepper BSM02 LPC1114_barometer_with_data_logging
Revision 3:e2268ee1cb0a, committed 2015-06-07
- Comitter:
- kenjiArai
- Date:
- Sun Jun 07 07:54:11 2015 +0000
- Parent:
- 2:36339fd174d0
- Child:
- 4:1c6bba12f698
- Commit message:
- changed address data type from int to uint32_t
Changed in this revision
AT24C1024.cpp | Show annotated file Show diff for this revision Revisions of this file |
AT24C1024.h | Show annotated file Show diff for this revision Revisions of this file |
--- a/AT24C1024.cpp Sun Feb 22 01:24:19 2015 +0000 +++ b/AT24C1024.cpp Sun Jun 07 07:54:11 2015 +0000 @@ -28,7 +28,7 @@ AT24C1024_addr = AT24C1024ADDR; } -uint8_t AT24C1024::read(int addr) +uint8_t AT24C1024::read(uint32_t addr) { uint8_t eep_dt[2]; uint8_t tmp_addr; @@ -39,12 +39,12 @@ } eep_dt[0] = ( uint8_t )( (addr & 0xff00) >> 8 ); eep_dt[1] = ( uint8_t )( (addr & 0xff) ); - _i2c.write((int)tmp_addr, (char *)eep_dt, 2); - _i2c.read((int)tmp_addr, (char *)eep_dt, 1); + _i2c.write((uint8_t)tmp_addr, (char *)eep_dt, 2); + _i2c.read((uint8_t)tmp_addr, (char *)eep_dt, 1); return eep_dt[0]; } -void AT24C1024::write(int addr, uint8_t dt) +void AT24C1024::write(uint32_t addr, uint8_t dt) { uint8_t eep_dt[3]; uint8_t tmp_addr; @@ -56,7 +56,7 @@ eep_dt[0] = ( uint8_t )( (addr & 0xff00) >> 8 ); eep_dt[1] = ( uint8_t )( (addr & 0xff) ); eep_dt[2] = dt; - _i2c.write((int)tmp_addr, (char *)eep_dt, 3); + _i2c.write((uint8_t)tmp_addr, (char *)eep_dt, 3); } AT24C_STATUS AT24C1024::read_page(uint32_t addr_page_top, uint8_t *dt, int size) @@ -72,8 +72,8 @@ } eep_dt[0] = ( uint8_t )( (addr_page_top & 0xff00) >> 8 ); eep_dt[1] = 0; - _i2c.write((int)tmp_addr, (char *)eep_dt, 2); - _i2c.read((int)tmp_addr, (char *)dt, 256); + _i2c.write((uint8_t)tmp_addr, (char *)eep_dt, 2); + _i2c.read((uint8_t)tmp_addr, (char *)dt, 256); return AT24C_OK; } else { return AT24C_WRONG_TOP_ADDR; @@ -99,7 +99,7 @@ } dt[0] = ( uint8_t )( (addr_page_top & 0xff00) >> 8 ); dt[1] = 0; - _i2c.write((int)tmp_addr, (char *)dt, 256 + 2); + _i2c.write((uint8_t)tmp_addr, (char *)dt, 256 + 2); return AT24C_OK; } else { return AT24C_WRONG_TOP_ADDR;
--- a/AT24C1024.h Sun Feb 22 01:24:19 2015 +0000 +++ b/AT24C1024.h Sun Jun 07 07:54:11 2015 +0000 @@ -6,7 +6,7 @@ * http://www.page.sannet.ne.jp/kenjia/index.html * http://mbed.org/users/kenjiArai/ * Created: June 17th, 2014 - * Revised: Feburary 21st, 2015 + * Revised: June 7th, 2015 * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE @@ -70,13 +70,13 @@ * @param dat_address (0 to 0x1ffff) * @return read data */ - uint8_t read(int addr); + uint8_t read(uint32_t addr); /** Write one data to EEPROM * @param data_address (o to 0x1ffff), data (byte) * @return none */ - void write(int addr, uint8_t dt); + void write(uint32_t addr, uint8_t dt); /** Page read (256 bytes) from EEPROM * @param top_address (o to 0x1ffxx) e.g. 0x00,0x100,0x200 --- 0x1fe00, 0x1ff00