内容简介
第1章 什么是C语言
1.1什么是程序
1.1.1计算机的结构
1.1.2程序和命令
1.2二进制和十六进制
1.3 C语言
1.3.1从汇编语言谈起
1.3.2 C语言的历史
1.3.3 C语言特点
第2章PIC单片机的基本概念
2.1什么是PIC
2.1.1 PIC概要
2.1.2 PIC单片机的结构概要
2.1.3 PIC单片机的存储器结构
2.1.4指令结构
2.1.5特殊功能寄存器
2.2程序开发环境
2.2.1基本环境
2.2.2 MPLAB
2.2.3 PIC编程器
第3章PIC用C语言编译器
3.1 PIC的C语言编译器
3.2 CSS公司的C编译器
3.2.1 CSS公司的C编译器结构
3.2.2 CCS公司的C编译器概要
3.2.3限制事项
3.3 PCM的安装
3.3.1 PCM的安装
3.3.2与MPLAB的集成
3.4 PCM的使用方法
3.4.1 C语言程序设计流程
3.4.2建立项目
3.4.3建立源文件
3.4.4编译
3.5调试方法
3.5.1在MPLAB环境下的程序调试
3.5.2根据标准输入/输出函数进行调试
3.6对PIC单片机的写入操作
3.6.1 PIC START Plus的情形
3.6.2 PIC编程器Ver3的情形
第4章 练习用的硬件
4.1练习用的PIC通用单元A
4.1.1概要
4.1.2功能及电路
4.1.3接口描述
4.1.4使用的元件
4.1.5安装方法
4.2练习用的PIC通用单元B
4.2.1概要
4.2.2功能及电路
4.2.3接口描述
4.2.4液晶显示器的连接
4.2.5所用元件
4.2.6安装
第5章 什么是C语言
5.1 C程序的基本结构
5.1.1程序的基本结构
5.1.2函数、表达式和数据
5.2程序的格式和记述
5.2.1格式的规定
5.2.2编程风格
5.3 main函数
第6章 首先上手试一试
6.1设备指定与配置
6.1.1设备指定和#include
6.1.2配置与#fuses
6.2输入/输出端口的控制
6.2.1 PIC的输入/输出端口
6.2.2 C语言编程
6.3标准输入/输出函数的使用方法
6.3.1掌握RS232C
6.3.2 printf函数
第7章 预处理器
7.1预处理器分类和一览
7.2符号定义和文件包含
7.2.1符号定义的预处理器
7.2.2文件包含
7.3条件编译
7.3.1 # if语句的用法
7.3.2 # ifdef语句的使用
7.3.3 # error语句的使用方法
7.4设备特有的控制用预处理器
7.4.1页面和程序配置
7.4.2#inline和#separate
7.4.3页面和变量的配置
第8章 程序结构和流程控制函数
8.1 3种基本结构
8.2 if语句的使用方法
8.2.1 if语句的格式
8.2.2 if语句的嵌套
8.2.3条件的表述方法
8.2.4复合条件的表述方法
8.3 while语句和do while语句
8.3.1 while语句
8.3.2 do while语句
8.4 for语句的使用方法
8.5 switch语句的使用方法
8.6 break语句和continue语句
8.6.1 break语句
8.6.2 continue语句
第9章 数据类型和运算符
9.1数据类型的种类和格式
9.1.1数值常量的格式
9.1.2变量和数据类型
9.1.3变量的声明格式
9.1.4文字编码和char型
9.1.5字符型数据的书写方式和文字排列
9.2运算符号的使用方法
9.2.1算术运算符和自动类型变换
9.2.2关系运算符和逻辑运算符
9.2.3增量和减量运算符
9.2.4位运算符和移位运算符
9.2.5其他运算符
9.2.6运算符的优先级
第10章 模块化和函数
10.1程序的模块化
10.1.1结构化程序设计方法
10.1.2什么是好的程序
10.2函数制作方法
10.2.1函数的基本书写方式
10.2.2引数和返回值
10.2.3函数的原形说明
10.3变量的记忆类别和有效范围
10.3.1变量的性质和有效范围
10.3.2局部变量和全局变量
10.3.3实际的例子
第11章 标准函数和标准输入/输出函数
11.1标准函数
11.1.1标准函数表
11.1.2 CCS公司的独自函数
11.2标准输入/输出函数
11.2.1标准输入/输出函数一览表
11.2.2 putc函数和getc函数
11.2.3 printf函数的扩展
11.2.4 puts函数和gets函数
第12章 数组和指针
12.1什么是数组
12.1.1数组的格式
12.1.2数组的使用方法
12.2字符串的处理
12.3指针
12.3.1指针变量
12.3.2数组和指针
12.3.3函数的引数和指针
12.3.4函数的引数和数组
第13章 结构体和联合体
13.1结构体
13.1.1结构体的定义和说明
13.1.2对结构体各成员的访问
13.1.3位字段
13.1.4结构数组
13.1.5结构体指针
13.2联合体
13.3枚举类型
第14章 内部函数的使用方法
14.1延时函数
14.1.1延时函数概要
14.1.2使用方法
14.2输入/输出引脚的控制
14.2.1输入/输出模式的设定
14.2.2输入/输出引脚控制用内部函数
14.3动态显示控制
14.3.1程序段发光二极管的概要
14.3.2显示控制方法
14.3.3应用实例
14.4液晶显示器的控制
14.4.1液晶显示器的概要
14.4.2接口规格
14.4.3初始设定步骤
14.4.4液晶显示器控制程序库
14.4.5程序库使用实例
14.5中断处理
14.5.1中断概要
14.5.2引起中断处理因素
14.5.3中断用预处理器
14.5.4中断处理的程序设计
14.5.5实例1
14.5.6寄存器的让路等待和回复原状
14.5.7实例2
14.5.8实例3
14.6定时器0模块的使用方法
14.6.1定时器0的概要
14.6.2定时器0用的内部函数
14.6.3时间间隔测量器的使用方法
14.6.4定数器应用实例
14.7定时器1模块的使用方法
14.7.1定时器1简介
14.7.2 定时器1的内部函数
14.7.3基于中断的时间间隔测量器的实例
14.8 A/D转换器的使用方法
14.8.1 A/D转换器简介
14.8.2 A/D转换的内部函数
14.8.3电压测量实例
14.8.4 2通道测量显示实例
14.9 USART模块的使用方法
14.9.1 USART简介
14.9.2 USART用内部函数
14.9.3 USART应用举例(接收中断实例)
14.10 MSSP模块的使用方法(SPI通信)
14.10.1 SPI通信简介
14.10.2 SPI用内部函数
14.10.3 SPI通信应用举例
14.11 MSSP的使用方法(I2C通信)
14.11.1 I2C通信简介
14.11.2 I2C通信用内部函数
14.11.3 I2C通信实例1(外设EEPROM)
14.11.4 I2C通信实例2(PIC间通信)
14.12 CCP模块的使用方法
14.12.1捕获(Capture)模式
14.12.2比较模式
14.12.3 PWM模式
14.12.4 CCP模块用内部函数
14.12.5捕捉模式实例
14.12.6比较模式应用实例
14.12.7 PWM应用实例
14.13内置EEPROM的使用方法
14.13.1内置EEPROM简介
14.13.2内置EEPROM用内部函数
14.13.3应用实例
14.14睡眠模式和唤醒功能
14.14.1睡眠模式
14.14.2唤醒功能
14.14.3唤醒因素的识别
14.14.4应用实例
第15章PIC单片机的实时OS
15.1 PICROS简介
15.1.1特点和功能
15.1.2 PICROS的构成
15.1.3任务和状态转移
15.1.4服务函数
15.2任务的制作方法
15.2.1任务构成实例1
15.2.2任务构成实例2
15.2.3任务构成实例3
15.2.4任务构成实例4
15.2.5任务构成实例5
15.3 PICROS主体
15.3.1全体构成
15.3.2 TCB的构成
15.3.3任务调度程序的动作
15.3.4服务函数的动作
15.3.5定时器0的中断处理动作
15.4 PICROS的配置
15.4.1配置文件(usrconf.h)
15.4.2任务分配表(tdt.h)
15.4.3任务链接文件(tasklink.h)
15.4.4用户初始化函数(usrini.c)
15.4.5 MPLAB项目的制作方法
15.5实际应用举例
15.5.1各任务的程序
15.5.2中断处理函数
15.5.3用户初始化函数
15.5.4配置用的相关文件
15.5.5生成项目
15.6调试工具
15.6.1调试工具的功能
15.6.2使用方法