I am a high school student and beginner of Arduino. I just come up with an idea that using an LED which flashes faster than people can see to transmit information. The coding scheme is ANSI and the modulation scheme is OOK. Then this light signal can be decoded on another computer.The communication is simplex and if light from the LED is blocked, the decode processes stop.The LED can be very close to the photocell if necessary-just not touching each other. I tried to do some researches but I can only find using IR for communication and this topic is grabbed by my classmate. So far I have 2 Arduino boards, a breadboard, some wires, LEDs, photocells, capacitors and resistors. Is it possible to do this project? If yes, where can I find some similar codes as references. Do I need to buy some other components?
Thanks for helping
Im certain that it would be possible. IR communication is basically the same concept.
Do I need to buy some other components?
No, you've got everything you need.
I think this will help http://www.merl.com/papers/docs/TR2003-35.pdf
I'd suggest using async serial encoding. You could implement that by designing a circuit to interface between the Arduino logic level and your preferred IR transmitter/receiver. If you connect the sender to the hardware serial UART Tx pin and the receiver to the hardware UART Rx pin, then all the framing and error checking can be done for you and you will just be presented with a byte stream.
Note that the default hardware Serial UART is also used for USB serial comms back to the PC so it would be sensible to use an Arduino with multiple hardware serial UARTs such as the mega.
Also note that the Arduino itself is adding very little value to the solution and unless you can think of anything else useful for it to do you could get rid of the Arduino completely and just connect your logic level I/O circuits to an FTDI USB/serial adapter board.
PeterH:
I'd suggest using async serial encoding. You could implement that by designing a circuit to interface between the Arduino logic level and your preferred IR transmitter/receiver. If you connect the sender to the hardware serial UART Tx pin and the receiver to the hardware UART Rx pin, then all the framing and error checking can be done for you and you will just be presented with a byte stream.Note that the default hardware Serial UART is also used for USB serial comms back to the PC so it would be sensible to use an Arduino with multiple hardware serial UARTs such as the mega.
Also note that the Arduino itself is adding very little value to the solution and unless you can think of anything else useful for it to do you could get rid of the Arduino completely and just connect your logic level I/O circuits to an FTDI USB/serial adapter board.
Thx. But I did not do UART before. Are there any examples?
By the way, since my classmate grab IR communication topic already so I cannot do project on IR =(
rclymer:
Im certain that it would be possible. IR communication is basically the same concept.Do I need to buy some other components?
No, you've got everything you need.
I think this will help http://www.merl.com/papers/docs/TR2003-35.pdf
So the code of this project is similar to IR communication? I just need to find a IR communication code and change it a little bit to make it work for LED?
Shiroe:
By the way, since my classmate grab IR communication topic already so I cannot do project on IR =(
You may then have to figure out a reason to argue why your project is actually different from the IR one.