Project Description: Once in your whole life with your computers, you must have upgraded your RAM in your PC. Put a 4GB DDR3, or even more. Not enough? Put more!
In microcontroller systems, RAMs are quite scarce and very limited. A 4KB RAM inside one of these is considered a lot for an 8bit. Many years back, computer memory are expensive, and even a 512KB is like, huge for a computer back in the 80s.
Here it is shown that a parallel SRAM is used as an extra RAM space for a microcontroller board. Unfortunately, I am not able to get a lot of pins from a casual 40-pin PIC, so another microcontroller board is used to demonstrate the interfacing of the SRAM.
In the software, the system tests the RAM for presence, and then test each register in the RAM by testing each bit inside. If the RAM is not present, an error is shown, and if the RAM has problems in the data registers, an error is shown with the offending address.
Hardware: 62256 SRAM, MikroElektronika LV18F v6 board, a lot of jumper wires (27 and above), 16x2 44780 LCD, breadboard.
Software: MikroC v5.60 (can be compiled within demo limit!)
Source code: Attached
References: http://www.esacademy.com/en/library/technical-articles-and-documents/miscellaneous/software-based-memory-testing.html
Note: The SRAM must be connected to +5V or else errors will occur!
I'll get it running on a PIC32. And due to the instruction cache inside, it's too fast for the external SRAM itself. I will use its PMP for this one instead.
