$u$ is the Thom class, it is Kronecker dual to those classes
"orthogonal" to $E_0$. That is, think of those simplices $\nu$ which intersect $E_0$ in one point, then $u(\nu)=1$. Now $E_0$ is homeomorphic to $B$, so if we have a simplex $\tau$ in $B$ we can think of it is being in $E_0$. Now take $\tau\times \nu$, then the image of the $f$ where $f$ is dual to $\tau$ (that is $f(\tau)=1$) under the Thom isomorphism will be the function dual to $\tau\times \nu$, so $\Phi(f)( \tau\times \nu)=1$. Cup product comes from the external product operation $\times$, thus that is how it enters into the formula.
In Milnor, he proves Thom, via a lemma which is basically "Thom for $\mathbb{R}^n$", this is the local picture for the Thom map so I would go back and study that lemma. One can also try to analyse the theorem in terms of Poincare duality, in which case you are taking an intersection with $E_0$ and then dualising.
Short answer: The Euler class of the tautological bundle over $\mathbb{H}P^n$ is a generator of $H^4(\mathbb{H}P^n;\mathbb{Z})\cong \mathbb{Z}$.
I'm going to view $\mathbb{H}^n$ as a quaternionic "vector space" where the scalars multiply on the right. This allows me to keep linear transformations on the left.
Set $f:\mathbb{C}^{2n}\rightarrow \mathbb{H}^n$ to be the map which takes $(z_1, z_2,..., z_{2n})$ to $(z_1 + jz_2, z_3 + jz_4 ,..., z_{2n-1} + jz_{2n})$. Because of the placement of the $j$ and the fact that scalars multiply on the right, if we view $\mathbb{H}^n$ as a $\mathbb{C}$-vector space (by restricting $\mathbb{H}$ to $\mathbb{C}$), then $f$ is $\mathbb{C}$-linear.
I'll write $[z_1: .... :z_{n+1}]_\mathbb{C}$ for the equivalence classes the define $\mathbb{C}P^n$. That is, two nonzero $x,y\in \mathbb{C}^n$ are equivalent if there is a non-zero complex number $\lambda$ for which $x = y\lambda$. (Of course, $\mathbb{C}$ is commutative, so it doesn't matter what side $\lambda$ is on).
Likewise, I'll write $[p_1 : ... : p_{n+1}]_{\mathbb{H}}$ for quaternionic case. That is, I'll call $x,y\in \mathbb{H}P^n$ equivalent if $x = y\lambda$ for some non-zero $\lambda \in \mathbb{H}$. (Here, the location of $\lambda$ is important.)
Now, $f$ induces a map $g:\mathbb{C}P^{2n+1}\rightarrow \mathbb{H}P^n$ by $g([z_1:z_2:...:z_{2n+1}:z_{2n+1}]_{\mathbb{C}}) = [z_1 + jz_2: ... : z_{2n+1} + j z_{2n+2}]_\mathbb{H}$ which is well defined because the $\mathbb{C}$-scalar multiplication on $\mathbb{H}P^n$ is the restriction of the $\mathbb{H}$-scalar multiplication.
Now, let $\mathbb{H}\rightarrow E\xrightarrow{\pi} \mathbb{H}P^n$ be the $\mathbb{H}$-tautological bundle.
Proposition: Viewed as real bundles, the pull back bundle $g^\ast(E)$ splits as a sum of two copies of the $\mathbb{C}$-tautological bundle.
Proof: Let $T$ denote the tautological $\mathbb{C}$-bundle over $\mathbb{C}P^{2n+1}$. Define a map $\phi$ from $T\oplus T$ to $E$ by $\phi(z,v_1, v_2) = (g(z), f(v_1) + f(v_2)j)$.
Note that $\phi$ really has an image in $E$: because $v_1 \in z$ and $f$ is $\mathbb{C}$-linear, $f(v_1)\in g(z)$. Also, because $g(z)$ is a quaternionic line, $f(v_2)j \in g(z)$ iff $f(v_2) \in g(z)$. And, since $f$ is $\mathbb{C}$-linear, $f(v_2)\in g(z)$.
This shows that $\phi$ really does map into $E$. It's obviously $\mathbb{R}$-linear (because $\mathbb{R}\subseteq \mathbb{H}$ is in the center of $\mathbb{R}$), thought I don't think it's $\mathbb{C}$-linear.
Lastly, note that $\phi$ is injective: if $f(v_1) + f(v_2)j = 0$, then first note that $f(v_1)\in \mathbb{C}$ while $f(v_2)j\in \mathbb{C}j \bot \mathbb{C}$, so this implies that $f(v_1) = f(v_2) = 0$. Now, because $f$ itself is injective, this implies $v_1 = v_2 = 0$.
Thus, $T\oplus T$ fits in the same bundle diagram as $g^\ast(E)$, so they must be isomorphic. $\square$
Since the Euler class is natural, $g^\ast(e(E)) = e(g^\ast(E)) = e(T\oplus T) = e(T)\cup e(T)$. Since the top Chern class equals the Euler class for a complex bundle, $e(T) = a$, where $H^\ast(\mathbb{C}P^{2n+1}) \cong \mathbb{Z}[a]/a^{2n+2}$. It follows that $e(T\oplus T) = e(T)\cup e(T) = a^2$, so is a generator of $H^4(\mathbb{C}P^{2n+1})$.
Proposition: The map $g$ induces an isomorphism on $H^4$. In particular, the Euler class of $E$ is a generator of $H^4(\mathbb{H}P^n;\mathbb{Z})\cong \mathbb{Z})$.
Proof: The map $g$ is actually a fiber bundle map with fiber $S^2$. For example, the chain of subgroups $Sp(n)\times S^1\subseteq Sp(n)\times Sp(1)\subseteq Sp(n+1)$ gives a homogeneous fiber bundle $$ Sp(n)\times Sp(1)/ (Sp(n)\times S^1)\rightarrow Sp(n+1)/(Sp(n)\times S^1)\rightarrow Sp(n+1)/(Sp(n)\times Sp(1))$$ which is, up to diffeomoprhism, given by $S^2\rightarrow \mathbb{C}P^{2n+1} \xrightarrow{g} \mathbb{H}P^n$.
Now, the Euler class of this $S^2$-bundle must be trivial (since $H^3(\mathbb{H}P^n) = 0$), so the Gysin sequence splits into short exact sequences of the form $$ 0\rightarrow H^k(\mathbb{H}P^n)\xrightarrow:{g^\ast} H^k(\mathbb{C}P^{2n+1}) \rightarrow H^{k-2}(\mathbb{H}P^n)\rightarrow 0.$$ Now, if $k$ is a multiple of $4$ (so $H^k(\mathbb{H}P^n)$ is non-zero), then $k-2$ is not a mulitple of $4$, so $H^{k-2}(\mathbb{H}P^n) = 0$. Thus, this short exact sequence shows that $g^\ast$ is an isomorphism on degrees which are a multiple of $4$. $\square$.
Best Answer
Almost by definition, the Euler class is the self-intersection number of the zero section of the tangent bundle. And since the zero section is homotopic to any other section, it is also equal to the intersection number of the zero section with any other section. The easiest thing is to pick a section which is transverse to the zero section, with isolated intersection points, and then to add up the local intersection numbers over all the intersection points.
This is just the Poincare-Hopf index formula: a section of the tangent bundle is just a vector field; the intersection points with the zero section are just the zeroes of the vector field; and the local intersection number at each zero is just the index of the vector field at that zero.
So, all you have to do is pick a vector field on $S^n$ with isolated zeroes whose indices are easy to compute. The easiest is the vector field which has a "source" at the south pole and a "sink" at the north pole. The index of a source equals $+1$, and the index of a sink equals $(-1)^n$.