Signal Processing for Communications
Taking a novel, less classical approach to the subject, the authors have written this book with the conviction that signal processing should be fun. Their treatment is less focused on the mathematics and more on the conceptual aspects, allowing students to think about the subject at a higher conceptual level, thus building the foundations for more advanced topics and helping students solve real-world problems. The last chapter pulls together the individual topics into an in-depth look at the development of an end-to-end communication system. Richly illustrated with examples and exercises in each chapter, the book offers a fresh approach to the teaching of signal processing to upper-level undergraduates.
I'm using it in my coursera.org class
Real world examples take the dryness and dullness out of a typical all math or classical book like Oppenheim Wilsky.