Die Zenerdioden im Seriellen Programmer sind als Spannungsbegrenzung da. Die Spannung muß auf einen Wert unter Vcc+0.5 V begrenzt werden. Andererseits sollte eine Spannung von wenigstens 0,7*Vcc rauskommen, damit ein High sicher erkannt wird. Zusätzlich verhindert die zenerdiode auch eine negative Spannung unter etwa -0.6V
Für 5 V versorgung ist der Tolleranzbereich also etwa 5.5 V bis 3,5 V. Mit 2 roten LEDs und eine Diode in Reihe sollte man auf etwa 4-4.5 V kommen. Dabei kann man die LEDs für beide Kanäle gemeinsam nutzen. Zusätzlich muß auch noch eine Diode rein, um eine negative Spannung zu verhindern.
Wenn man es etwas variabler haben will, könnte man die Begrenzung auch über einen PNP Transistor an VCC anpassen. Dann sollte der Programmer auch bei einer Schaltung mit 3.3 V noch funktionieren können. Die Begrenzung sollte dann die Rückrichtung sein.