Programming with arduino Leonardo icsp.

I am having so much trouble uploading sketches onto my Arduino Uno R3. It was working just fine for a few days, untill it suddenly stopped uploading, displaying this error: avrdude stk500_recv() : programer not responding
avrdude: stk500_getsync() attempt1-10: not in sync: resp=0×03. I have the correct drivers installed, the board is recognized on device manager from com#3 which matches the tool on the latest IDE, but there is no serial communication between the board and my computer; the IDE . The L led flashes when the board starts so the bootloader is still present, but neither the TX or RX LEDs flash when the board is connected to my computer. Any suggestions, or would the chip that channels serial data to the ATmega328 be broken? I do have an Arduino Leonardo that can successfully upload sketches, however this board fails to carry out the sketch after it is uploaded for some reason. Even with this problem could I use the Leonardo's programer to program the Uno through the icsp pins, or would the Leonardo have to run the ISP example in order to pass the code onto the Uno?