When $K$ is a simplicial complex, the dual complex $C^*(K)$ to the chain complex $C_*(K)$ has a concrete interpretation: an element in $C^n(K)$ is given by assigning an integer to every oriented $n$-simplex in $K$. We define the $n$^{th} cohomology group of this cochain complex as $H^n(K)$ ($H_n(K)$ for homology).
As noted on p.190 in Hatcher's Algebraic Topology, there is a canonical homomorphism $h$ from $H^n(K)$ to Hom$(H_n(K), \mathbb{Z})$, with $h$ surjective.
Suppose $H_n (K)$ is free abelian for each $n \in \mathbb{N}$.
My question: How would I use this fact to verify that $h$ is injective as well, and hence $h$ is an isomorphism? Any help would be appreciated.