首页>参考读物>电子电工>电子工程

PIC微控制器项目设计:C语言实现(原书第2版)
作者 : [塞浦路斯] 多甘?易卜拉欣(Dogan Ibrahim)著
译者 : 许辉 吕汶 译
出版日期 : 2017-06-27
ISBN : 978-7-111-56765-3
定价 : 99.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 520
开本 : 16
原书名 : PIC Microcontroller Projects in C: Basic to Advanced,Second Edition
原出版社: Elsevier
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书的修订包括PIC 18Fxxx系列的最新发展,通过基于项目的方法展示如何开发单片机的应用。在介绍C语言程序设计中使用流行的PIC和MPLAB XC8语言,通过大量的实践项目介绍了一个项目的开发的全周期,这些项目包括以太网编程、数字信号处理以及RFID技术。此外,本书包含了超过五十个项目,涵盖了无线传感器网络应用的发展、SD卡项目和多任务处理,主要分为三大类:基本,中级,高级。

图书特色

多甘·易卜拉欣
(Dogan Ibrahim)
塞浦路斯尼科西亚近东大学生物医学工程系主任。他的研究兴趣包括自动控制、基于微处理器的设计、基于网络的教育、远程教育和工程教育。Dogan是40多本关于微处理器技术书籍的作者,包括《SD Card Projects Using the PIC Microcontroller》和《Advanced PIC Microcontroller Projects in C》。他也在各种技术期刊、杂志、会议和研讨会上发表过200多篇技术论文。

本书展示了如何通过基于项目的方法开发一系列微控制器应用,通过大篇幅的修订和更新,力求涵盖PIC18F系列的最新发展。 在介绍使用流行的mikroC Pro for PIC和MPLAB XC8的C语言编程之后,本书完整地描述了项目的开发周期。本书将引导你完成经过全面测试的项目,包括许多新的高级主题,如以太网编程、数字信号处理和RFID技术。本书是理解PIC微处理器的基本原理并希望使用PIC18F系列开发更高级应用的工程师、技术人员、爱好者和学生的理想选择。
本书包括50多个项目,分为三个类别:初级、中级和高级。第2版的新项目包括:逻辑探头、产生声音、生成自定义的LCD字体、高/低游戏、产生波形、利用超声波测量人体高度、频率计数器、反应计时器、GPS项目、闭环开/关温度控制、蓝牙项目(主模式和从模式)、RFID项目、使用RTC芯片的实时时钟、实时闹钟、图形LCD(GLCD)项目、气压计+温度计+高度计项目、在GLCD上绘制温度变化曲线、以太网中基于Web浏览器的控制、以太网中基于UDP的控制、数字信号处理(低通滤波器设计)、汽车LIN总线项目、汽车CAN总线项目、多任务项目(使用协作和轮询调度)、单极步进电机项目、双极步进电机项目、闭环开/关直流电机控制。

图书前言

微控制器是一个单芯片微处理器系统,其中包含数据和程序存储器、串行和并行输入/输出、定时器、外部和内部中断,所有这些都集成在一个芯片中,其价格可以低至2.00美元。大约40%的微控制器应用在办公自动化中,例如,PC、激光打印机、传真机、智能电话等。大约1/3的微控制器存在于消费类电子产品中,如CD播放器、高保真设备、视频游戏、洗衣机、厨具等产品。通信市场、汽车市场和军事设备共享其余的应用领域。
目前有许多不同类型的微控制器,它们是由不同的制造商制造的。本书介绍了Microchip科技公司开发和制造的高端8位微控制器PIC18F系列。本书中的项目使用了非常流行的PIC18F45K22微控制器,在本书中也给出了许多初级、中级和高级项目。大多数项目都是使用流行的mikroC Pro for PIC编译器及MPLAB XC8编译器开发的,所有项目都有完整的文档,书中为每个项目提供以下内容:项目介绍、项目硬件(及适当的项目框图)、项目PDL、项目程序,对于一些项目,还提出了可能的修改和改进建议。所有的项目都已经过了测试,可以正常工作。
在阅读本书时,C编程语言的知识是很有用的,至少熟悉PIC16F系列中的一个微控制器也是有好处的,此外,不需要汇编语言编程知识,因为书中的所有项目都是基于C语言的。
本书面向学生、实习工程师和有兴趣使用PIC系列微控制器开发基于微控制器项目的爱好者。鉴于篇幅所限,我已经尝试在书中加入了尽可能多的项目。
第1章介绍了微控制器的基本特性。
第2章提供了一个有关C语言的简短教程,然后介绍了本书中提供的项目所使用的流行的mikroC Pro for PIC编程语言和编译器的特性。
第3章是关于MPLB X IDE和XC8编程语言及编译器的介绍。本书中的大多数项目都提供了mikroC Pro和XC8程序清单,读者应该能够轻松地从一种语言转换到另一种语言。
第4章描述了常用的程序开发工具,如PDL和流程图,关于这两个工具都给出了示例。
第5章给出了使用PIC18F45K22微控制器的初级项目。在本章中,这些项目包括简单的LED、7段数码显示屏、LCD、音响项目等。
第6章提供了中级项目。本章中的项目包括使用中断、使用键盘、实时生成波形、串行通信、GPS数据解码、各种总线系统等。
第7章提供了更多的高级项目。本章涵盖的项目主要包括使用蓝牙通信、RFID、实时时钟、图形LCD、SD卡,以及基于以太网的项目CAN总线、微控制器系统中的多任务、步进电机和直流电机的项目。虽然关于电机的项目不是最先进的,但在本章中尽量给出了完整的内容。
致谢
本书中的以下材料在相应版权持有人的许可下进行了转载,未经他们允许,不得以任何方式转载或复制。
图3.1和图3.12摘自Microchip科技公司的PIC18(L)F2X/4XK22(DS41412F)数据手册和Microchip科技公司的网站www.microchip.com。
图6.48取自Parallax公司的网站。
图6.8、图7.13、图7.28、图7.30、图7.63和图7.113取自mikroElektronica网站。
PIC 、PICSTART 和MPLAB 是Microchip科技公司的商标。

上架指导

计算机/嵌入式

封底文字

本书展示了如何通过基于项目的方法开发一系列微控制器应用,通过大篇幅的修订和更新,力求涵盖PIC18F系列的最新发展。 在介绍使用流行的mikroC Pro for PIC和MPLAB XC8的C语言编程之后,本书完整地描述了项目的开发周期。本书将引导你完成经过全面测试的项目,包括许多新的高级主题,如以太网编程、数字信号处理和RFID技术。本书是理解PIC微处理器的基本原理并希望使用PIC18F系列开发更高级应用的工程师、技术人员、爱好者和学生的理想选择。
本书包括50多个项目,分为三个类别:初级、中级和高级。第2版的新项目包括:逻辑探头、产生声音、生成自定义的LCD字体、高/低游戏、产生波形、利用超声波测量人体高度、频率计数器、反应计时器、GPS项目、闭环开/关温度控制、蓝牙项目(主模式和从模式)、RFID项目、使用RTC芯片的实时时钟、实时闹钟、图形LCD(GLCD)项目、气压计+温度计+高度计项目、在GLCD上绘制温度变化曲线、以太网中基于Web浏览器的控制、以太网中基于UDP的控制、数字信号处理(低通滤波器设计)、汽车LIN总线项目、汽车CAN总线项目、多任务项目(使用协作和轮询调度)、单极步进电机项目、双极步进电机项目、闭环开/关直流电机控制。

作者简介

[塞浦路斯] 多甘?易卜拉欣(Dogan Ibrahim)著:
Dogan Ibrahim 塞浦路斯尼科西亚近东大学生物医学工程系主任。他的研究兴趣包括自动控制、基于微处理器的设计、基于网络的教育、远程教育和工程教育。Dogan是40多本关于微处理器技术书籍的作者,包括《SD Card Projects Using the PIC Microcontroller》和《Advanced PIC Microcontroller Projects in C》。他也在各种技术期刊、杂志、会议和研讨会上发表过200多篇技术论文。

译者简介

许辉 吕汶 译:暂无简介

译者序

在现代工业环境中,随着微控制器的高速发展,新的控制技术已被广泛使用,它带动着工业自动化和控制领域向工业4.0方向迅速发展,因此微控制器的开发对提升产品性能和降低制造成本都有着举足轻重的影响。
要想利用微控制器对控制设备进行开发,不仅要掌握好微控制器的相关知识,还要积累各方面的经验,包括硬件设计、软件设计,以及如何让两者巧妙结合协同工作。此外,若要确保设计的项目能在实际工作环境中正常运行,还需要考虑实际应用环境的特点、突发问题的应急处理方式及各种干扰因素的影响等,因此,只有通过全面的考虑才能将微控制器的应用开发推进到新的阶段。
本书从实际设计应用出发,以Microchip科技公司的高端8位微控制器PIC18F系列为例,使用mikroC Pro for PIC编译器和MPLAB XC8编译器,并将其应用在了50多个应用项目中。在内容编排上,从基础层面向应用提高层面逐渐深化,初学者可以边学边用,循序渐进,从而掌握相关知识,提高自主学习和解决问题的能力。书中提供的所有项目不仅内容详尽,考虑全面,而且还提供了完整的文档,程序也都经过了全面测试和使用,具有非常高的参考价值。
正是由于本书的独特性,才使我们决定将其翻译并奉献给读者,希望能为涉及微控制器的电子类专业的本科生提供学习和参考资料,也为从事微控制器开发应用的工程师和电子爱好者提供帮助。
本书由西安电子科技大学的许辉、吕汶翻译,其中许辉负责第1、2、6、7章的翻译,吕汶负责第3、4、5章的翻译。由于时间紧张和译者的水平所限,难免存在偏差和失误,恳请读者批评指正。

图书目录

译者序
前言
第1章 微机系统 1
1.1 引言 2
1.2 微控制器系统 2
1.3 总结 6
1.4 练习 6
第2章 mikroC Pro for PIC编程语言 7
2.1 mikroC Pro for PIC程序的结构 8
2.2 数组 10
2.3 指针 11
2.4 结构体 11
2.5 C运算符 12
2.6 修改控制流 13
2.7 mikroC Pro for PIC的函数 17
2.8 mikroC Pro for PIC的库函数 17
2.9 总结 18
2.10 练习 18
第3章 MPLAB X IDE和MPLAB XC8 C编程语言 20
3.1 PICDEM PIC18 Explorer开发板 21
3.2 MPLAB X IDE 24
3.3 MPLAB XC8编译器 24
3.4 总结 39
3.5 练习 39
第4章 微控制器程序开发 40
4.1 使用PDL和流程图 41
4.2 举例 44
4.3 用流程图表示for循环 48
4.4 总结 49
4.5 练习 49
第5章 初级PIC18项目 51
项目5.1 追逐LED 52
项目5.2 复杂闪烁的LED 56
项目5.3 随机闪烁的LED 59
项目5.4 逻辑探头 61
项目5.5 LED骰子 68
项目5.6 双骰子项目 75
项目5.7 使用较少I/O引脚的双骰子项目 80
项目5.8 7段数码管计数器 89
项目5.9 两位多路复用7段数码管 94
项目5.10 4位多路复用7段数码管 99
项目5.11 LED电压表 105
项目5.12 LCD电压表 112
项目5.13 产生声音 124
项目5.14 生成自定义的LCD字体 131
项目5.15 数字温度计 134
第6章 中级PIC18项目 137
项目6.1 带4位多路复用7段数码管的外部中断事件计数器 138
项目6.2 带键盘和液晶显示器的计算器 150
项目6.3 高/低游戏 164
项目6.4 产生波形 170
项目6.5 利用超声波测量人体高度 199
项目6.6 迷你电子琴 208
项目6.7 带LCD的频率计数器 210
项目6.8 反应计时器 216
项目6.9 温度和相对湿度测量 224
项目6.10 带RS232串行输出的温度计 234
项目6.11 微控制器和基于PC的计算器 245
项目6.12 带LCD输出的GPS 250
项目6.13 开/关温度控制 256
第7章 高级PIC18项目 263
项目7.1 蓝牙串行通信之从模式 264
项目7.2 蓝牙串行通信之主模式 286
项目7.3 RFID的使用 293
项目7.4 RFID感应锁 308
项目7.5 复杂的SPI总线项目 315
项目7.6 使用RTC芯片的实时时钟 337
项目7.7 实时闹钟 350
项目7.8 SD卡项目——将文本写入文件 360
项目7.9 SD卡温度数据记录器 378
项目7.10 使用图形LCD——显示各种形状 386
项目7.11 在GLCD上显示气压计、温度计和高度计 397
项目7.12 在GLCD上绘制温度变化曲线 407
项目7.13 以太网的使用——基于Web浏览器的控制 412
项目7.14 以太网的使用——基于UDP的控制 422
项目7.15 数字信号处理——低通FIR数字滤波器项目 427
项目7.16 汽车项目——本地互联网络总线项目 434
项目7.17 汽车项目——CAN总线项目 446
项目7.18 多任务 470
项目7.19 步进电机控制项目——简单的单极电机驱动 487
项目7.20 步进电机控制项目——单极电机的复杂控制 490
项目7.21 步进电机控制项目——简单的双极电机驱动 494
项目7.22 直流电机控制项目——简单的电机驱动 500
项目7.23 测量电机速度的自制光学编码器 504
项目7.24 闭环直流电机速度控制——开/关控制 507

教学资源推荐
作者: 黄丽亚 杨恒新 袁丰 编著
作者: 堵国樑 主编
作者: [英]马克·凯尔伯特(Mark Kelbert),[俄]尤里·苏霍夫(Yuri Suhov)著
作者: (美)Stanley G.Burns Paul R.Bond
参考读物推荐
作者: 杨柳 编著
作者: [美]兰迪·班克罗夫特(Randy Bancroft) 著
作者: [美]迈克尔·萨林(Mikael Sahrling) 著
作者: 叶国阳 刘铮 徐科军 编著