Searching \ for '[PIC:] Maxim MAX-3100 / MAX-3110' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/microchip/devices.htm?key=pic
Search entire site for: 'Maxim MAX-3100 / MAX-3110'.

Exact match. Not showing close matches.
PICList Thread
'[PIC:] Maxim MAX-3100 / MAX-3110'
2004\01\12@110712 by POP

picon face
Hi:

Has anyone had any experience using the Maxim 3100/3110  SPI UART chip with the PIC 18Fxxx?  I have downloaded he info sheets from Maxim, which shows what appears to be a bit-bang approach to driving the SPI interface. The thing is, the 18Fxxxs have a nice SPI interface in them, but it isn't clear how to use this with the Maxim. Any pointers in the correct direction will be appreciated.

Roy J. Gromlich

___________________________________
NOCC, http://nocc.sourceforge.net

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@120514 by hael Rigby-Jones

picon face
{Quote hidden}

Firstly you will need to configure the MSSP peripheral as an SPI Master,
this is described in detail in the PIC datasheets.  Essentialy you configure
the PIC to set the master SPI mode, the clock rate, and the clock edge on
which the data is sampled and sent.  This is all information that should be
available in the SPI timing diagrams of the MAX3100.  You will need to
define another PIC pin as a chip select signal for the MAX3100.

To send data via the MSSP, you simply write a byte to SSPBUF, and the data
is automaticaly clocked out.  As the data is clocked out, incomming data is
simultaneously being read into an internal buffer.  When the full 8 bits
have been sent, the SSPIF flag will be set and the incomming data will be
transferred to SSPBUF.  The Maxim device appears to require data in 16bit
frames, so you will need to send two bytes.  The order of operations would
therefore be:

Set chip select pin low
Write MSB of data to SSPBUF
Wait for SSPIF to be set (at this stage 8 bits have been sent, and 8
received)
Clear SSPIF
Copy SSPBUF to MSB of incomming data variable
Write LSB of data to SSPBUF
Wait for SSPIF to be set
Clear SSPIF
Copy SSPBUF to LSB of incomming data variable
Set chip select (CS) pin high

At this stage you have sent the 16bits in data_out to the MAX3100, and have
received 16 bits in data_in.

Regards

Mike




=======================================================================
This e-mail is intended for the person it is addressed to only. The
information contained in it may be confidential and/or protected by
law. If you are not the intended recipient of this message, you must
not make any use of this information, or copy or show it to any
person. Please contact us immediately to tell us that you have
received this e-mail, and return the original to us. Any use,
forwarding, printing or copying of this message is strictly prohibited.
No part of this message can be considered a request for goods or
services.
=======================================================================
Any questions about Bookham's E-Mail service should be directed to
postmasterspamKILLspambookham.com.

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@121550 by David VanHorn

flavicon
face
At 05:03 PM 1/12/2004 +0000, Michael Rigby-Jones wrote:
>To send data via the MSSP, you simply write a byte to SSPBUF, and the data
>is automaticaly clocked out.  As the data is clocked out, incomming data is
>simultaneously being read into an internal buffer.  When the full 8 bits
>have been sent, the SSPIF flag will be set and the incomming data will be
>transferred to SSPBUF.  The Maxim device appears to require data in 16bit
>frames, so you will need to send two bytes.  The order of operations would
>therefore be:

Yes, and polling for status is a little interesting since you might not always want to take the data.

Me, I'd use a small AVR with uart, get buffer ram and more smarts for free, and byte-wide or SPI comms, or anything else I want..

I used the 3100's on one project, but not again.

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@124913 by Wouter van Ooijen

face picon face
> Me, I'd use a small AVR with uart, get buffer ram and more
> smarts for free, and byte-wide or SPI comms, or anything else I want..

Surely you mean a 16F628A? :)

Or be brave an use a 16F629 with bit-banged serial communication.

Wouter van Ooijen

-- -------------------------------------------
Van Ooijen Technische Informatica: http://www.voti.nl
consultancy, development, PICmicro products

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@130949 by David VanHorn

flavicon
face
At 06:46 PM 1/12/2004 +0100, Wouter van Ooijen wrote:

>> Me, I'd use a small AVR with uart, get buffer ram and more
>> smarts for free, and byte-wide or SPI comms, or anything else I want..
>
>Surely you mean a 16F628A? :)

Me, AVR. Remember, I'm the loyal opposition around here. :)

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@142238 by POP

picon face
Thank you Michael:

Very good information - I will give that a try when my sample Maxim 3100s come in.  I was actually wondering if anyone had used this chip - usually one does not find all of the "features" of these things until you actually hook them up in a circuit and try to use them.

I will let you (everyone) know,
Roy J. Gromlich



Michael Rigby-Jones <.....Michael.Rigby-JonesKILLspamspam.....BOOKHAM.COM> wrote :
{Quote hidden}

___________________________________
NOCC, http://nocc.sourceforge.net

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@142617 by POP

picon face
David VanHorn <EraseMEdvanhornspam_OUTspamTakeThisOuTCEDAR.NET> wrote :
Thanks:

That is the kind of thing I need. I was originally thinking of using a very cheap / simple PIC with UART to serve as a dummy comm device.  When I saw the 3100 I thought it might be a good alternative - seems like like my original idea may be easier to get working.  
I don't want to go to the AVR base because I have no development stuff for the series - right now the only thing I have to work with is the PIC MPLAB and the flash devices.

Roy


{Quote hidden}

___________________________________
NOCC, http://nocc.sourceforge.net

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@143236 by POP

picon face
Thanks:

I was wondering about calling for an AVR on the PIClist!  
Anyway, I was looking at the 16F628A for this project - think I will look that way again.  I don't want to go the bit-bang route, although the 18F452 can certainly handle it. That would add more complexity to the code than I want, at this point, as I am expecting to have to add a LOT of stuff to the main 18F program after the simple demo board is working. If the secondary serial port, which runs at a different baud-rate than the main port, is done in off-chip hardware the 18F's program space and resources are mostly free for the taking.

Roy J. Gromlich


Wouter Van Ooijen <wouterspamspam_OUTVOTI.NL> wrote :

> > Me, I'd use a small AVR with uart, get buffer ram and more
> > smarts for free, and byte-wide or SPI comms, or anything else I want..
>
> Surely you mean a 16F628A? :)
>
> Or be brave an use a 16F629 with bit-banged serial communication.
>
> Wouter van Ooijen
>

___________________________________
NOCC, http://nocc.sourceforge.net

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@143237 by Bob Ammerman

picon face
First, if possible, I would implement extra UARTS in software.

But, if that were impractical for a given project, I would be tempted to use
another (small) PIC to provide an external UART. That way I could make it as
smart as I wanted to.

Bob Ammerman
RAm Systems


{Original Message removed}

2004\01\12@143445 by David VanHorn

flavicon
face
>
>I don't want to go to the AVR base because I have no development stuff for the series - right now the only thing I have to work with is the PIC MPLAB and the flash devices.

You have my sympathies :)

Still, even in the pic, it's workable. <VBG>
I did a command interpreter for a tokenized language in EE, plus a bunch of command routines, plus a full duplex bit-banged uart in an F84 once.

I'd take a hardware uart anytime though.
At least develop it that way at first, then you can go bit-banged if you must, and you're only debugging that layer.

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@143900 by Roy J. Gromlich

picon face
David VanHorn <@spam@dvanhornKILLspamspamCEDAR.NET> wrote :

> &gt;
> &gt;I don't want to go to the AVR base because I have no development stuff for
> the series - right now the only thing I have to work with is the PIC MPLAB and
> the flash devices.
>
> You have my sympathies :)
>
> Still, even in the pic, it's workable. &lt;VBG&gt;
> I did a command interpreter for a tokenized language in EE, plus a bunch of
> command routines, plus a full duplex bit-banged uart in an F84 once.
>
> I'd take a hardware uart anytime though.
> At least develop it that way at first, then you can go bit-banged if you must,
> and you're only debugging that layer.
>

Agreed, agreed, etc.:

I am looking again at the '628A - that was my original thought and it looks like I will go back to it.  Save myself some trouble all around.
Roy J. Gromlich

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@151226 by Dave Tweed
face
flavicon
face
POP <KILLspamrgromlichKILLspamspamPA.NET> wrote:
> Very good information - I will give that a try when my sample Maxim 3100s
> come in.  I was actually wondering if anyone had used this chip - usually
> one does not find all of the "features" of these things until you
> actually hook them up in a circuit and try to use them.

I've used the MAX3100 before, but I hooked it to an ADSP-21161. There were
no surprises with regard to the '3100 that I can recall. It took me a while
to come up with the right crystal for it, but I found a few in my junk box.

-- Dave Tweed

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@153652 by John N. Power

flavicon
face
> From:         POP[SMTP:RemoveMErgromlichTakeThisOuTspampa.net]
> Sent:         Monday, January 12, 2004 2:31 PM
> To:   spamBeGonePICLISTspamBeGonespamMITVMA.MIT.EDU
> Subject:      Re: [PIC:] Maxim MAX-3100 / MAX-3110

> Thanks:

> I was wondering about calling for an AVR on the PIClist!

There is an [AVR] topic on this list.

John Power

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@155558 by Bob Axtell

face picon face
POP wrote:

> Hi:
>
> Has anyone had any experience using the Maxim 3100/3110  SPI UART chip with the PIC 18Fxxx?  I have downloaded he info sheets from Maxim, which shows what appears to be a bit-bang approach to driving the SPI interface. The thing is, the 18Fxxxs have a nice SPI interface in them, but it isn't clear how to use this with the Maxim. Any pointers in the correct direction will be appreciated.
>
> Roy J. Gromlich
>

I had great luck with it under PIC16F876 SPI. But it has a poorly
documented flaw- if you drive the crystal input from an external clock,
you will be required to limit the current into that pin. The MAX3110 was
missing characters because the crystal was being overdriven. I believe I
had to insert a 220-ohm resistor to settle it down. If I recall, using
your own crystal seemed to be OK.

Good luck! Its one of their best digital parts.

If anyone wants the code, email me privately.

--Bob

             --------------
               Bob Axtell
       PIC Hardware & Firmware Dev
         http://beam.to/baxtell
             1-520-219-2363

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@160659 by David VanHorn

flavicon
face
>
>I had great luck with it under PIC16F876 SPI. But it has a poorly
>documented flaw- if you drive the crystal input from an external clock,
>you will be required to limit the current into that pin. The MAX3110 was
>missing characters because the crystal was being overdriven. I believe I
>had to insert a 220-ohm resistor to settle it down. If I recall, using
>your own crystal seemed to be OK.

For once, I lucked out.
I used a master osc, but I put series resistance in the clock feeds to limit EMI.

It's nice to know that not ALL the rocks land on your head. :)

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

2004\01\12@233030 by Roy J. Gromlich

picon face
Yes, I know there is.  I was just teasing a bit.  Actually, I will probably
pick up some sort of development system for AVRs after this present project
is nailed down.  I have seen some neat things done with AVRs, including lots
of industrial products from the company I previously worked for.

Roy J. Gromlich

{Original Message removed}

2004\01\13@043339 by o-8859-1?Q?Tony_K=FCbek?=

flavicon
face
Hi,

Roy J. Gromlich wrote:
>Has anyone had any experience using the Maxim 3100/3110  SPI UART chip wi=
>th the PIC 18Fxxx?  I have downloaded he info sheets from Maxim, which sh=
>ows what appears to be a bit-bang approach to driving the SPI interface. =
>The thing is, the 18Fxxxs have a nice SPI interface in them, but it isn't=
> clear how to use this with the Maxim. Any pointers in the correct direct=
>ion will be appreciated.

Yes, as a matter of fact, that exact combo is running in one of our main products.
That said, going back, I would have used an small pic instead, preferably 16F628
(altough to be fair that was not available at the time). The Maxim unit is expensive
atleast compared to a pic IMHO. It does work as advertised but I have some 'issues'
with the implementation of the IRQ line, it's abit tricky and I had to write some
ugly code in my ISR handler to get around it. I have some code to share if you decide to venture down this route, the SPI i/f
is quite basic and easy to implement, in my case I had to use bitbanged i/f as the MSSP module is tied up with I2C, the only 'special' feature is that I will abort
the SPI transfer after 2 bits depedning on the status of the RX/TX bits.

Please contact me off list if you need any code.

/Tony

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics

More... (looser matching)
- Last day of these posts
- In 2004 , 2005 only
- Today
- New search...