活学活用PIC单片机C语言编程

出版时间:2012-5  出版社:科学  作者:中尾真治  页数:283  字数:300000  译者:卢伯英  
Tag标签:无  

内容概要

  本书以小型PIC单片机——PIC16F688为例,详细介绍C语言的基础知识、PIC单片机的基本构成和工作原理、PIC单片机的主要外围设备和功能,以及PIC单片机的开发工具使用方法。最后,作为PIC单片机的应用实例,具体介绍了PIC单片机在USB、LCD、温度、时间和声音等开发方面的具体应用。

作者简介

  中尾真治
  1964年出生于东京,国立工业专科学校毕业。曾在富士通程序研究部门、京销售公司和摩托罗拉公司工作。其后在日本微芯技术公司(Microchip
Technology Japan)从事PIC单片机的FAE工作达7年。
  主要著作
  《C言語ではじめるPICマイコン》(OHM社)
  《おもしろいPICマイコン》(OHM社)
  《はじめてのPICマイコン》 (OHM社)
  《PICマイコン活用ハンドブック》(CQ出版社,合著)新编电子技术讲座活学活用PIC单片机
  C语言编程

书籍目录

第1章 C语言入门
 1.1C语言的基本知识
  1.1.1程序的组成要素
  1.1.2源文件
  1.1.3头文件
  1.1.4预处理程序
  1.1.5main函数
  1.1.6汇编程序
 1.2常量、数据类型和变量
  1.2.1转义字符
  1.2.2枚举常数
  1.2.3数据类型
  1.2.4变量声明
  1.2.5Const
  1.2.6Volatile
 1.3数组和指针
  1.3.1数组
  1.3.2数组与字符串
  1.3.3指针
  1.3.4指针和字符串常数
  1.3.5指针和数组
 1.4结构体和共用体
  1.4.1结构体
  1.4.2共用体
 1.5运算
  1.5.1简单赋值运算
  1.5.2算术运算
  1.5.3自增和自减
  1.5.4关系运算
  1.5.5位操作运算
  1.5.6复合赋值运算
  1.5.7取地址运算
  1.5.8代入不同的数据类型变量中
  1.5.9不同数据型变量的一同计算
  1.5.10运算的优先级和结合规则
 1.6分支语句与循环语句
  1.6.1基于关系真假的分支语句
  1.6.2基于计算结果的多分支语句
  1.6.3边计算边循环
  1.6.4如果关系为真则进行循环
  1.6.5无限循环
 1.7函数
  1.7.1函数的结构
  1.7.2函数返回值数据类型
  1.7.3函数的参数
  1.7.4函数的原型声明
  1.7.5使用函数
  1.7.6实际参数与形式参数
  1.7.7main函数和中断函数
  1.7.8函数的嵌套
  1.7.9不使用递推调用
  1.7.10库函数
 1.8作用域
  1.8.1局部变量和自动变量
  1.8.2全局变量
  1.8.3static
  1.8.4作用域
  1.8.5persistent
  1.8.6在汇编程序中使用变量
第2章 PIC单片机的基本知识
 2.1PIC单片机的基本知识
  2.1.18位PIC单片机
  2.1.2引脚位置
  2.1.3工作电压范围
  2.1.44个时钟脉冲对应1个周期
  2.1.5PIC12F683的引脚配置
 2.2配置位
  2.2.1执行程序前的设定
  2.2.2配置位
  2.2.3代码保护与校验
  2.2.4代码保护的解除
  2.2.5代码未被保护的领域
  2.2.6配置位的书写方法
  2.2.7LD存储单元的书写方法
  2.2.8编程器的操作顺序
 2.3振荡电路
  2.3.1构建系统时钟
  2.3.2振荡电路的种类
  2.3.3使用内部振荡器
  2.3.4使用外部加装的振子
  2.3.5使用外部加装的振荡器
  2.3.6用外部加装的R和C制作
  2.3.7振荡电路的转换
  2.3.82速启动模式
  2.3.9使用故障保险时钟监视器
 2.4复位
  2.4.1复位后的状态
  2.4.2不使用外部复位的场合
  2.4.3接通电源时的复位工作情况
  2.4.4加电复位
  2.4.5加电定时器
  2.4.6振荡器启动定时器
  2.4.7电压过低复位
  2.4.8监视定时器复位
  2.4.9MCLR复位
  2.4.10复位状态位
 2.5存储器
  2.5.1存储器的类型
  2.5.2程序存储器
  2.5.3能写入程序存储器中的次数
  2.5.4程序存储器中内容的读出
  2.5.5数据存储器
  2.5.6PIC12F683的情况
 2.6中断
  2.6.1在中断中执行
  2.6.2选择中断事件
  2.6.3GIE位
  2.6.4中断允许位
  2.6.5PEIE位
  2.6.6中断标志位
  2.6.7使用中断设定
  2.6.8中断函数
  2.6.9暂时不进行中断处理的场合
  2.6.10PIC12F683的场合
 2.7监视定时器
  2.7.1超时和复位
  2.7.2使用31kHz的内部振荡器
  2.7.3监视定时器的寄存器
  2.7.416位预换算器
  2.7.5与定时器0共用的预换算器
  2.7.6监视定时器的超时时间
  2.7.7使用监视定时器的设定
  2.7.8把监视定时器的内容设置成
  2.7.9超时时的动作
  2.7.10TO位
  2.7.11PIC12F683的场合
 2.8休眠方式
  2.8.1什么也不做时节省电力
  2.8.2使PIC单片机进入休眠方式
  2.8.3即使休眠方式中也不能停止的功能
  2.8.4从休眠方式中苏醒的功能
  2.8.5利用中断从休眠方式中苏醒的情况
  2.8.6在实施进入休眠方式之前设置
  2.8.7在从休眠方式苏醒之后执行程序地址
  2.8.8从休眠方式中苏醒时花费的时间
  2.8.9使用中断从休眠方式中苏醒的例子
  2.8.10复位状态位
第3章 PIC单片机的外围功能
 3.1I/O端口
  3.1.1输入输出数字数据
  3.1.2I/O端口的寄存器
  3.1.3I/O引脚的输入电压范围
  3.1.4输入缓冲器的种类
  3.1.5VIL和VIH
  3.1.6输出电路
  3.1.7灌电流和拉电流
  3.1.8I/O引脚的输入输出设定
  3.1.9模拟输入模式和数字I/O模式
  3.1.10构成数字I/O模式的方法
  3.1.11I/O引脚的输入输出设定举例
  3.1.12从外部电路输入数据
  3.1.13从外部电路输入数据举例
  3.1.14把数据输出到外部电路
  3.1.15把数据输出到外部电路举例
  3.1.16I/O引脚的输入输出设定和输出数据的覆盖
  3.1.17进入休眠方式后怎样变化?
  3.1.18空闲引脚的处理
  3.1.19使用I/O端口举例
  3.1.20PIC12F683的场合
 3.2弱上拉电路
  3.2.1上拉输入信号
  3.2.2弱上拉电路的寄存器
  3.2.3设定使用弱上拉电路
  3.2.4使用弱上拉电路设定举例
  3.2.5外附加电阻的方法是一种好方案
  3.2.6进入休眠方式时有什么变化吗?
  3.2.7使用弱上拉电路举例
  3.2.8PIC12F683的场合
 3.3I/O端口输入电平变化检测功能
  3.3.1能判明输入数据是否发生了变化
  3.3.2I/O端口输入电平变化检测功能的寄存器
  3.3.3怎样做才能检测出变化?
  3.3.4能检测出变化的最小脉冲幅度
  3.3.5使用I/O端口输入电平变化检测功能的设定
  3.3.6把RAIF位的内容设置成0
  3.3.7设定使用I/O端口输入电平变化检测功能举例
  3.3.8不能检测变化的定时
  3.3.9I/O端口输入电平变化中断
  3.3.10当进入休眠方式时会怎样变化?
  3.3.11超低功率唤醒电路
  3.3.12使用I/O端口输入电平变化检测功能举例
  3.3.13PIC12F683的场合
 3.4INT引脚输入边沿检测功能
  3.4.1可以检测出输入信号的边沿
  3.4.2INT引脚输入边沿检测功能的寄存器
  3.4.3使用INT引脚输入边沿检测功能设定
  3.4.4把INTF位的内容设置成0
  3.4.5使用INT引脚输入边沿检测功能设定举例
  3.4.6INT引脚输入边沿中断
  3.4.7当进入休眠方式时怎样变化?
  3.4.8使用INT引脚输入边沿检测功能举例
 3.5定时器0
  3.5.1附有预换算器的8位定时器
  3.5.2定时器0的寄存器
  3.5.3选择输入时钟
  3.5.4把外部时钟设置成输入时钟的场合
  3.5.5定时器0的预换算器
  3.5.6对TOIF位和TMRO寄存器的内容进行初始化
  3.5.7使用定时器0设定举例
  3.5.8读出定时器0的内容
  3.5.9把数据写入定时器0中
  3.5.10在定时器中使用预换算器场合中的注意事项
  3.5.11定时器0溢出中断
  3.5.12当进入休眠方式时,会如何变化?
  3.5.13当进行复位时,会如何变化?
  3.5.14使用定时器0举例
 3.6定时器1
  3.6.1附带有预换算器的16位定时器
  3.6.2定时器1的寄存器
  3.6.3选择输入时钟
  3.6.4设置外部时钟为输入时钟的场合
  3.6.5使外部时钟与系统时钟同步的场合
  3.6.6使外部时钟与系统时钟不同步的场合
  3.6.7最初是从外部时钟信号下降后开始递增过程
  3.6.8定时器1的预换算器
  3.6.9使定时器1工作
  3.6.10利用外部信号终止定时器1的工作
  3.6.11对TMR1IF位或TMR1H寄存器和TMR1L寄存器的内容进行初始化
  3.6.12使用定时器1设定举例
  3.6.13读取定时器1的内容
  3.6.14把数据写进定时器1中
  3.6.15定时器1溢出中断
  3.6.16若进入休眠方式会如何变化?
  3.6.17当实施复位时,会如何变化?
  3.6.18使用定时器1举例
 3.7比较器
  3.7.1比较两个模拟信号
  3.7.2比较器的寄存器
  3.7.3模拟输入信号的源阻抗
  3.7.4共模输入电压范围
  3.7.5选择比较器的输入输出构成方案
  3.7.6比较器的模拟输入引脚设定
  3.7.7比较器的运行
  3.7.8输入偏移电压
  3.7.9响应时间
  3.7.10读出比较器的输出
  3.7.11把比较器的输出从引脚输出
  3.7.12使用比较器设定举例
  3.7.13检测比较器的输出变化
  3.7.14把C1IF位或C2IF位的内容设置成0
  3.7.15不能检测变化的定时
  3.7.16比较器输出变化中断
  3.7.17使比较器的输出变化与定时器1的输入时钟同步
  3.7.18利用比较器的输出终止定时器1工作
  3.7.19若进入休眠方式会怎样变化?
  3.7.20若进行复位时会怎样变化?
  3.7.21使用比较器举例
  3.7.22PIC12F682的场合
 3.8比较器参考值
  3.8.1构建比较器用的参考电压
  3.8.2比较器参考值的寄存器
  3.8.3比较器参考电压的运作
  3.8.4比较器参考电压的输出电压
  3.8.5输出电压的整定时间
  3.8.6输出电压的精度
  3.8.7使用比较器参考值设定举例
  3.8.8若进入休眠方式会怎样变化?
  3.8.9当进行复位时,会如何变化?
  3.8.10使用比较器参考值举例
 3.9EEPROM存储器
  3.9.1即使断开电源也能保存数据
  3.9.2EEPROM存储器的寄存器
  3.9.3EEPROM存储器或程序存储器的地址
  3.9.4EEPROM存储器或程序存储器的初值
  3.9.5读出EEPROM存储器或程序存储器的内容
  3.9.6把数据写入EEPROM存储器
  3.9.7未发生中断期间
  3.9.8写入中需要花费的时间
  3.9.9在写入过程中可以进行EEPROM存储器以外的操作
  3.9.10在EEPROM存储器中能进行写入的次数
  3.9.11写入错误
  3.9.12EEPROM存储器写入结束中断
  3.9.13把EEIF位的内容设置成0
  3.9.14即使在休眠方式中,也能写入
  3.9.15使用EEPROM存储器举例
  3.9.16PIC12F683的场合
 3.10EUSART
  3.10.1串行通信
  3.10.2EUSART的寄存器
  3.10.3传送格式
  3.10.4数据位长度
  3.10.5奇偶性
  3.10.6停止位
  3.10.7数据流控制
  3.10.8传送速度
  3.10.9发送接收引脚
  3.10.10发送
  3.10.11接收
  3.10.12成帧误差
  3.10.13超限误差
  3.10.14EUSART发送中断
  3.10.15EUSART接收中断
  3.10.16使用EUSART举例
 3.11A/D转换器
  3.11.1用数字数据表示模拟输入电压
  3.11.2A/D转换器的寄存器
  3.11.3模拟输入信号的源阻抗
  3.11.4模拟输入电压范围
  3.11.5A/D转换器的模拟输入引脚设定
  3.11.6选择进行A/D变换的模拟输入引脚
  3.11.7参考电压
  3.11.8A/D变换时钟
  3.11.9把FRC设置成A/D变换时钟的场合
  3.11.10把FRC以外的时钟设置成A/D变换时钟的场合
  3.11.11A/D变换结果数据的右对齐和左对齐
  3.11.12向保持电容器充电
  3.11.13开始执行A/D变换
  3.11.14A/D变换结束
  3.11.15读取A/D变换结果数据
  3.11.16A/D变换的误差
  3.11.17进行A/D变换花费的时间
  3.11.18把ADIF位的内容设置成0
  3.11.19A/D转换器使用举例
  3.11.20A/D变换结束中断
  3.11.21即使在休眠方式中,也能进行A/D变换
  3.11.22A/D转换器使用举例
  3.11.23PIC12F683的场合
第4章 开发工具
 4.1在个人计算机中安装
  4.1.1开发工具软件
  4.1.2获取方法
  4.1.3安装方法
  4.1.4MPLAB IDE的画面构成
 4.2编写程序
  4.2.1头文件
  4.2.2源文件
  4.2.3编辑器
  4.2.4制作新文件等
  4.2.5编辑器选项
 4.3制定项目
  4.3.1制作新项目
  4.3.2表示使用中的文件
  4.3.3项目的编辑和保存等
  4.3.4工作区
 4.4建立项目
  4.4.1建立项目
  4.4.2出现错误的场合
 4.5用模拟器调试
  4.5.1模拟器的启动
  4.5.2寄存器的表示
  4.5.3通过选择变量或寄存器的表示
  4.5.4EEPROM存储器的表示
  4.5.5寄存器、变量、EEPROM存储器的内容变更
  4.5.6程序的执行
  4.5.7断点
  4.5.8停表(秒表)
  4.5.9外部数据的输入
 4.6用编程器写入
  4.6.1编程器
  4.6.2配置位和ID位置的表示
  4.6.3PICkit 3的启动
  4.6.4程序的写入
第5章 PIC单片机的应用电路
 5.1USB
  5.1.1与个人计算机的USB端口进行通信
  5.1.2电源
  5.1.3引脚
  5.1.4转移设定
  5.1.5VCP驱动器
  5.1.6串行通信应用
  5.1.7向个人计算机发送信息
 5.2LCD
  5.2.1表示字符
  5.2.2电源
  5.2.3引脚
  5.2.4字符的表示位置
  5.2.5能表示的字符
  5.2.6把信息表示于LCD中
 5.3温度
  5.3.1测量温度
  5.3.2形成表示温度的模拟电压
  5.3.3把室温传送到个人计算机
 5.4时间
  5.4.1时钟用晶体振子
  5.4.2用由晶体振子作成的系统时钟进行工作
  5.4.3计量时间
 5.5声音
  5.5.1把电信号变成声音
  5.5.2哆来咪的频率
  5.5.3用PIC单片机形成声音
参考文献

章节摘录

版权页:   插图:   表达式 表达式是由变量、常量和运算符组合后构成的。例如,a=100,a++,abc() 分别为一种表达式。 语句 a=100; /*这是一个语句*/ a++; /*这也是一个语句*/ abc(); /*这还是一个语句*/ 程序块 用{}围起若干个语句,就可以构成程序块(程序1.3)。对于程序块,当书 写函数时,与if、if~else、else if、switch~case、for、while、do while一起使用。 程序1.3 程序块 a=100; a++; abc(); 1.1.2 源文件 编写程序用的文件,称为源文件。源文件的后缀要加. c。源文件可以由若干部分构成。 1.1.3 头文件 把寄存器和位的名称等的定义,与函数的原型语句汇集在一起形成的文件,称为头文件。头文件的后缀要加. h。头文件也可以由若干部分构成。 在HI-CH PRO中,带有htc.h这类头文件。htc.h定义了PIC单片机寄存器和位的名称。 1.1.4 预处理程序 预处理程序是在把源代码转换机器语言的程序。在本书中,采用的预处理程序是#define和#include。它们都不带分号。 当采用#define时,标识符、常量和表达式,均用另外的标识符表示(程序1.4)。在#define中,还采用了在程序1.4中表示的CDF(x)那样的自变量。

编辑推荐

《活学活用PIC单片机C语言编程》可供PIC单片机C语言开发应用的技术人员参考,也可供工科院校相关专业师生阅读。《活学活用PIC单片机C语言编程》阐述了利用C语言的PIC单片机和使用方法。这里的PIC单片机,采用了比较小型的14引脚的PIC16F688,它与8引脚的PIC12F683的差别,也在《活学活用PIC单片机C语言编程》中进行了说明。综合开发环境软件和C编译器,采用了免费提供使用的MPLAB IDE和HI-TECH C PRO Lite模式。编程器采用了与个人计算机USB连接的PICkit3。因为使用了试验电路板,所以除了LCD模块的附带引脚以外,均不需要使用焊锡焊接组装。

图书封面

图书标签Tags

评论、评分、阅读与下载


    活学活用PIC单片机C语言编程 PDF格式下载


用户评论 (总计13条)

 
 

  •   这本书的内容很适合我!对于了解PIC单片机C语言很有帮助!
  •   很好, 有详细的实验以及图片说明, 不是那些复制粘贴而成的书。
  •   写的详细,一看便懂,不错,发货也快速
  •   内容很不错 认真看 慢慢学
  •   书面整洁,文字清晰,是正品货
  •   对于从汇编到c的转换有帮助
  •   内容还行,不过不适合我
  •   还没怎么看……
  •   总本来说还行,还没仔细看,
  •   这书其实还是蛮不错的 好多内容都有讲到。本来想给个5分 受前面书的影响。
  •   真心好,好好学习,天天向上
  •   日本人写的东西,与国内的大不同,严谨,详实,实用;不像国内那么浮躁,粗制滥造。
  •   一般般吧,内容比较简洁,可能是翻译的书吧个人觉得不如国人写的书实用。
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7