Hi Steven. About the I/O lines, i've never heard about the littlefuse. Didn't you think to use optocouplers? Like the TIL111. About the RS-485, you could put some passives components plus the LTC1480 transceivers. On the magazine, Circuit Cellar, the october issue an article cames talking about the subject of protection RS- 485. If you want i could provide more information for you. Bruno --- In AVR-Chat@yahoogroups.com, "Steven Hodge" <stevehodge@...> wrote: > > My apologies ahead of time for the length of this post, but I realize it > would be hard to answer without adequately describing the operating > environment. > > > > I'd like to get feedback on ideas I have to provide protection for I/O lines > for uC-based PCB's. These will be scattered throughout a boat, so 12 V DC > (up to 14.6 V when the main "house" batteries are on charge) is the nominal > supply voltage -- call it VB -- for all boards. There is lots of this > running around everywhere, not just to PCB's but to motors, pumps, diesel > engine, solenoid coils, radios, radar, instruments, stereo, computer, etc. > All grounds come back to a single common ground bus near the house battery > bank. > > > > Protection concerns are (1) overvoltage on an I/O pin by accidentally > connecting it to VB, (2) the usual ESD, (3) protection of the uC and digital > stuff from RF-induced voltages from the radar and VHF & HF radios (and who > knows what else, eg, computer), and (4) protection in the opposite > direction, of the radar/radios from RF noise from digital switching. > Usually an inverter is also in use, to supply "household" 120 VAC from the > 12 V house bank, so that probably adds to the noise. > > > > All the uC-based boards will be linked with an RS485 bus, using shielded > CAT-5 Ethernet cable and LTC1480 transceivers at each end. These > transceivers include ESD protection. > > > > The uC will be an ATmega644P running at 3.0 - 3.3 V (still undecided) and > 1.8432 MHz (for ideal RS485 and lower power consumption). The power supply > will be an LP2951. The Atmel App Note AVR042 gives a pretty good > description of how to protect the uC power pins, so I'm following the > recommendations there (although I did have to clarify the units in Fig 6-1 > with Atmel tech support). I'll also put the usual bypass capacitor at the > pins of all other IC's. At this point, I don't have any questions about > power protection, and this post is just directed at I/O pins. > > > > There is no high-frequency I/O requirement. Almost all digital signals > change state once in a blue moon on uC time scales. At most I might have > one at 50 Hz max, and 1 or 2 at a few Hz. All analog signals are very > slowly varying, time scales of tens of seconds at the fastest. > > > > PCB real-estate is a bit of an issue but not a serious one. At any rate, > I'd like to start with what is functionally the best and only then adjust if > the result makes the boards unacceptably too big. > > > > All I/O signal wires will be shielded, with the shield grounded only at one > end. > > > > I always attempt to have input signals active-low, floating when not > asserted (and pulled high at the PCB end), but there are still many cases > where active-high is unavoidable. Signal levels are either CMOS or VB level > in most cases. There are a few at 5 V level. > > > > As much as possible I'll try to use a ground plane on the uC-based PCB's, > but probably not a power (Vcc) plane. > > > > For digital input lines, I'm proposing: > > > > (a) front end protection using a MAX681x for mechanical switch input (which > the majority of input signals are) or a Littelfuse SP72x for non- switch > inputs. Both have ESD & overvoltage protection. The MAX681x has the > additional advantage of providing automatic high-to-low level shifting to > get VB-level signals down to CMOS levels, and thus, since the 50 ms time > delay of this IC is not an issue in most cases, I could just use it > everywhere except for those cases where it would be an issue (eg, the 50 Hz > signal). The trade-off is that if I used the SP72x there would be a > significant number of situations where I would have to add a high- to-low > buffer/shifter IC. > > > > (b) an additional RC low-pass filter between the above and the uC pin, where > the value of R is chosen so it also acts to limit the current into the uC > pin to its max of 40 mA. C would then be selected so the -3dB breakpoint of > the filter is well above 50 Hz, say 1-2 KHz. Values I've computed, for > CMOS-level voltages, are about 100 ohms for R and about 1 uF for C for such > a breakpoint. > > > > For analog input lines, level-shifting cannot be done so I'd just use the > SP72x and RC filter. The filter values would be adjusted to accommodate > their typically higher voltages (such as VB or 5 V). > > > > When it comes to output lines, things are murkier in my brain. For signal > and non-inductive load outputs, I'm thinking of using the same SP72x's, or > nothing at all. Inductive loads will definitely require a flyback > suppression diode, but it's not clear to me if I should also add the SP72x, > or a DO-15 package TVS, to them as well. I often also install a diode > across the actual load (ie, actual motor or solenoid coil terminals). > > > > Any comments on any of the above will be very appreciated. One specific > question I have is should I add anything else to the RS485 lines, beyond > what the LTC1480 transceivers provide? > > > > Thanks, Steve > > > > > > > > > > > > [Non-text portions of this message have been removed] >
Message
Re: I/O line protection
2008-01-04 by Bruno
Attachments
- No local attachments were found for this message.