What a cryptic title for a thread! I'm using a 16F84, RB0 is being used to detect the negative edge on the line of an old 8 bit computer I have. I can detect the change fine when polling, but when using it to trigger an interupt it fails. It seems that a Schmitt Trigger is used on RB0 when INTCON, INTE is set, so I am assuming the signal level is too low for the ST. Is there a simple way to boost this signal??
if the polling works then I don't think it's logic levels. More then likely something is wrong with you code. Make sure the global interrupt is enabled
I get a reading of +1.3v/+0v on my scope. I've found a solution using a MAX232, but I don't have one. The connection is T1IN-T1OUT-R2IN-R2OUT, basically converting TTL-RS232-TTL.
If you have 1.3/0 then a pullup (4.7K as suggested above) to Vdd and a diode between the pin and the signal (Anode to pic input) will give you 5.0/0.7 on the pic input. Much cheaper than a MAX232.
Mike.
edit, woops, no it won't. It will give you 2.0/0.7 unless it's an open collector output in which case you only need the pullup. Worth a try.
At first it held the line low, so I dropped the 3.3k resistor and now it works fine! It seems to have doubled the signal voltage. Very nice indeed! Could you please explain the purpose of the resistor tied to GND?
At first it held the line low, so I dropped the 3.3k resistor and now it works fine! It seems to have doubled the signal voltage. Very nice indeed! Could you please explain the purpose of the resistor tied to GND?
Actually it's not an amplifier. When the input voltage is 1.3 V, the output equals Vsat of your transistor (LOW). When the input voltage is 0, the output is 5 V (HIGH).
It's a TTL converter for non-TTL signals.