This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Memory Interfacing with MSP 430

hi

 I am trying to interface external memory(RAM) with MSP430. I am a beginner in this field.

So It would be very helpfull if you could give some commonly used memory IC's and their interfacing with MSP 430.

Thank You.

  • Paul Leons said:

    So It would be very helpfull if you could give some commonly used memory IC's and their interfacing with MSP 430.

    e.g. http://www.ramtron.com/products/nonvolatile-memory/serial.aspx connected via SPI.

    If you are looking for RAMs connected via separate address/data bus, then the MSP430 is the wrong device.

    Hardy

  • The MSP430 has, as already said, no direct support for external memory.

    That means, it has no external address/data bus, that will map any external memory device into the processors address range.

    It is, however, possible to use the port pins of an MSP as address/data bus.

    e.g. connect 2 of the MSPs 8 bit ports 16 bit address bus (or more, if the memory is larger) of an external ram chip (in this example a 64k ram chip). Then connect another port to the data bus of the ram chip. And now spare some more I/O port pins for chip select (if necessary) and address strobe or read or write pins (depending on the used ram).

    Now write the address to the ports for hte address bus, se tthe data bus port to output and write data or leave it as input, then toggle the control port pins and you have written or read a byte. Not the fastest way, but for storing large amounts of data, it does the job.
    Of course only static memory can be used, because it will be next to impossible to do the necessary refresh for dynamic ram.
    To save some port pins, data and address bytes can be multiplexed by using external latches. This way, only two 8 bit ports are needed, one for the data transfer and the other for the control lines controlling latching of the lower and higher address byte and the read/write cycle.
    Using dedicated ports, however, makes things easier, as you can handle (at least on the newer, bigger MSPs) two 8 bit ports as a single 16 bit port, so you can simply write the 16 bit address to the port, or even increment it for subsequent reads/writes. Makes things faster.

    Alternatively, you can attach eeproms or flash units to the MSP by using either SPI or I2C interface. This is a slow method, especially if not doing burst transfers, but if you want to permanently store data and do not need fast random access, it is the cheaper way.

    What to do depends on how much space you need, whetehr it shall be ram, EEprom or Flash and how fast you need the access it.
    Even accessing SD cards is possible (see the many threads here in this forum)

    If you need, hoever, to extend the normal ram for program operation above 18 k (which is the maximum found on any MSP), then you're better off with e.g. the ATMega128, which has an external Address/Data bus and supports up to 64k ram directly (with banked memory usage even more)

     

**Attention** This is a public forum