Cypress F-RAM FM25W256 library

Dependents:   Hello-FM25W256 Hello-FM25W256

Embed: (wiki syntax)

« Back to documentation index

FM25W256 Class Reference

FM25W256 Class Reference

An interface for the Cypress 32k byte FM25W256 F-RAM over SPI. More...

#include <FM25W256.h>

Public Member Functions

 FM25W256 (PinName mosi, PinName miso, PinName clk, PinName cs)
 Create an interface.
 FM25W256 (SPI &spi, PinName cs)
 Create an interface.
void write (uint16_t address, uint8_t data)
 write a byte to F-RAM
void write (uint16_t address, uint8_t *data, uint16_t size)
 write multiple bytes to F-RAM from a buffer
uint8_t read (uint16_t address)
 read a byte from F-RAM
void read (uint16_t address, uint8_t *data, uint16_t size)
 read multiple bytes from F-RAM into a buffer
void wirte_status (uint8_t data)
 write a byte to the status register
uint8_t read_status ()
 read a byte from the status register
void set_write_protect (E_WP bp)
 Set write protect mode.
void clear_write_protect ()
 Set write protect to non-protect mode.

Detailed Description

An interface for the Cypress 32k byte FM25W256 F-RAM over SPI.

 #include "mbed.h"
 #include "FM25W256.h"
 
 Serial pc(USBTX, USBRX);
 FM25W256 f_ram(dp2, dp1, dp6, dp18);
 
 int main()
 {
     uint8_t buf[16];
     // Fill buffer
     for(int i=0; i<16; i++) {
         buf[i] = i;
     }
     // Write data to F-RAM
     f_ram.write(0, buf, 16);
 
     // Read data from F-RAM
     uint16_t adrs = 0;
     for(int i=0; i<16; i++) {
         pc.printf("0x%04X : ", i * 16);
         for(int j=0; j<16; j++) {
             pc.printf("%02X ", f_ram.read(adrs++));
         }
         pc.printf("\n");
     }
     
     while(1) {
     }
 }

Definition at line 74 of file FM25W256.h.


Constructor & Destructor Documentation

FM25W256 ( PinName  mosi,
PinName  miso,
PinName  clk,
PinName  cs 
)

Create an interface.

Parameters:
mosiSPI master-out-slave-in
misoSPI master-in-slave-out
clkSPI clock
cschip select pin - any free Digital pin will do

Definition at line 29 of file FM25W256.cpp.

FM25W256 ( SPI &  spi,
PinName  cs 
)

Create an interface.

Parameters:
&spiSPI instance
cschip select pin - any free Digital pin will do

Definition at line 38 of file FM25W256.cpp.


Member Function Documentation

void clear_write_protect (  )

Set write protect to non-protect mode.

Definition at line 132 of file FM25W256.cpp.

uint8_t read ( uint16_t  address )

read a byte from F-RAM

Parameters:
addressThe address to read from
Returns:
the character at that address

Definition at line 77 of file FM25W256.cpp.

void read ( uint16_t  address,
uint8_t *  data,
uint16_t  size 
)

read multiple bytes from F-RAM into a buffer

Parameters:
addressThe F-RAM address to read from
dataThe buffer to read into (must be big enough!)
sizeThe number of bytes to read

Definition at line 91 of file FM25W256.cpp.

uint8_t read_status (  )

read a byte from the status register

Returns:
the character at the register

Definition at line 115 of file FM25W256.cpp.

void set_write_protect ( E_WP  bp )

Set write protect mode.

Parameters:
bpE_WP enum value

Definition at line 126 of file FM25W256.cpp.

void wirte_status ( uint8_t  data )

write a byte to the status register

Parameters:
dataThe byte to write the register

Definition at line 103 of file FM25W256.cpp.

void write ( uint16_t  address,
uint8_t  data 
)

write a byte to F-RAM

Parameters:
addressThe address F-RAM to write to
dataThe byte to write there

Definition at line 47 of file FM25W256.cpp.

void write ( uint16_t  address,
uint8_t *  data,
uint16_t  size 
)

write multiple bytes to F-RAM from a buffer

Parameters:
addressThe F-RAM address write to
dataThe buffer to write from
sizeThe number of bytes to write

Definition at line 61 of file FM25W256.cpp.