|
第一步:选择立刻购买 我要买:1 件(库存10000件) 立刻购买 加入购物车 第二步:在确认购买信息栏目里填写上你的QQ邮箱! 确认购买信息 购买数量:1 (限购 99 件) 给卖家留言 66668888@qq.com 确认提交订单
|
||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||
|
以应用和实用为目标,通过实际工程实例,介绍了PIC单片机C程序设计的流程、方法与技巧。全书共16章,首先简要介绍了PIC系列产品、硬件结构、C语言编程基础,以及常用开发工具;然后选择了13个工程实例,以“设计思路分析 硬件电路设计 软件设计与程序注释”的主要形式,讲解了PIC单片机在智能仪器仪表、数据采集与测量、网络传输与通信、消费电子领域应用开发的技术和技巧。 |
||||||||||||||||||||||||||||||||||||
| 第1章 PIC单片机入门基础 1 | ||||||||||||||||||||||||||||||||||||
| 1.1 PIC单片机的特点 1 | ||||||||||||||||||||||||||||||||||||
| 1.2 PIC单片机的系列产品 4 | ||||||||||||||||||||||||||||||||||||
| 1.2.1 基本级PIC系列单片机 5 | ||||||||||||||||||||||||||||||||||||
| 1.2.2 中级PIC系列单片机 5 | ||||||||||||||||||||||||||||||||||||
| 1.2.3 高级PIC系列单片机 7 | ||||||||||||||||||||||||||||||||||||
| 1.3 PIC16F87X单片机的硬件结构 8 | ||||||||||||||||||||||||||||||||||||
| 1.3.1 PIC16F87X的主要特色 9 | ||||||||||||||||||||||||||||||||||||
| 1.3.2 PIC16F87X的内部结构 10 | ||||||||||||||||||||||||||||||||||||
| 1.3.3 PIC16F87X的引脚功能 15 | ||||||||||||||||||||||||||||||||||||
| 1.4 PIC单片机的CPU和中断系统 20 | ||||||||||||||||||||||||||||||||||||
| 1.4.1 PIC单片机的CPU 20 | ||||||||||||||||||||||||||||||||||||
| 1.4.2 中断系统 36 | ||||||||||||||||||||||||||||||||||||
| 1.5 本章小结 49 | ||||||||||||||||||||||||||||||||||||
| 第2章 C语言程序设计基础 51 | ||||||||||||||||||||||||||||||||||||
| 2.1 数据结构 51 | ||||||||||||||||||||||||||||||||||||
| 2.1.1 数据类型 51 | ||||||||||||||||||||||||||||||||||||
| 2.1.2 变量与常量 53 | ||||||||||||||||||||||||||||||||||||
| 2.1.3 数组 56 | ||||||||||||||||||||||||||||||||||||
| 2.1.4 指针 60 | ||||||||||||||||||||||||||||||||||||
| 2.1.5 结构 63 | ||||||||||||||||||||||||||||||||||||
| 2.1.6 共用体 67 | ||||||||||||||||||||||||||||||||||||
| 2.1.7 枚举 69 | ||||||||||||||||||||||||||||||||||||
| 2.2 运算符与表达式 70 | ||||||||||||||||||||||||||||||||||||
| 2.2.1 运算符分类与优先级 70 | ||||||||||||||||||||||||||||||||||||
| 2.2.2 算术运算符与表达式 71 | ||||||||||||||||||||||||||||||||||||
| 2.2.3 关系运算符与表达式 72 | ||||||||||||||||||||||||||||||||||||
| 2.2.4 逻辑运算符与表达式 72 | ||||||||||||||||||||||||||||||||||||
| 2.2.5 位操作运算符与表达式 72 | ||||||||||||||||||||||||||||||||||||
| 2.2.6 赋值运算符与表达式 73 | ||||||||||||||||||||||||||||||||||||
| 2.3 程序结构与函数 74 | ||||||||||||||||||||||||||||||||||||
| 2.3.1 程序结构 74 | ||||||||||||||||||||||||||||||||||||
| 2.3.2 函数 75 | ||||||||||||||||||||||||||||||||||||
| 2.4 流程控制语句 82 | ||||||||||||||||||||||||||||||||||||
| 2.4.1 选择语句 83 | ||||||||||||||||||||||||||||||||||||
| 2.4.2 循环语句 86 | ||||||||||||||||||||||||||||||||||||
| 2.4.3 转移语句 89 | ||||||||||||||||||||||||||||||||||||
| 2.5 本章总结 91 | ||||||||||||||||||||||||||||||||||||
| 第3章 PIC单片机的常用开发工具 93 | ||||||||||||||||||||||||||||||||||||
| 3.1 PIC系列单片机的仿真器 93 | ||||||||||||||||||||||||||||||||||||
| 3.2 PIC系列单片机的编程器及开发套件 98 | ||||||||||||||||||||||||||||||||||||
| 3.3 MPLAB-IDE 7.4版集成开发环境 102 | ||||||||||||||||||||||||||||||||||||
| 3.3.1 MPLAB-IDE 7.4概述 103 | ||||||||||||||||||||||||||||||||||||
| 3.3.2 MPLAB-IDE 7.4工程创建实例 105 | ||||||||||||||||||||||||||||||||||||
| 3.3.3 MPLAB-IDE 7.4常用的菜单项 107 | ||||||||||||||||||||||||||||||||||||
| 3.4 本章小结 108 | ||||||||||||||||||||||||||||||||||||
| 第4章 数字电子时钟设计 109 | ||||||||||||||||||||||||||||||||||||
| 4.1 实例功能说明 109 | ||||||||||||||||||||||||||||||||||||
| 4.2 设计思路分析 109 | ||||||||||||||||||||||||||||||||||||
| 4.3 硬件电路设计 110 | ||||||||||||||||||||||||||||||||||||
| 4.3.1 PIC单片机硬件设计 110 | ||||||||||||||||||||||||||||||||||||
| 4.3.2 段式液晶硬件设计 110 | ||||||||||||||||||||||||||||||||||||
| 4.3.3 键盘输入硬件设计 111 | ||||||||||||||||||||||||||||||||||||
| 4.4 软件设计与代码 112 | ||||||||||||||||||||||||||||||||||||
| 4.4.1 程序流程图 112 | ||||||||||||||||||||||||||||||||||||
| 4.4.2 预定义及全局变量 113 | ||||||||||||||||||||||||||||||||||||
| 4.4.3 main主函数及初始化 114 | ||||||||||||||||||||||||||||||||||||
| 4.4.4 定时器中断函数 115 | ||||||||||||||||||||||||||||||||||||
| 4.4.5 时间运算程序 116 | ||||||||||||||||||||||||||||||||||||
| 4.4.6 液晶底层驱动 117 | ||||||||||||||||||||||||||||||||||||
| 4.4.7 液晶显示程序 118 | ||||||||||||||||||||||||||||||||||||
| 4.4.8 键值读入程序 121 | ||||||||||||||||||||||||||||||||||||
| 4.4.9 键盘响应程序 122 | ||||||||||||||||||||||||||||||||||||
| 4.5 实例小结 124 | ||||||||||||||||||||||||||||||||||||
| 第5章 触摸式密码锁设计 125 | ||||||||||||||||||||||||||||||||||||
| 5.1 实例内容说明 125 | ||||||||||||||||||||||||||||||||||||
| 5.2 设计思路分析 125 | ||||||||||||||||||||||||||||||||||||
| 5.2.1 液晶型号的选择 125 | ||||||||||||||||||||||||||||||||||||
| 5.2.2 触摸屏的选择 126 | ||||||||||||||||||||||||||||||||||||
| 5.3 硬件电路设计 128 | ||||||||||||||||||||||||||||||||||||
| 5.4 软件设计与代码 129 | ||||||||||||||||||||||||||||||||||||
| 5.4.1 显示的界面 129 | ||||||||||||||||||||||||||||||||||||
| 5.4.2 程序主流程 129 | ||||||||||||||||||||||||||||||||||||
| 5.4.3 液晶显示程序 131 | ||||||||||||||||||||||||||||||||||||
| 5.4.4 触摸屏输入程序 138 | ||||||||||||||||||||||||||||||||||||
| 5.4.5 响应用户输入程序 141 | ||||||||||||||||||||||||||||||||||||
| 5.5 实例小结 142 | ||||||||||||||||||||||||||||||||||||
| 第6章 SD存储卡读写设计 143 | ||||||||||||||||||||||||||||||||||||
| 6.1 实例内容说明。 143 | ||||||||||||||||||||||||||||||||||||
| 6.2 设计思路分析 143 | ||||||||||||||||||||||||||||||||||||
| 6.3 硬件电路设计 144 | ||||||||||||||||||||||||||||||||||||
| 6.3.1 PIC单片机硬件设计 144 | ||||||||||||||||||||||||||||||||||||
| 6.3.2 液晶硬件设计 144 | ||||||||||||||||||||||||||||||||||||
| 6.3.3 SD接口设计 145 | ||||||||||||||||||||||||||||||||||||
| 6.3.4 键盘设计 146 | ||||||||||||||||||||||||||||||||||||
| 6.4 软件设计与代码 146 | ||||||||||||||||||||||||||||||||||||
| 6.4.1 流程图 146 | ||||||||||||||||||||||||||||||||||||
| 6.4.2 预定义及全局变量 147 | ||||||||||||||||||||||||||||||||||||
| 6.4.3 MAIN主函数及初始化 147 | ||||||||||||||||||||||||||||||||||||
| 6.4.4 SPI协议 148 | ||||||||||||||||||||||||||||||||||||
| 6.4.5 液晶底层驱动编写 152 | ||||||||||||||||||||||||||||||||||||
| 6.4.6 液晶界面设计 154 | ||||||||||||||||||||||||||||||||||||
| 6.4.7 键盘输入程序 157 | ||||||||||||||||||||||||||||||||||||
| 6.4.8 键盘响应函数 158 | ||||||||||||||||||||||||||||||||||||
| 6.5 实例小结 160 | ||||||||||||||||||||||||||||||||||||
| 第7章 数字频率计设计 161 | ||||||||||||||||||||||||||||||||||||
| 7.1 实例内容说明 161 | ||||||||||||||||||||||||||||||||||||
| 7.2 总体设计思路 161 | ||||||||||||||||||||||||||||||||||||
| 7.3 硬件电路设计 162 | ||||||||||||||||||||||||||||||||||||
| 7.3.1 PIC单片机硬件设计 162 | ||||||||||||||||||||||||||||||||||||
| 7.3.2 前端调理电路设计 163 | ||||||||||||||||||||||||||||||||||||
| 7.3.3 标准方波电路设计 164 | ||||||||||||||||||||||||||||||||||||
| 7.3.4 液晶1604电路设计 164 | ||||||||||||||||||||||||||||||||||||
| 7.4 软件设计与代码 164 | ||||||||||||||||||||||||||||||||||||
| 7.4.1 流程图 165 | ||||||||||||||||||||||||||||||||||||
| 7.4.2 预定义及全局变量 165 | ||||||||||||||||||||||||||||||||||||
| 7.4.3 main主函数及初始化 166 | ||||||||||||||||||||||||||||||||||||
| 7.4.4 定时器中断 167 | ||||||||||||||||||||||||||||||||||||
| 7.4.5 标准信号产生 168 | ||||||||||||||||||||||||||||||||||||
| 7.4.6 LCD1604程序 168 | ||||||||||||||||||||||||||||||||||||
| 7.5 实例小结 171 | ||||||||||||||||||||||||||||||||||||
| 第8章 压力测量系统设计 173 | ||||||||||||||||||||||||||||||||||||
| 8.1 实例内容说明 173 | ||||||||||||||||||||||||||||||||||||
| 8.2 设计思路分析 174 | ||||||||||||||||||||||||||||||||||||
| 8.2.1 A/D转换的原理说明 174 | ||||||||||||||||||||||||||||||||||||
| 8.2.2 PIC单片机相关寄存器介绍 174 | ||||||||||||||||||||||||||||||||||||
| 8.2.3 A/D转换操作对时间的要求 177 | ||||||||||||||||||||||||||||||||||||
| 8.3 硬件电路设计 177 | ||||||||||||||||||||||||||||||||||||
| 8.4 软件设计与代码 177 | ||||||||||||||||||||||||||||||||||||
| 8.4.1 程序设计流程 177 | ||||||||||||||||||||||||||||||||||||
| 8.4.2 程序代码说明 178 | ||||||||||||||||||||||||||||||||||||
| 8.5 实例总结 180 | ||||||||||||||||||||||||||||||||||||
| 第9章 温度测量控制系统设计 181 | ||||||||||||||||||||||||||||||||||||
| 9.1 实例内容说明 181 | ||||||||||||||||||||||||||||||||||||
| 9.1.1 温度测量部分 181 | ||||||||||||||||||||||||||||||||||||
| 9.1.2 温度控制回馈部分 182 | ||||||||||||||||||||||||||||||||||||
| 9.2 设计思路分析 182 | ||||||||||||||||||||||||||||||||||||
| 9.2.1 温度传感器的选择 182 | ||||||||||||||||||||||||||||||||||||
| 9.2.2 运算放大器的选择 183 | ||||||||||||||||||||||||||||||||||||
| 9.2.3 PIC单片机型号的选择 183 | ||||||||||||||||||||||||||||||||||||
| 9.2.4 ADC的选择 184 | ||||||||||||||||||||||||||||||||||||
| 9.3 硬件电路设计 184 | ||||||||||||||||||||||||||||||||||||
| 9.3.1 温度测量部分硬件设计 184 | ||||||||||||||||||||||||||||||||||||
| 9.3.2 PIC单片机硬件设计 186 | ||||||||||||||||||||||||||||||||||||
| 9.3.3 温度控制回馈部分硬件设计 186 | ||||||||||||||||||||||||||||||||||||
| 9.4 软件设计与代码 187 | ||||||||||||||||||||||||||||||||||||
| 9.4.1 程序流程框架 187 | ||||||||||||||||||||||||||||||||||||
| 9.4.2 温度测量软件编写 188 | ||||||||||||||||||||||||||||||||||||
| 9.4.3 温度控制软件编写 191 | ||||||||||||||||||||||||||||||||||||
| 9.5 设计总结 192 | ||||||||||||||||||||||||||||||||||||
| 第10章 I2C总线通信应用设计 193 | ||||||||||||||||||||||||||||||||||||
| 10.1 实例内容说明 193 | ||||||||||||||||||||||||||||||||||||
| 10.2 I2C总线介绍 193 | ||||||||||||||||||||||||||||||||||||
| 10.3 硬件电路设计 198 | ||||||||||||||||||||||||||||||||||||
| 10.4 软件设计与代码 199 | ||||||||||||||||||||||||||||||||||||
| 10.5 实例总结 207 | ||||||||||||||||||||||||||||||||||||
| 第11章 USB数据传输应用设计 209 | ||||||||||||||||||||||||||||||||||||
| 11.1 实例内容说明 209 | ||||||||||||||||||||||||||||||||||||
| 11.2 设计思路分析 209 | ||||||||||||||||||||||||||||||||||||
| 11.2.1 USB SIE相关寄存器 210 | ||||||||||||||||||||||||||||||||||||
| 11.2.2 HID设备类 211 | ||||||||||||||||||||||||||||||||||||
| 11.3 硬件电路设计 216 | ||||||||||||||||||||||||||||||||||||
| 11.4 固件程序设计及代码 217 | ||||||||||||||||||||||||||||||||||||
| 11.4.1 USB设备的状态 217 | ||||||||||||||||||||||||||||||||||||
| 11.4.2 USB枚举过程 218 | ||||||||||||||||||||||||||||||||||||
| 11.4.3 USB固件协议栈整体描述 218 | ||||||||||||||||||||||||||||||||||||
| 11.4.4 USB程序代码分析 219 | ||||||||||||||||||||||||||||||||||||
| 11.5 实例总结 223 | ||||||||||||||||||||||||||||||||||||
| 第12章 软件模拟2262 IC遥控编码器设计 225 | ||||||||||||||||||||||||||||||||||||
| 12.1 系统功能说明 225 | ||||||||||||||||||||||||||||||||||||
| 12.2 2262 IC介绍 225 | ||||||||||||||||||||||||||||||||||||
| 12.3 硬件电路设计 226 | ||||||||||||||||||||||||||||||||||||
| 12.4 系统软件设计 227 | ||||||||||||||||||||||||||||||||||||
| 12.4.1 程序设计流程 227 | ||||||||||||||||||||||||||||||||||||
| 12.4.2 初始化程序 228 | ||||||||||||||||||||||||||||||||||||
| 12.4.3 延时子程序 228 | ||||||||||||||||||||||||||||||||||||
| 12.4.4 程序代码与注释 228 | ||||||||||||||||||||||||||||||||||||
| 12.5 本章总结 233 | ||||||||||||||||||||||||||||||||||||
| 第13章 软件模拟2272 IC无线解码器设计 235 | ||||||||||||||||||||||||||||||||||||
| 13.1 系统功能说明 235 | ||||||||||||||||||||||||||||||||||||
| 13.2 2272 IC介绍 236 | ||||||||||||||||||||||||||||||||||||
| 13.3 硬件电路设计 237 | ||||||||||||||||||||||||||||||||||||
| 13.4 系统软件设计 238 | ||||||||||||||||||||||||||||||||||||
| 13.4.1 程序设计流程 238 | ||||||||||||||||||||||||||||||||||||
| 13.4.2 程序代码与注释 239 | ||||||||||||||||||||||||||||||||||||
| 13.5 实例总结 243 | ||||||||||||||||||||||||||||||||||||
| 第14章 红外收发通信系统设计 245 | ||||||||||||||||||||||||||||||||||||
| 14.1 实例内容说明 245 | ||||||||||||||||||||||||||||||||||||
| 14.2 设计思路分析 245 | ||||||||||||||||||||||||||||||||||||
| 14.3 硬件电路设计 246 | ||||||||||||||||||||||||||||||||||||
| 14.3.1 红外接收电路 246 | ||||||||||||||||||||||||||||||||||||
| 14.3.2 红外发送电路 247 | ||||||||||||||||||||||||||||||||||||
| 14.3.3 人机交互硬件设计 247 | ||||||||||||||||||||||||||||||||||||
| 14.3.4 PIC单片机硬件设计 248 | ||||||||||||||||||||||||||||||||||||
| 14.4 软件设计与代码 249 | ||||||||||||||||||||||||||||||||||||
| 14.4.1 流程图 249 | ||||||||||||||||||||||||||||||||||||
| 14.4.2 红外接收程序设计 251 | ||||||||||||||||||||||||||||||||||||
| 14.4.3 红外发送程序设计 253 | ||||||||||||||||||||||||||||||||||||
| 14.4.4 键盘输入程序设计 253 | ||||||||||||||||||||||||||||||||||||
| 14.4.5 液晶显示设计 257 | ||||||||||||||||||||||||||||||||||||
| 14.5 实例小结 259 | ||||||||||||||||||||||||||||||||||||
| 第15章 带触摸功能的投影仪面板设计 261 | ||||||||||||||||||||||||||||||||||||
| 15.1 实例功能说明 261 | ||||||||||||||||||||||||||||||||||||
| 15.2 电容触摸原理和测量方法 261 | ||||||||||||||||||||||||||||||||||||
| 15.3 基于PIC16F72X的触摸按键设计方案 262 | ||||||||||||||||||||||||||||||||||||
| 15.3.1 Microchip公司电容触摸技术 262 | ||||||||||||||||||||||||||||||||||||
| 15.3.2 PIC16F72X系列单片机特点 262 | ||||||||||||||||||||||||||||||||||||
| 15.3.2 容性传感器模块 263 | ||||||||||||||||||||||||||||||||||||
| 15.4 硬件电路设计 264 | ||||||||||||||||||||||||||||||||||||
| 15.4.1 PCB方面 264 | ||||||||||||||||||||||||||||||||||||
| 15.4.2 硬件电路图 265 | ||||||||||||||||||||||||||||||||||||
| 15.5 软件设计与代码 265 | ||||||||||||||||||||||||||||||||||||
| 15.5.1 流程图 265 | ||||||||||||||||||||||||||||||||||||
| 15.5.2 代码与注释 269 | ||||||||||||||||||||||||||||||||||||
| 15.6 实例总结 273 | ||||||||||||||||||||||||||||||||||||
| 第16章 基于SPI接口的语音录放系统设计 275 | ||||||||||||||||||||||||||||||||||||
| 16.1 实例说明 275 | ||||||||||||||||||||||||||||||||||||
| 16.2 芯片原理介绍 275 | ||||||||||||||||||||||||||||||||||||
| 16.2.1 语音芯片的功能特点 276 | ||||||||||||||||||||||||||||||||||||
| 16.2.2 语音芯片的数据操作 278 | ||||||||||||||||||||||||||||||||||||
| 16.3 硬件电路设计 283 | ||||||||||||||||||||||||||||||||||||
| 16.4 软件设计与代码 285 | ||||||||||||||||||||||||||||||||||||
| 16.4.1 语音录放模块的设计 285 | ||||||||||||||||||||||||||||||||||||
| 16.4.2 软件流程与主程序 290 | ||||||||||||||||||||||||||||||||||||
| 16.4.3 其他程序模块代码 293 | ||||||||||||||||||||||||||||||||||||
| 16.5 实例总结 300 | ||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||
© 版权声明
文章版权归作者所有,未经允许请勿转载。如内容涉嫌侵权,请在本页底部进入<联系我们>进行举报投诉!
THE END



























暂无评论内容