I am interested in creating a port for 64KB FRAM that uses SPI.
The memory module is located here https://learn.adafruit.com/adafruit-spi-fram-breakout
Could someone help me creating a port so that freeRTOS can run this with ATMEGA2560.
Maybe some tips on how to start
there's not much point to build a port for FRAM using SPI. It would take a minimum of system 48 clocks to access one byte of FRAM, which means that the MCU would be restricted to 1/48 of normal speed or 333kHz... probably not ideal.
If you want more RAM than the 16kB available on the 1284p, then the easiest method is to use SRAM on the 2560, to get up to 512kB. This runs at the typical 16MHz system clock, and is much more transparent in use.
If you have a clear application for FRAM, then it is probably best to use another MCU such as the TI msp430fr5959.
Or, build a shield similar to the QuadRAM shield, using the Cypress FM18W08, which can give you 32kB using a parallel address interface off the 2560. But, at over $20 per part, you need to be serious about using FRAM.
It is sensible to create libraries to access the FRAM from the AVR, but it would be fairly simple to do this using the standard SPI interface tools.
The only reason I am interested in the FRAM is because I can't seem to purchase the QUADRAM from ruggedcircuit. There site is either down or they are not operational anymore.
I am interested in external ram for my atmega2560 around 256KB would be more than enough. Do you have any advise for that.
There are a couple of alternatives to the Rugged Circuits implementation for 512kB RAM for the Arduino Mega. Personally, I like the version that Ruggged Circuits did by containing the extension to the end pins, but others may prefer the full Shield implementations.
I sold my only QuadRam to Dave Cheney for a project he was building, as I had no real use for it. The 128kB RAM version (MegaRAM) is / was adequate for my needs.
Some options for you:
Projects of Jaanus Kalde