Ik ben bezig met het aansluiten van 32kB extern SRAM op de 8515. (Eigenlijk NVRAM met real-time clock, maar dat maakt niets uit.) En daarover heb ik 2 vraagjes.

Kan ik A15 op de chip select van de SRAM zetten? Dan kan ik de bovenste 32kB eventueel nog voor andere dingen gebruiken.

Ik neem aan, dat ik WR op WE en RD op OE moet aansluiten. Klopt dat?

En tussen haakjes, ik heb nu de output enable van de 74HC573 aan de massa gelegd. Maar is het niet netter om die ook ergens op aan te sluiten? Dan staat er niet de hele tijd een signaal op die pennen als het niet nodig is. Maar waar kan ik die dan het beste op aansluiten? Ook op A15?

Om mijn eigen vraag te beantwoorden: dat werkt dus prima. Ik heb er nu netjes 32kB SRAM bij en ik heb geen lastig schaduwgeheugen.

Het is misschien wel een leuk experiment om de bovenste 32k te gebruiken om er een heel groot (> 1MB) extern geheugen mee aan te sturen in blokken van 32kB, zoals in het voorbeeld van RES. Dat kost me dan nog wel een paar poortjes om een (ser->par) shiftregister te vullen voor de adressering van de bovenste 8 adresbits. Maar dan kan ik wel in totaal 24 bits (16 MB) adresseren!

Edit: en daar die NVRAM bij een te lage spanning overschakelt op zijn batterij en dan niet meer te beschrijven is, gebruik ik de memory test ook als initiele brown-out protector. Maar dat werkt natuurlijk niet bij een wegvallende spanning.

[Bericht gewijzigd door DiGuru op ]

Dit zie ik nu in mijn terminalvenster als ik de controller reset:


AVR test, (c) 2004 by Digital Guru
Top of internal Ram: $025F
Top of external Ram: $7FEF
End of stack:        $025F
Max size of stack:   $01FA
Start of heap:       $0272
Start of TX buffer:  $0272
Size of TX buffer:   $0400
Start of RX buffer:  $0672
Size of RX buffer:   $0400
Start of free space: $0A72
Free memory:         $757E
System ready.

Cool, he? Nu de real-time klok aktiveren, een command line interprenter inbouwen en een ethernetaansluiting maken en ik kan mijn applicatie gaan bouwen.