Fujitsu MB85RCxx I2C FRAM test program
Dependencies: mbed MB85RCxx_I2C
Connectivity
MB82RCxx pin | mbed LPC1114FN28 pin | mbed LPC1768 pin | Arudino form factor |
---|---|---|---|
1 (A0) | 22 (GND) | 1 (GND) | GND |
2 (A1) | 22 (GND) | 1 (GND) | GND |
3 (A2) | 22 (GND) | 1 (GND) | GND |
4 (VSS) | 22 (GND) | 1 (GND) | GND |
5 (SDA) | 2 (dp5) | 9 (p9) | D14 |
6 (SCL) | 6 (dp27) | 10 (p10) | D15 |
7 (WP) | 22 (GND) | 1 (GND) | GND |
8 (VDD) | 21 (VDD) | 40 (VOUT) | 3V3 |
Note
SDA and SCL must be pulled-up by 2.2k-ohm registers.
main.cpp
- Committer:
- MACRUM
- Date:
- 2017-04-22
- Revision:
- 1:e15a9be72b69
- Parent:
- 0:7e86fd056d40
File content as of revision 1:e15a9be72b69:
#include "mbed.h" #include "MB85RCxx_I2C.h" DigitalOut myled(LED1); Serial pc(USBTX, USBRX); #if defined(TARGET_LPC1768) MB85RCxx_I2C fram(p9, p10); #elif defined(TARGET_LPC1114) MB85RCxx_I2C fram(dp5, dp27); #else MB85RCxx_I2C fram(D14, D15); #endif int main() { char buf[16]; uint32_t address; pc.baud(115200); pc.printf("\nFujitsu MB85RCxxx FRAM test program\n\n"); fram.read_device_id(buf); pc.printf("read device ID = 0x%x 0x%x 0x%x\n\n", buf[0], buf[1], buf[2]); fram.fill(0, 0, 256); for (int i = 0; i < 16; i++) { buf[i] = i; } fram.write(0, buf, 16); for (address = 0; address < 0x80; address += 16) { fram.read(address, buf, 16); pc.printf("%08X : ", address); for (int i = 0; i < 16; i++) { pc.printf("%02X ", buf[i]); } pc.printf("\n"); } pc.printf("\n"); for (address = 0; address < 0x100; address++) { fram.write(address, (uint8_t)address); } for (address = 0; address < 0x100; address += 16) { fram.read(address, buf, 16); pc.printf("%08X : ", address); for (int i = 0; i < 16; i++) { pc.printf("%02X ", buf[i]); } pc.printf("\n"); } while(1) { myled = 1; wait(0.2); myled = 0; wait(0.2); } }