Here is an elementary way of accomplishing a rotation. It requires boxing the figure contents (via a minipage) before rotating it.

\documentclass{article}
\usepackage{graphicx}% http://ctan.org/pkg/graphicx
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\newsavebox{\myimage}
\begin{document}
\lipsum[1]
\begin{figure}[ht]
\centering
\savebox{\myimage}{\rule{100pt}{150pt}}% Image to be included
\rotatebox{90}{% Rotate 90 CCW
\begin{minipage}{\wd\myimage}
\usebox{\myimage}
\caption{Here is a caption of the figure.}
\end{minipage}}
\end{figure}
\end{document}
The image is saved in a box \myimage in order to obtain its width (\wd\myimage). This is then used to set the width of the minipage. I used a dummy 100pt x 150pt black rectangle.
lipsum was used to generate dummy text, Lorem Ipsum style.