For perceptron algorithm, the output and target values are either $0$ or $1$.
Assume output is $y$ and target is $d$.
From http://lcn.epfl.ch/tutorial/english/perceptron/html/learning.html, we can see that the learning / adjustment of the weights are like$$w_j(t+1)=w_j(t)+\eta(d-y)x$$
But if $d$ and $y$ are either $0$ or $1$, then $d-y$ would be either $-1$, $0$ or $1$, then it seems the learning becomes dependent on the learning rate?