Truncated match.
PICList
Thread
'serial memory'
1996\04\15@232516
by
Juan Abba
For a new application under analysis, we will need about 2K of RAM memory for
data arrays storage.
Serial memory could be a solution, as it appears that a 20MHZ 16C73 we are
planning to use will be fast enough for the application, with spare time for
serial data handling.
Have searched the Microchip 1995/1996 data book, but have only found serial
EEPROM's.
Is there anybody with experience on I2C type serial RAM, volatile equivalent to
the microchip I2C serial EEprom family????
Pls. provide details
juan
1996\04\16@001936
by
Clyde Smith-Stubbs
Juan Abba <spam_OUTjuanabbaTakeThisOuT
AX.APC.ORG> wrote:
> Is there anybody with experience on I2C type serial RAM, volatile equivalent
to
> the microchip I2C serial EEprom family????
I don't have any experience with it, but Philips have a 256x8 I2C interfaced
RAM device. You can use 8 on the I2C bus (maybe more) which would give you
the 2K you need. The part no, is PCF8570 - you can get a data sheet from
http://www.semiconductors.philips.com/ps/acrobat/3041.pdf.
--
Clyde Smith-Stubbs | HI-TECH Software, | Voice: +61 7 3300 5011
.....clydeKILLspam
@spam@hitech.com.au | P.O. Box 103, Alderley, | Fax: +61 7 3300 5246
http://www.hitech.com.au | QLD, 4051, AUSTRALIA. | BBS: +61 7 3300 5235
----------------------------------------------------------------------------
For info on the World's best C cross compilers for embedded systems, point
your WWW browser at http://www.hitech.com.au, or email info
KILLspamhitech.com.au
1996\04\16@040025
by
Chaipi Wijnbergen
|
On Tue, 16 Apr 1996, Juan Abba wrote:
> For a new application under analysis, we will need about 2K of RAM memory for
> data arrays storage.
>
> Serial memory could be a solution, as it appears that a 20MHZ 16C73 we are
> planning to use will be fast enough for the application, with spare time for
> serial data handling.
>
> Have searched the Microchip 1995/1996 data book, but have only found serial
> EEPROM's.
I also looked at this and decided that it would be too slow and too
small, so I added an external SRAM 32K and wrote a small program that
will be able to read and write to it using some I/O bits.
chaipi
\\\|///
\\ ~ ~ //
( @ @ )
----------------------------oOOo-(_)-oOOo--------------------------------------
! !
! Chaipi Wijnbergen !
! Electronics/Computer Eng. M.Sc. Tel : +972-8-9343079 !
! Optical Imaging Laboratory Fax : +972-8-9344129 !
! Brain Research Center Email : .....chaipiKILLspam
.....tohu0.weizmann.ac.il !
! Weizmann Institute of Science URL : http://www.weizmann.ac.il/~chaipi !
! Rehovot 76100 ISRAEL IPhone : chaipi !
! !
------------------------------------Oooo.--------------------------------------
.oooO ( )
( ) ) /
\ ( (_/
\_)
1996\04\16@070308
by
Byron A Jeff
>
> On Tue, 16 Apr 1996, Juan Abba wrote:
>
> > For a new application under analysis, we will need about 2K of RAM memory
for
> > data arrays storage.
> >
> > Serial memory could be a solution, as it appears that a 20MHZ 16C73 we are
> > planning to use will be fast enough for the application, with spare time
for
> > serial data handling.
> >
> > Have searched the Microchip 1995/1996 data book, but have only found serial
> > EEPROM's.
>
> I also looked at this and decided that it would be too slow and too
> small, so I added an external SRAM 32K and wrote a small program that
> will be able to read and write to it using some I/O bits.
It not only takes a few I/O bits (11-12 at a minimum if you use external
latches and a decoder) but quite a lot of board real estate with the
extra chips offboard. It's a good solution if you need fast access and
a lot of memory and most importantly you can spare the board real-estate.
I've come across another possible solution: The Dallas SemiConductor RAMPort.
It's a 24 pin 600 mil 2K static ram specifically designed for attachment
to microcontrollers because it not only internalizes the previously mentioned
latches and decoder, but it also duplicates the 8 bit port you need to talk
to it. So instead of losing 10 I/O pins (8 data, 2 control) you actually only
lose the 2 control pins because the 8 data pins are duplicated by the part.
The parts use a 3 byte sequence to read and write so it's quite fast relative
to a serially accessed part.
The part numbers are DS1380 and DS1381. The 1381 has a built in lithium
battery for data retention while the 1380 has battery pins to attach an
external pattery. $9 and $11 in singles through the DalSemi extremely
experimenter friendly 1-800 line (factory direct, no minimum order,
credit card, fast delivery, what more can you ask for).
I plan to use the part in an upcoming project soon to be announced here.
Hope this helps,
BAJ
1996\04\16@141301
by
mike
|
In message <EraseME829627543.21060.0spam_OUT
TakeThisOuTvms.dc.lsoft.com> PICLIST
spam_OUTMITVMA.MIT.EDU writes:
> For a new application under analysis, we will need about 2K of RAM memory for
> data arrays storage.
>
> Serial memory could be a solution, as it appears that a 20MHZ 16C73 we are
> planning to use will be fast enough for the application, with spare time for
> serial data handling.
>
> Have searched the Microchip 1995/1996 data book, but have only found serial
> EEPROM's.
>
> Is there anybody with experience on I2C type serial RAM, volatile equivalent
to
> the microchip I2C serial EEprom family????
> Pls. provide details
>
>
juan,
You could try a RAMTron serial FRAM. They behave like EEProms, but have *NO*
write delay and 10 billion (10^10) cycle read/write endurance figure.
The FM24C16 is a 2K by 8 device with I2C at 100kHz and 400kHz.
I've used them before with no problems.
The data book gives a 800 number: (800) 545-FRAM/DRAM.
Regards,
Mike Watson
--
Mayes uk
1996\04\17@082521
by
Philippe TECHER
|
Juan Abba <@spam@juanabbaKILLspam
AX.APC.ORG> wrote:
> Is there anybody with experience on I2C type serial RAM, volatile equivalent
to
> the microchip I2C serial EEprom family????
Hi,
Here is the code to drive an I2C RAM/EEPROM (PIC16C54..57), you can also
use 93C46( or 06 or ...) EEPROM type, but the protocol is different.
Be carrefull about timing, I2C application note said I2C Clock can run only
at 100KHz !
;*****************************************************************************
;************** RAM / EEProm ACCESS ROUTINE on I2C Bus **********************
; HCK = PortA.0
; SDA = PortA.1 (In/Out)
;*****************************************************************************
I2C_Address equ %10100000 ; ITEM address on I2C Line
;---------------- REGISTERS
Address equ $18 ; Address to Read/Write
DataHi equ $19 ; Word DATA (16Bits)
DataLo equ $1A
Data1 equ $10
Data2 equ $11
TempTxRx equ $1B ; Temporary register
I2CCnt equ $1C ; Counter to send/Receive bits
;---------------- CONST
I2CSetOUT equ %0000 ; Value to configure SDA as OUTPUT
I2CSetIN equ %0010 ; Value to configure SDA as INPUT
I2CPort equ 5 ; PORT A is I2CPort
HCK equ 0 ; PortA.0
SDA equ 1 ; PortA.1
I2CAckWait equ 20 ; WAIT time to check ACKNOWLEDGE
I2CError equ 1 ; return value if error
I2COk equ 0 ; return value if OK
;******************************************************************************
;*****************************************************************************
; RAM / EEProm ACCESS ROUTINE on I2C Bus
; HCK = PortA.0
; SDA = PortA.1 (In/Out)
;*****************************************************************************
; WRITE WORD Data to I2C-RAM/EPROM
; Address : Address of the 2 Byte to WRITE
; DataHi : Hi Data
; DataLo : Lo Data
I2CWriteData call I2CStart ; START BIT
movlw I2C_Address ; Put SLAVE address on I2C line
iorlw %00000000 ; To WRITE a DATA at ADDRESS
movwf TempTXRX ; TempTXRX = Address of I2C Item
call TxData ; Transfert DATA on SDA Line
call AckWait0 ; Wait for Acknowledge
btfss STATUS,2 ; Skip if Z=1
goto I2CStop
movf Address,W ; Address to Access in W
movwf TempTXRX ; Address to Access in W
call TxData ; Transfert DATA on SDA Line
call AckWait0 ; Wait for Acknowledge
iorlw 0
btfss STATUS,2 ; Skip if Z=1
goto I2CStop
movf Data1,W ; DataLO to WRITE in W
movwf TempTXRX
call TxData ; Transfert DATA on SDA Line
call AckWait0 ; Wait for Acknowledge
iorlw 0
btfss STATUS,2 ; Skip if Z=1
goto I2CStop
movf Data2,W ; DataHI to WRITE in W
movwf TempTXRX
call TxData ; Transfert DATA on SDA Line
call AckWait0 ; Wait for Acknowledge
iorlw 0
call I2CStop ; STOP BIT
retlw I2COk
;*****************************************************************************
; Output TempTXRX on SDA Line
TXData movlw I2CSetOut ; Set SDA as OUTPUT
tris A
bcf I2CPort,SDA ; SDA = 0
movlw 8 ; I2CCnt = 8
movwf I2CCnt
TXDataLoop bcf I2CPort,SDA ; SDA = 0
rlf TempTXRX
btfsc STATUS,CY ; Skip if CARRY=0
bsf I2CPort,SDA
bsf I2CPort,HCK ; HCK = 1
nop
nop
nop
nop
bcf I2CPort,HCK ; HCK = 0
decfsz I2CCnt
goto TXDataLoop
nop
nop
retlw I2COk
;*****************************************************************************
; Read TempTXRX on SDA Line
RXData movlw I2CSetIN ; Set SDA as INPUT
tris A
movlw 8 ; I2CCnt = 8
movwf I2CCnt
clrf TempTXRX
RXDataLoop bsf I2CPort,HCK ; HCK = 1
bcf STATUS,CY ; CARRY = 0
btfsc I2CPort,SDA ; Skip if SDA=0
bsf STATUS,CY
rlf TempTXRX
nop
bcf I2CPort,HCK ; HCK = 0
nop
nop
nop
decfsz I2CCnt
goto RXDataLoop
retlw I2COk
;*****************************************************************************
; Wait k Cycle for Acknowledge from slave
ACKWait0 movlw I2CSetIN
tris A
bsf I2CPort,HCK ; HCK = 1
movlw I2CAckWait ; I2CCnt = I2CAckWait (Wait TIME)
movf I2CCnt
ACKLoop0 btfss I2CPort,SDA ; Skip if SDA = 1
goto AckOk0
decfsz I2CCnt
goto AckLoop0
bcf I2CPort,HCK ; HCK = 0
retlw I2CError
ACKOk0 bcf I2CPort,HCK ; HCK = 0
retlw I2COk
;*****************************************************************************
; Wait k Cycle for Acknowledge from MASTER, if SDA line goes down then, an
; error occur (because SLAVE want to interrupt transmission)
ACKWait1 movlw I2CSetOut
tris A
bcf I2CPort,SDA ; HCK = 0
bsf I2CPort,HCK ; HCK = 1
nop
nop
nop
nop
bcf I2CPort,HCK ; HCK = 0
nop
nop
retlw I2COk
;*****************************************************************************
ACKWaitEnd movlw I2CSetIN
tris A
bsf I2CPort,HCK ; HCK = 1
nop
nop
nop
nop
btfss I2CPort,SDA ; Skip if SDA = 1
goto AckEr1
bcf I2CPort,HCK ; HCK = 0
retlw I2COk
ACKEr1 bcf I2CPort,HCK ; HCK = 0
retlw I2CError
;*****************************************************************************
; OutPut the Start CONDITION
I2CStart movlw I2CSetOut
tris A
bsf I2CPort,SDA ; SDA = 1
bsf I2CPort,HCK ; HCK = 1
nop
nop
nop
nop
bcf I2CPort,SDA ; SDA = 0
nop
nop
nop
nop
bcf I2CPort,HCK ; HCK = 0
nop
retlw 0
;*****************************************************************************
; OutPut the Stop CONDITION
I2CStop movlw I2CSetOut ; Set SDA as OUTPUT
tris A
bcf I2CPort,SDA ; SDA = 0
bsf I2CPort,HCK ; HCK = 1
nop
nop
nop
nop
bsf I2CPort,SDA ; SDA = 1
nop
nop
nop
nop
bcf I2CPort,HCK ; HCK = 0
nop
retlw I2CError ; An ERROR is finishig by a STOP Condition
;*****************************************************************************
; END OF I2C CODE
'serial memory'
1998\07\27@133625
by
Arvi Karhumaki
Does anybody know of a way to combine a PIC with a really large chunk of
serial memory, much more than 8 kilobytes? Do you know what serial memory
chips are available, and practical? EEPROM or FLASH would do, it's got to be
non-volatile memory.
Arvi Karhumaki EMail: KILLspamarviKILLspam
vistacom.fi
Support Technician Phone: +358-9-6226 2325
Vista Communication Instruments
1998\07\27@151952
by
Andy Kunz
www.atmel.com and follow the links for DataFlash
At 04:46 PM 7/27/98 +0300, you wrote:
{Quote hidden}>Does anybody know of a way to combine a PIC with a really large chunk of
>serial memory, much more than 8 kilobytes? Do you know what serial memory
>chips are available, and practical? EEPROM or FLASH would do, it's got to be
>non-volatile memory.
>
>
>
>Arvi Karhumaki EMail:
RemoveMEarviTakeThisOuT
vistacom.fi
>Support Technician Phone: +358-9-6226 2325
>Vista Communication Instruments
>
>
==================================================================
Andy Kunz - Statistical Research, Inc. - Westfield, New Jersey USA
==================================================================
1998\07\27@160027
by
Mark Willis
|
The Microchip 24LC256 (& associated chips) family have fairly large
capacities & are pretty easy to interface to (2-wire interface); See
specs down from http://www.microchip.com/0/Lit/Memory/index.htm, for the
larger chips see
http://www.microchip.com/0/Lit/Memory/IC/64to128/index.htm.
The 24LC256 is a 32k byte (8-bit bytes) i.e. 256k bit part. 64-byte
page mode available. It's available in DIP-08 or SOIC-08 packaging,
which is nice! $3ish in quantity.
For one project, the customer (second alpha tester) feels we need 1/2
megabyte of SEEProm, so we're looking at either that part, 16 in
parallel of 'em, which would take 3 PIC pins; or alternately at the
Atmel DataFlash parts at
http://www.atmel.com/atmel/products/select15.htm, for the first manual
page of their 512k byte i.e. 4 Megabit part, see
http://www.atmel.com/atmel/postscript/first_page/doc0803a.gif; They go
from 2 megabits, up to 16 megabits on one 2.7V part (!) Disadvantages I
can see so far over Microchip parts are size (soic-28 vs. -08, also in
TSOP-28 and PLCC-32 packages) and it's a bit harder to use, 2048
264-byte pages, not byte accesses; advantages are it's fast! (10 MHz
max clock rate), & lots of data in one chip, don't have to run 16
24LC256's for the same storage, and cheaper ($10 for a half megabyte
instead of $50ish for 16, 24LC parts.)
Atmel has regular Serial EEProms at
http://www.atmel.com/atmel/products/prod6.htm, also. 1k bit up to 256 k
bit, I haven't looked at those much, the Microchip parts may be a smidge
easier to use? but maybe these are more versatile?, don't know pricing
but imagine it's comparable.
(Personally I still think we could get by with 2 24LC256'es, but, "The
customer's always right." Ack!)
Mark Willis, spamBeGonemwillisspamBeGone
nwlink.com
Arvi Karhumaki wrote:
>
> Does anybody know of a way to combine a PIC with a really large chunk of
> serial memory, much more than 8 kilobytes? Do you know what serial memory
> chips are available, and practical? EEPROM or FLASH would do, it's got to be
> non-volatile memory.
>
> Arvi Karhumaki EMail: TakeThisOuTarviEraseME
spam_OUTvistacom.fi
> Support Technician Phone: +358-9-6226 2325
> Vista Communication Instruments
More... (looser matching)
- Last day of these posts
- In 1998
, 1999 only
- Today
- New search...