Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: IZU2020_AVIONICS IZU2020_POST_PROCESS IZU2020_AVIONICS
PQEEPROM.h
00001 #ifndef PQEEPROM_H_ 00002 #define PQEEPROM_H_ 00003 00004 /** 00005 * EEPROM 24FC1025のライブラリ 00006 * @note 1つにつき0x000000~0x01FFFFまでのアドレスが指定できます 00007 * @note 2つ使用する場合は0x000000~0x03FFFFまでのアドレスが指定でき、最大4つ同時に使用できます 00008 * @note 1ページは128バイトです 00009 * @note ページをまたぐような書き込みは危険なのでしないこと 00010 * @note 受信バッファは128バイトです 00011 * @code 00012 #include "mbed.h" 00013 #include "PQEEPROM.h" 00014 00015 Serial pc(USBTX, USBRX, 115200); 00016 00017 I2C i2c(p9, p10); 00018 00019 EEPROM eeprom(i2c); 00020 00021 int addr; 00022 char data[128]; 00023 char buff[128]; 00024 00025 int main() 00026 { 00027 addr = 0x000000; 00028 for(int i = 0; i < 128; i++) { 00029 data[i] = 0xFF; 00030 } 00031 eeprom.write(addr, data, 128); 00032 eeprom.read(addr, buff, 128); 00033 for(int i = 0; i < 128; i++) { 00034 pc.printf("%x ", buff[i]); 00035 } 00036 } 00037 * @endcode 00038 */ 00039 class EEPROM 00040 { 00041 private: 00042 I2C *_i2c; 00043 int _addr; 00044 char cmd[130]; 00045 char buff[128]; 00046 00047 public: 00048 /** 00049 * @param i2c I2Cのインスタンスへの参照 00050 */ 00051 EEPROM (I2C &i2c); 00052 00053 /** 00054 * 連続書き込み 00055 * @param addr 書き込みアドレス 00056 * @param data 書き込むデータの配列(最大128バイト) 00057 * @param size 書き込むデータのサイズ 00058 */ 00059 void write(int addr, char *data, int size); 00060 00061 /** 00062 * 連続読み込み 00063 * @param addr 読み込みアドレス 00064 * @param data 読み込むデータの配列(最大128バイト) 00065 * @param size 読み込むデータのサイズ 00066 */ 00067 void read(int addr, char *data, int size); 00068 }; 00069 00070 #endif
Generated on Fri Jul 29 2022 19:49:12 by
1.7.2