View Full Version : Max6675? Dead?
02-18-2007, 11:10 AM
Ok.....so I have surface mounted a few Max 6675's on a board with a Propeller and the required support chips.....crystal...eeprom....
I can't get these to give me anything.· I only get 0's when I pull the CS line to low and·clock out 16 bits.
Anyone have a clue?
I have tried several different methods to talk to them...but nothing. I'm at a loss.
I'm looking for clues to the problem.....I have tried everthing....I don't have a scope.....but have metered everything I can think of....and can't find a problem.
I don't know what else to do.
The propeller communicates with my display find...and seems to run along like melted butter, but when it comes time for the Max 6675 part......nothing.
Ok....I'm open for ideas,
02-18-2007, 12:39 PM
You're using Type-K thermocouples then?
02-18-2007, 12:49 PM
I actually have two.....one J and one K.....but these things don't give me anything....with or without them hooked up. The Max 6675 is designed to go high on bit 2 when there is no probe......
It must be a communication or noise problem. I just don't see it.
02-18-2007, 03:42 PM
Is sounds like you may have several new things being tested at the same time, propeller hardware, MAX6675 hardware, and the software.
Stamp programs and hookup diagram at:
The program is pretty simple. Maybe post your prop program so we can look at it.
02-19-2007, 12:40 AM
I have included a screen shot of the schematic.....but I have modified the board....I have taken the resistors off.....trying to determine the problem.
· CHT1··········· = 8
· CHT2··········· = 7
· EGT1··········· = 10
· EGT2··········· = 9
· SCL············ = 11
· SDI············ = 12
· SDO············ = 13
The Cons for the Max6675
·goodcht1 := max6675.readword(SDI, SCL, CHT1)
· if goodcht1 > 0
This is the call from the main program area.....I have to slice it up some...the program is quite long.
PUB readword(dpin, cpin, cspin)·····································
· dira[cpin]~·········································· ' data input
· REPEAT 16
··· result := (result << 1) | ina[dpin]················ ' get next bit
··· !outa[cpin]········································ ' send clock pulse
The area.....I actually talk to the max 6675.....which don't.
02-19-2007, 02:06 AM
The readword method is setting the clock pin as an input dira[cpin]~ when it should be an output dira[cpin]~~. Could that be it?
02-19-2007, 02:08 AM
Could be....I'll try it....and let you know. I've tried so many different ways.....it could just be an oversight....
02-19-2007, 03:17 AM
Whoops......you were right....it worked....I'm so happy. Thanks for pointing out my error.
I don't know how I missed it. I actually worked all day yesterday...and never saw the problem.....just one character.
That is the way things go.
02-19-2007, 05:58 AM
Great--That's why we need 4 eyes!
02-19-2007, 02:40 PM
I wish I had posted the entire code....but it was way to long. I have found another problem...I'm having collisions of the call. I'm calling this method in a couple of places....which I assumed would all work one after another...and I have found they collide. So I having to do a rewrite of the code.
I do appreciate the help though, you go me started.
02-20-2007, 01:55 AM
I noticed that the result variable is not initalized to zero at the top of the readword method. It may be done elsewhere, but strange things would happen if not. There is a RETURN at the end of the readword, right?
02-20-2007, 07:11 AM
No to both quesitons. I haven't initialized the Result variable....that could be one of my problems....but I don't think a return is necessary....i think the compiler will place one automatically if there is not one in the code....as per the manual.
I'll try the result initialization to see if that helps my problems some.
Thanks for the added input.
02-20-2007, 01:52 PM
I'm going to have to get an oscope....the output of the 6675's are intermittent. Some times some of them will give me a value....but never all of them....and most of the time I get no values at all.
I'm wondering if I'm browning them out.....or if their voltages are dropping off. I don't see the problem...but an oscope will tell me what is going on.
I'm a little baffled right now as to the problem....looks as if the next revision of this board will have a VDD pour on it. I was trying to prevent doing that, it can cause some connection problems....but it is the only thing I know to do to prevent (what I think is happening) from happening.
It may also be noise.....I just don't know.. I know there is a problem that I can't find with a meter.....so I will have to go borrow an oscope.
I'll let you know if I find something...and what it is.
But I do appreciate the help.....you did find one problem that helped to isolate down to something else. It also helped to ensure it wasn't just a programming error.
02-22-2007, 01:41 AM
Ok.....to just finalize this thread. I went and borrowed an OLD Techtronics Scope from my uncle......man this thing is older than I.....but it works.
The board is suffereing from noise. I mean a lot of noise, I don't see how it works at all. The board would have been fine as originally designed, but there were some problems and I was powreing it in a way I had not planned. This is my suspect for the noise being so bad.
I'm going back and adding filtering to try to prevent any noise that may just happen to get on the board.
Thanks Tracy for your input,