

The Sharp PC847X is an optoisolator (also referred to as an optocoupler) designed to provide electrical isolation between its input and output. It achieves this by using an internal light-emitting diode (LED) and a phototransistor. When the LED is activated, it emits light that is detected by the phototransistor, enabling signal transmission without a direct electrical connection. This isolation is crucial for protecting sensitive components from high voltages, electrical noise, or ground loops.








The Sharp PC847X series includes multiple variants (e.g., PC847, PC847C, etc.), but the general specifications are as follows:
The Sharp PC847X has a 4-pin configuration. The pinout is as follows:
| Pin Number | Name | Description |
|---|---|---|
| 1 | Anode (A) | Positive terminal of the internal LED |
| 2 | Cathode (K) | Negative terminal of the internal LED |
| 3 | Emitter (E) | Emitter of the phototransistor |
| 4 | Collector (C) | Collector of the phototransistor |
Input Side (LED):
Output Side (Phototransistor):
The following example demonstrates how to use the Sharp PC847X to isolate a digital signal from an Arduino UNO.
// Sharp PC847X Optoisolator Example
// This code demonstrates how to send a signal through the optoisolator
// and read the isolated output.
const int inputPin = 3; // Arduino pin connected to the optoisolator input
const int outputPin = 2; // Arduino pin connected to the optoisolator output
void setup() {
pinMode(inputPin, OUTPUT); // Set input pin as output
pinMode(outputPin, INPUT); // Set output pin as input
Serial.begin(9600); // Initialize serial communication
}
void loop() {
digitalWrite(inputPin, HIGH); // Turn on the LED inside the optoisolator
delay(500); // Wait for 500ms
int outputState = digitalRead(outputPin); // Read the isolated output
Serial.print("Output State: ");
Serial.println(outputState); // Print the output state to the serial monitor
digitalWrite(inputPin, LOW); // Turn off the LED
delay(500); // Wait for 500ms
}
No Output Signal:
Output Signal is Always High:
Output Signal is Always Low:
Excessive Heat:
Q1: Can the PC847X handle AC signals?
A1: Yes, the PC847X can handle AC signals on the input side, but you must use a rectifier circuit to ensure proper operation.
Q2: What is the difference between PC847 and PC847C?
A2: The difference lies in the Current Transfer Ratio (CTR) range. Check the datasheet for specific CTR values for each variant.
Q3: Can I use the PC847X for high-speed signal transmission?
A3: The PC847X is suitable for low to moderate-speed signals. For high-speed applications, consider optoisolators designed for faster switching.
Q4: How do I calculate the input resistor value?
A4: Use the formula:
[
R = \frac{V_{in} - V_F}{I_F}
]
where ( V_{in} ) is the input voltage, ( V_F ) is the forward voltage (1.2V), and ( I_F ) is the desired forward current (e.g., 10mA).