IR verici mesafesinin mikrodenetleyici ile değişeceğini sanmıyorum ama şöyle bir durum var. IR sensörlerin çoğu modül yapıdadır. belli bir taşıyıcı sinyal değeri vardır. 32,36,38,40 khz gibi. bu sinyali IR led ile uygularsan görür fakat sürekli verdiğinde bunu gürültü olarak algılayıp kapatmaya gider. o nedenle sinyali 10ms gibi periyotlar halinde göndermen gerekiyor. sanırım mesafe sorunu bunlarla ilgili olabilir. ya taşıyıcı sinyalini tutturamadın, yada periyotlu gönderme yapman gerekiyordur veya kullandığın IR led gücü yetersiz geliyordur, birde IR ledlerin belli bir dalga boyu var. yani hapsinin verdiği ışık türü aynı değil. belki alıcı bundan etkileniyor olabilir.
pic konusuna gelince, taşıyıcı sinyal üretmek için dahili pwm donanımına sahip herhangibi birtane tercih etmelisin. örneğin 16f628a veya az pin istersen 12F683 olabilir. pwm çıkışından taşıyıcı sinyal üretip diğer başka bir pinden periyotlu gönderme yapacaksın.
son olarak, IR yerine RF modüller tercih edersen daha kullanışlı olur.