sylarhero:
if I am not wrong between the Arduino and the PC there is serial communication on the pins 0 and 1.
You are not not wrong. The USB communication between the PC and Leonardo doesn't appear on any Arduino pin. Serial1 is the hardware serial for pins 0 and 1 and it's totally separate. It means you don't need to mess around with SoftwareSerial for this application.
Just flashing an LED on and off is difficult to detect with a photodiode. You will not get much more than 1-2 metres range, even with good analog processing at each end. You should use a scheme like an IR remote where the on/off signal is imposed on a 38KHz carrier frequency. You can get simple modules which do all of this for you so they can be connected directly to the Arduino pins. Then you can get many metres range, even in daylight.