IR LED without resistor nano

  1. The absolute maximum rating for an Arduino pin (ATmega boards) is 40mA. You'd never run the pin at its absolute maximum if you want a reliable circuit, you run it comfortably below, say 25mA or less.

  2. The LED has a continuous rating for current and a pulse rating. The pulse rating is what the device
    can stand without immediate damage, the continuous rating is what won't cause it to overheat and
    be thermally damaged for continouous on operation. If you are pulsing the LED you'd go to the right
    graph in the datasheet to see what maximum current you can run for the duty-cycle you use, or estimate
    it from the average current (which has to be equal (or better still less) than the continuous rating).

  3. Arduino pins as OUTPUTs have about 30 ohms of internal resistance in the driver transistors for the pin,
    you can factor that in to your external resistor calculations. This internal resistance depends a bit on the
    supply voltage - its more for a 3.3V ATmega board.

  4. There is no pulse rating for Arduino pins given. They may or may not be able to handle > 40mA for
    short periods, so until Atmel say otherwise you make the conservative assumption that the pulse
    rating is also 40mA.

Actually 40mA is much higher than most logic chips can drive, 5mA is more normal, so don't be lulled
into assuming all logic signals can drive an LED at 20mA - in fact most can't (and modern high-brightness
LEDS are way too bright at 20mA anyway).

For IR remote you need as much IR as possible which is why the IR emitters are driven in pulses at
high current, and to do this a transistor to boost current is needed, such as 2N2222 or a MOSFET.