Practical Arduino C
from beginner to competent programmer
This book is free to read online but also available to buy from:
The first four full chapters are already online and the remaining chapters will be posted soon.
Follow the link towards the bottom of this page to get started.