标题：单片机C语言编程基础与实践
基本信息
作　者：刘同法 著丛 书 名：增强型80C51单片机初学之路动手系列出 版 社：北京航空航天大学出版社
出版时间：2009-02-01版　次：1页　数：279装　帧：平装开　本：16开所属分类：图书 > 教材教辅 > 中职中专教材
内容简介
《单片机C语言编程基础与实践》是专为初学单片机C语言编程的读者而编写的。语言平实、叙述简洁、实践性强是《单片机C语言编程基础与实践》的最大特点。全书分为基础篇和实战篇两部分。基础篇为前3章：第1章集中讲述C语言基础知识与编程方法，第2章为P89LPC932A1单片机硬件基础知识，第3章为单片机C语言编程技巧；实战篇分为10个课题，以P89LPC932A1单片机为硬件平台，训练读者单片机C语言编程实践应用的能力。
《单片机C语言编程基础与实践》可作为大中专学生、单片机爱好者以及从事自动控制、智能仪器仪表、电力电子、机电一体化和各类单片机应用工作的工程技术人员的学习参考用书。
目录
基础篇
第1章 C语言基础与简单应用编程3
1.1 C语言概述 3
1.2 C语言的基础知识3
1.2.1 C语言的基本词法3
1.2.2 C语言的基本语句7
1.2.3 C语言的基本结构8
1.3 C语言的基本数据类型和运算符10
1.3.1 C语言的数据类型10
1.3.2 常量11
1.3.3 变量14
1.3.4 运算符19
1.3.5 表达式和语句30
1.4 C语言的程序控制流与程序编写32
1.4.1 C程序编写基础知识32
1.4.2 循环语句与循环程序36
1.4.3 条件语句与条件判断48
1.4.4 数组与指针 53
1.4.5 结构67
1.4.6 函数的说明方法与调用70
1.4.7 C语言的编程技巧77
1.5 C语言的编程环境与程序编译方法79
1.5.1 VC6.0简易使用指南79
1.5.2 TKStudio C编译简易使用指南85
本章作业标准答案90
第2章　LPC932A1单片机内部资源92
2.1 LPC932A1单片机概要92
2.1.1 LPC932A1单片机的特性92
2.1.2 LPC932A1单片机的引脚定义93
2.2 LPC932A1单片机内核80C51硬件结构96
2.2.1 80C51的内部结构与引脚定义96
2.2.2 80C51的存储器配置98
2.2.3 80C51的I/O接口电路101
2.2.4 80C51的中断系统102
2.2.5 80C51的定时器104
2.2.6 80C51的UART串行通信106
2.3 LPC932A1单片机在80C51硬件结构的基础上增加部分108
2.3.1 LPC932A1的内部结构108
2.3.2 LPC932A1的存储器配置109
2.3.3 LPC932A1的I/O接口电路109
2.3.4 LPC932A1的中断系统109
2.3.5 LPC932A1的定时器112
2.3.6 LPC932A1的多功能UART串行通信114
2.3.7 LPC932A1的I2C总线接口118
2.3.8 LPC932A1的SPI同步串行通信接口122
2.3.9 LPC932A1的模拟比较器124
2.3.10 LPC932A1的E2PROM数据存储器125
第3章 单片机C语言编程技巧127
3.1 单片机C语言基础知识127
3.1.1 单片机C语言专用数据存储类型127
3.1.2 单片机C语言对单片机特殊功能寄存器的定义方法131
3.1.3 单片机C语言对单片机位地址的定义方法132
3.1.4 位变量(bit)在单片机C语言中的运用方法133
3.2 单片机C语言编程起步133
3.2.1 一个简单的指示灯程序到流水灯程序的编写133
3.2.2 4位数码管C程序的编写135
3.2.3 单键盘与4×4键盘C程序的编写138
3.3 单片机C语言对单片机中断程序的编程方法145
3.3.1 单片机中断C程序的编程基础145
3.3.2 一个简易电子钟的编程实现148
实战篇
课题1 LPC932A1最小系统的应用制作(I/O口)153
课题2 LPC932A1定时器与计数器的应用制作164
课题3 LPC932A1外部中断系统的应用制作(含键盘中断)179
课题4 用LPC932A1内部RTC产生实时时钟来制作一个电子钟193
课题5 LPC932A1内部模拟比较器的应用202
课题6 LPC932A1内部E2PROM及UART串行通信的应用210
课题7 LPC932A1内部看门狗的应用228
课题8 LPC932A1内部PWM与频率计数器的应用操作239
课题9 LPC932A1内部I2C总线的应用247
课题10 LPC932A1内部SPI同步串行通信接口的应用260
附录
附录A ASCII码表271
附录B 十进制数、二进制数和十六进制数对照表275
附录C MiniICP for LPC900下载线简易使用指南276
附录D 网上资料内容说明280
参考文献281
温馨提示282
前言
当你还沉浸在《单片机基础与最小系统实践》的学习中时，《单片机C语言自学读本》又如期而至了。
在《单片机外围接口电路与工程实践》抓紧时间面世的日子里，许多朋友又期待着本书的问世，以便更进一步的学习C语言。这促使我编写完《单片机外围接口电路与工程实践》后，又马不停蹄地开始编写此书。
C语言这一程序设计语言，无论在计算机程序设计员中，还是在单片机程序设计员中，无不受到青睐，它是每个工程师最想学习的语言。这是因为它具有丰富的数据类型和严谨的结构，如梯队嵌套的if语句、包容各类数据类型的数据结构……是让程序员挥洒思想的有力工具。
本书的最大特色是：专为单片机C程序编写快速入门而设计。对于学过单片机基础的读者，特别是动手做过单片机基础训练的读者，最需要的就是时间，那么，一本C51编程快速入门的书，对于他们来说如获至宝。花费很少的时间就能学会C51编程，是一件多么高兴的事情啊。通过衡阳技师学院电气技师班同学们的测试性学习，本书达到了理想的效果。
学习方法与技巧
1.大学生活丰富多彩，会令你一生都难忘，但难忘有很多种，你可以学了很多东西而难忘，也会因为什么都没学到而难忘！
2.计算机专业是一个很枯燥的专业，但即来之、则安之，只要你努力学，也会发现其中的乐趣的。
3.记住：万丈高楼平地起！基础很重要，尤其是专业基础课，只有打好基础才能学得更深。
4.C语言是基础，很重要，如果你不学好C语言，那么什么高级语言你都学不好。
5.C语言与C++语言是两回事。就像大熊猫和小熊猫一样，只是名字很像。
6.请先学习专业课《数据结构》、《计算机组成原理》，不要刚开始就拿着一本VC在看，你连面向对象都搞不清楚，看VC没有任何用处。
7.对编程有一定的认识后，就可以学习C++了。（是C++而不是VC，这两个也是两码事。C++是一门语言，而VC教程则是讲解如何使用MFC类库，学习VC应建立在充分了解C++的基础之上。看VC的书，是学不了C++语言的。）
8.学习编程的秘诀是：编程，编程，再编程；
9.认真学习每一门专业课，那是你今后的饭碗。
10.在学校的实验室就算你做错一万次程序都不会有人骂你，如果在公司你试试看！所以多去实验室上机，做得多了，毕业后就错得少了。
11.从现在开始，在写程序时就要养成良好的习惯。
12.不要漏掉书中任何一个练习题——请全部做完并记录下解题思路。
13.你会买好多参考书，那么请把书上的程序例子亲手输入到电脑上实践，即使配套光盘中有源代码。
14. V C、C #、.NET这些东西都会过时，不会过时的是数据结构和优秀的算法！
15.记住：书到用时方恨少。不要让这种事发生在你身上，在学校你有充足的时间和条件读书，多读书，如果有条件多读原版书，你要知道，当一个翻译者翻译一本书时，他会不知不觉把他的理念写进书中，那本书就会变得像鸡肋！
16.我还是强调认真听专业课，因为有些课像《数据结构》、《编译原理》、《操作系统》等等，这种课老师讲一分钟能让你明白的内容，你自己看要看好几个月，有的甚至看了好几年都看不明白。
17.抓住在学校里的各种实践的机会，要为自己积累经验，就业时经验比什么都有用。
18.多去图书馆，每个学校的图书馆都有很多好书等你去看！
19.编程不是技术活，而是体力活。
20.如果你决定了要当一个好的程序员，那么请你放弃游戏，除非你是那种每天只要玩游戏就能写出好程序的天才!
21.你要有足够的韧性和毅力！有个高手出一一道题测试你的韧性和毅力：找个10000以内的素数表，把它们全都抄下来，然后再检查三遍，如果能够不间断地完成这一工作，你就可以满足这一条。[1]
22.找到只属于你自己的学习方法。不要盲目的追随别人的方法，适合自己的才是最好的！