Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[PIC] Preventing Noise in PIC input lines

Status
Not open for further replies.

burrow

Full Member level 2
Joined
Dec 15, 2014
Messages
147
Helped
3
Reputation
6
Reaction score
3
Trophy points
18
Activity points
1,148
Hai,
i just didnt succeed in preventing noise from effecting my circuit yet. I am using Pic16f628a. it gets around 4 inputs from another ic( 7404 ), But the problem is that signals from the encoder reach PIC via a wire of almost 15 meters.

Iam not using Twisted pair wire or anything ,they are just normal wires.

At pic's end i have a 10k Pull down.

What are the other things i should try out to solve my problem ? . The signals send is not any high frequency signals, But noise just makes data look fluctuating
 

Have you tried using cermaic capacitors in parallel with electrolytic capacitors at each input terminal ends?
 

Have you tried using cermaic capacitors in parallel with electrolytic capacitors at each input terminal ends?

No not yet. i will try that. So can i use a 0.1uf capacitor in parallel with a 1uf electrolytic capacitor?

One end of capacitors should go to input and other end to ground .. is it ?
 

Need a diagram of the connections to really assess.

But here are some general issues with connecting with 15 meters of wire...

If you are looking at 4 digital signals from the 7404 then you should make sure you have a common ground between 7404 and the PIC. If you didn't do that you will likely get fluctuating readings as there could be differences in ground potential. You might also be seeing problems with ground loops, cross talk (if you bundled the 4 wires), interference with AC cables or other cables lying nearby (unshielded wire).

There are reasons for using differential signals and cables with ground shields for long distance connections.
 

Need a diagram of the connections to really assess.


But here are some general issues with connecting with 15 meters of wire...

If you are looking at 4 digital signals from the 7404 then you should make sure you have a common ground between 7404 and the PIC. If you didn't do that you will likely get fluctuating readings as there could be differences in ground potential. You might also be seeing problems with ground loops, cross talk (if you bundled the 4 wires), interference with AC cables or other cables lying nearby (unshielded wire).

There are reasons for using differential signals and cables with ground shields for long distance connections.

Both pic and 7404 are running on common supply.
So what are you suggesting me to do? Differential signals using ics like max 232?
 

For 15 meters I would use a differential driver and not single ended.
 

For 15 meters I would use a differential driver and not single ended.


Need a diagram of the connections to really assess.

But here are some general issues with connecting with 15 meters of wire...

If you are looking at 4 digital signals from the 7404 then you should make sure you have a common ground between 7404 and the PIC. If you didn't do that you will likely get fluctuating readings as there could be differences in ground potential. You might also be seeing problems with ground loops, cross talk (if you bundled the 4 wires), interference with AC cables or other cables lying nearby (unshielded wire).

There are reasons for using differential signals and cables with ground shields for long distance connections.

Have you tried using cermaic capacitors in parallel with electrolytic capacitors at each input terminal ends?


Hai what do you guys suggest about using optocoupler for each input along with ceramic capacitors ?? Will that solve my problems ?
 

I don't see how a capacitor in parallel will improve signal integrity on a fast changing data line.

Try putting a series resistor on the Tx end. Around 100 Ohms - this won't match the impdance of the (probably impossible to match) transmittion line but it will lower the slew rate of your signal.

If this doesn't help - use differential (RS422/RS485/LVDS/etc...) trancievers as ads-ee suggested.
 

If the inputs to the pic are fairly low speed then optos are a good option, you should never willingly take a signal from an external interface directly into a micro, it just never ends well (USB is a pain in this respect).

RS485 is an option, differential and you can get line recevers and drivers with good ESD immunity, usually requires a 5v rail however, which can be a pain in a 3.3v world, lvds does not really have the common mode range to make me happy for an off board interface over that length in an unspecified environment.

At a minimum, 10k series near the pic and a 100nf cap to ground will make things much more robust (and slower) then direct connection, but RS485 is better.

Twisted pairs are a good and happymaking thing, for 4 signals I would suggest that cat 5 FTP cable is cheap and commonplace (And it is a good match for RS485).

Regards, Dan.
 

If the inputs to the pic are fairly low speed then optos are a good option, you should never willingly take a signal from an external interface directly into a micro, it just never ends well (USB is a pain in this respect).

RS485 is an option, differential and you can get line recevers and drivers with good ESD immunity, usually requires a 5v rail however, which can be a pain in a 3.3v world, lvds does not really have the common mode range to make me happy for an off board interface over that length in an unspecified environment.

At a minimum, 10k series near the pic and a 100nf cap to ground will make things much more robust (and slower) then direct connection, but RS485 is better.

Twisted pairs are a good and happymaking thing, for 4 signals I would suggest that cat 5 FTP cable is cheap and commonplace (And it is a good match for RS485).

Regards, Dan.

Hai,
Yes the inputs are fairely slow. Its just values from few sensors, And the speed is not an issue at all.
Anyway now i just added a series resistor of 1k to pic end also a cap. Lets see if it solves the problem.:)
 

I used ti chip which SN75179B is a differential driver and receiver pair

It is designed to improve the performance of full-duplex data communications over long bus lines. but in my case bus line with domestic electrical wiring line that gives me 90% improvement only
 
  • Like
Reactions: abc_de

    abc_de

    Points: 2
    Helpful Answer Positive Rating
Hello
use line driver at output and input stage. Use .1uf capacitor at input or Schmitt trigger ic at input.
Or u can use cmos ic which work more then 5 volts.
Good luck
 

I don't see how a capacitor in parallel will improve signal integrity on a fast changing data line.

Try putting a series resistor on the Tx end. Around 100 Ohms - this won't match the impdance of the (probably impossible to match) transmittion line but it will lower the slew rate of your signal.

If this doesn't help - use differential (RS422/RS485/LVDS/etc...) trancievers as ads-ee suggested.



Iam going to switch to MAX232. so when i use max232 can i just drop all these capacitors and pull up resistors and other noise filtering stuff i used which i already have ?
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top