I salvaged a board from a satellite receiver that has a 4 digit 7 segment display, a couple of buttons, and a FD620K1 controlling it all.
The board has 6 pins:
- 1 VDD
- 1 GND
- 1 pin for the IR receiver (Don't need it)
- 1 STD
- 1 CLCK
- 1 Data I/O
After some googling I found the schematic for this part that controls the board. And the schematic for the board itself. (I found a Chinese one that I translated, I cannot upload as a new user, but I will add the link to it in Chinese: The Chinese pdf).
My question is: Is it feasible to code a custom way for the Arduino to control the digit display, and read the input?
Here's some code I tried to write that did not work:
Pin configuration:
- VDD -> 3.3V
- GND -> GND
- IR -> (Unused)
- STB -> 4
- DIO -> 5
- CLCK -> 6
Code:
void setup() {
Serial.begin(9600);
Serial.println("serial delimit test 1.0"); // so I can keep track of what is loaded
pinMode(4, OUTPUT); // STB
digitalWrite(4, HIGH);
pinMode(5, OUTPUT); // DIO
digitalWrite(5, LOW);
pinMode(6, OUTPUT); // Clock
Serial.println("Setting it to high in 1 second");
delay(1000);
Serial.println("High");
// digitalWrite(4, HIGH);
}
int i = 0;
int bytemessage[] = {1,1,0,0,0,1,0,1};
int sleep = 10;
void loop() {
i++;
if (i == 500)
{
digitalWrite(4, LOW);
Serial.println("Sending");
for(int b = 0; b < sizeof(bytemessage); b++)
{
digitalWrite(6, HIGH);
if(b == 1)
{
digitalWrite(5, HIGH);
}
delay(sleep);
digitalWrite(6, LOW);
digitalWrite(5, LOW);
delay(sleep);
}
digitalWrite(4, HIGH);
}
digitalWrite(6, HIGH);
delay(sleep);
digitalWrite(6, LOW);
delay(sleep);
Serial.println(digitalRead(5));
}
Thanks!