SPI EEPROM Nucleo F767ZI 25LC1024 Serial Read Write Erase

Dependencies:   EE25LC1024

Files at this revision

API Documentation at this revision

Comitter:
shivanandgowdakr
Date:
Fri Jun 01 12:57:29 2018 +0000
Commit message:
SPI EEPROM Nucleo F767ZI 25LC1024 Serial Read Write Erase

Changed in this revision

.gitignore Show annotated file Show diff for this revision Revisions of this file
EE25LC1024.lib Show annotated file Show diff for this revision Revisions of this file
README.md Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed-os.lib Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/.gitignore	Fri Jun 01 12:57:29 2018 +0000
@@ -0,0 +1,4 @@
+.build
+.mbed
+projectfiles
+*.py*
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/EE25LC1024.lib	Fri Jun 01 12:57:29 2018 +0000
@@ -0,0 +1,1 @@
+https://os.mbed.com/users/shivanandgowdakr/code/EE25LC1024/#81848bf6dd4a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README.md	Fri Jun 01 12:57:29 2018 +0000
@@ -0,0 +1,57 @@
+# Getting started with Blinky on mbed OS
+
+This guide reviews the steps required to get Blinky working on an mbed OS platform.
+
+Please install [mbed CLI](https://github.com/ARMmbed/mbed-cli#installing-mbed-cli).
+
+## Import the example application
+
+From the command-line, import the example:
+
+```
+mbed import mbed-os-example-blinky
+cd mbed-os-example-blinky
+```
+
+### Now compile
+
+Invoke `mbed compile`, and specify the name of your platform and your favorite toolchain (`GCC_ARM`, `ARM`, `IAR`). For example, for the ARM Compiler 5:
+
+```
+mbed compile -m K64F -t ARM
+```
+
+Your PC may take a few minutes to compile your code. At the end, you see the following result:
+
+```
+[snip]
++----------------------------+-------+-------+------+
+| Module                     | .text | .data | .bss |
++----------------------------+-------+-------+------+
+| Misc                       | 13939 |    24 | 1372 |
+| core/hal                   | 16993 |    96 |  296 |
+| core/rtos                  |  7384 |    92 | 4204 |
+| features/FEATURE_IPV4      |    80 |     0 |  176 |
+| frameworks/greentea-client |  1830 |    60 |   44 |
+| frameworks/utest           |  2392 |   512 |  292 |
+| Subtotals                  | 42618 |   784 | 6384 |
++----------------------------+-------+-------+------+
+Allocated Heap: unknown
+Allocated Stack: unknown
+Total Static RAM memory (data + bss): 7168 bytes
+Total RAM memory (data + bss + heap + stack): 7168 bytes
+Total Flash memory (text + data + misc): 43402 bytes
+Image: .\.build\K64F\ARM\mbed-os-example-blinky.bin
+```
+
+### Program your board
+
+1. Connect your mbed device to the computer over USB.
+1. Copy the binary file to the mbed device.
+1. Press the reset button to start the program.
+
+The LED on your platform turns on and off.
+
+## Troubleshooting
+
+If you have problems, you can review the [documentation](https://os.mbed.com/docs/latest/tutorials/debugging.html) for suggestions on what could be wrong and how to fix it.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Fri Jun 01 12:57:29 2018 +0000
@@ -0,0 +1,78 @@
+
+// SPI Single IO NOR eeprom Library for Nucleo F767ZI Interfacing
+
+
+
+#include "mbed.h"
+#include "EE25LC1024.h"
+#include <string>
+
+Serial pc(USBTX, USBRX); // tx, rx
+DigitalOut WP(D7);
+int main()
+{
+    
+    char str2[24] = {0};
+    char str3[24] = {0};
+    char str4[24] = {0};
+    
+    
+    WP=1;
+    EE25LC1024 eeprom(PA_7, PA_6, PA_5, PA_4);
+    pc.printf("SPI init done\r\n\r\n");
+  
+    // Read Identification information Related to chip.
+
+  int ID = eeprom.ReleaseDPD_ReadSign();
+  printf("ID  and Signature is :%d",ID);
+
+    wait(1);
+    // Reading eeprom Memory Status Register contents.
+
+ 
+
+    eeprom.readStream(0x00, str2, 23);
+    pc.printf("After Read 1 String Here: %s\r\n",str2);
+    eeprom.readStream(23, str4, 23);
+    pc.printf("After Read 2 String Here: %s\r\n",str2);
+    eeprom.readStream(46, str3, 23);
+    pc.printf("After Read 3 String Here: %s\r\n",str2);
+
+// write a stream of characters to arbitrary address 0x168
+    char stri[] = "Shivanand Gowda Ramaiah";
+
+    pc.printf("Writing String Here: %s\r\n",stri);
+    eeprom.writeStream(0x00, stri, 23); //Writing Strings in three Differnt addresses.
+    eeprom.writeStream(23, stri, 23);
+    eeprom.writeStream(46, stri, 23);
+    
+//   
+//    uint8_t a=eeprom.readRegister();
+//    read stream from 0x168
+    
+    pc.printf("Before String Here: %s\r\n",str2);
+    eeprom.readStream(0x00, str2, 23);
+    pc.printf("After Read 1 String Here: %s\r\n",str2);
+    eeprom.readStream(23, str4, 23);
+    pc.printf("After Read 2 String Here: %s\r\n",str2);
+    eeprom.readStream(46, str3, 23);
+    pc.printf("After Read 3 String Here: %s\r\n",str2);
+//
+//    for(int i=0; i<20;i++)
+//    pc.printf("Printing byte by byte %c\r\n",str2[i]);
+
+
+   // eeprom.sectorErase(0x00);
+//    while(1) {
+//        uint8_t busy=eeprom.checkIfBusy();
+//        if(busy==0) {
+//            pc.printf("Not  Busy any More \r\n");
+//            break;
+//        } else if (busy==1)
+//            pc.printf("Busy Now \r\n");
+//    }
+
+    pc.printf("Exited from program  \r\n");
+    return 0;
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed-os.lib	Fri Jun 01 12:57:29 2018 +0000
@@ -0,0 +1,1 @@
+https://github.com/ARMmbed/mbed-os/#367dbdf5145f4d6aa3e483c147fe7bda1ce23a36