新書推薦:
《
佛山华家班粤菜传承 华家班59位大厨 102道粤菜 图文并茂 菜式制作视频 粤菜故事技法 佛山传统文化 广东科技
》
售價:HK$
221.8
《
武人琴音(十周年纪念版 逝去的武林系列收官之作 形意拳一门三代:尚云祥、韩伯言、韩瑜的人生故事 凸显百年武人命运)
》
售價:HK$
43.7
《
剑桥斯堪的纳维亚戏剧史(剑桥世界戏剧史译丛)
》
售價:HK$
154.6
《
禅心与箭术:过松弛而有力的生活(乔布斯精神导师、世界禅者——铃木大拙荐)
》
售價:HK$
66.1
《
先进电磁屏蔽材料——基础、性能与应用
》
售價:HK$
221.8
《
可转债投资实战
》
售價:HK$
99.7
《
王氏之死(新版,史景迁成名作)
》
售價:HK$
54.9
《
敢为天下先:三年建成港科大
》
售價:HK$
77.3
|
編輯推薦: |
(1) 循序渐进,由浅入深。从51单片机基础知识、内部资源、系统扩展及接口技术,再到进阶应用。可供32学时、48学时的少学时专业选用,也可供64学时及以上的多学时专业选用。
(2) 软硬件结合,虚拟仿真。理论、仿真、实践相结合,所有实例均带仿真电路图和程序源代码,方便读者学习和验证。
(3) 夯实工程、项目和竞赛基础。基础内容面向工程应用,进阶内容系统讲解项目开发、学科竞赛必备的SPI、I2C、1-wire总线扩展技术、单片机电机控制技术和模块化程序设计方法。多个程序模块可直接移植到项目开发中。
(4) 资源丰富,便于教学、自学。配套教学大纲、课件、仿真电路、源代码、习题答案、实验指导书等教学资源,可扫描前言下方二维码下载。
|
內容簡介: |
本书属于高校电子信息类专业和自动化等相关专业的基础课程教材,无政治性问题。本书内容质量较好,具有较强的科学性和知识性。本书主要基于 ATMEL 公司 8051 内核的 AT89C51 单片机进行讲解,实例用 C 语言在KeilμVision4 集成开发环境下编写,所有的实例都可以在 Proteus 仿真软件中运行。本书较全面地覆盖了 51 单片机原理及应用,可作为高等工科院校、职业技术学院的电子信息类、自动化类、计算机类、电气类、仪器类、机械类等专业单片机技术课程的教材,也可供从事单片机相关设计工作的技术人员使用与参考。
|
關於作者: |
倪妍婷,成都大学副教授。四川大学机械制造及其自动化专业博士,德国马格德堡大学数学优化系博士后。曾在英特尔公司工作多年,主要从事半导体生产制造工程师工作。长期从事测控技术与仪器相关的教学和科研工作,承担“微机原理”“MATLAB与科学计算”等课程教学。近5年发表SCI源刊论文、EI等期刊论文近10篇。承担国家自然科学基金项目1项,四川省教育厅重点项目1项。出版测控技术与仪器方面的著作1部,教材1部。
程跃,博士,成都大学教师。长期从事测控技术与仪器相关的教学和科研工作,承担“单片机原理及应用”“虚拟仪器技术”等课程教学。参与国家自然科学基金、四川省科技攻关项目和横向项目多项,发表论文10余篇。
|
目錄:
|
第1章单片机概述
1.1单片机概述
1.1.1单片机的发展历程及主流系列单片机简介
1.1.2单片机的发展趋势
1.1.3单片机的应用领域
1.2单片机学习方法论
1.2.1初学者学什么类型的单片机
1.2.2如何学好单片机
1.2.3单片机原理与其他课程的关系
1.2.4与单片机相关的大学生学科竞赛
1.3本课程使用的硬件和软件
1.3.1本课程使用的工具、设备和仪器
1.3.2本课程使用的软件开发工具
1.4单片机中的数制与编码
1.4.1数制及转换
1.4.2单片机中常用编码
1.551单片机简介
习题
第2章AT89C51单片机的硬件结构和原理
2.1AT89系列单片机
2.2AT89C51单片机的基本组成
2.3AT89C51单片机的CPU
2.4AT89C51单片机引脚及其功能
2.5AT89C51单片机的存储器组织
2.5.1程序存储器ROM
2.5.2数据存储器RAM
2.5.3特殊功能寄存器
2.6时钟电路及时序
2.6.151单片机时钟电路
2.6.2基本时序定时单位
2.6.3时序
2.7AT89C51单片机的工作方式
2.7.1复位操作和复位电路
2.7.2程序执行方式
2.7.3低功耗操作方式
2.7.4编程和校验方式
2.8AT89C51单片机的最小系统
习题
第3章仿真和集成开发环境使用
3.1Keil μVision4使用简介
3.1.1Keil μVision4建立工程及程序编译
3.1.2Keil μVision4调试程序和仿真
3.2Proteus ISIS使用初步
3.2.1Proteus ISIS的工作界面
3.2.2Proteus ISIS的虚拟仿真调试工具
3.2.3Proteus ISIS原理图绘制步骤
3.3第一个仿真电路和程序
3.4Proteus原理图与Keil环境联机仿真调试
3.5单片机程序下载方式简介
3.5.1编程器下载程序
3.5.2ISP下载
3.5.3STC单片机串口下载
习题
第4章C51程序设计基础
4.1汇编语言简介
4.2C51的优点和结构特点
4.3C51中的数据类型
4.3.1C51常用基本数据类型
4.3.2C51专用数据类型
4.3.3reg51.h头文件
4.3.4定义变量类型
4.3.5数据类型的转换
4.4常量、变量及其存储模式
4.4.1常量
4.4.2变量
4.4.3存储模式
4.4.4绝对地址访问
4.5C51的运算符
4.5.1算术运算符、逻辑运算符和关系运算符
4.5.2位运算符
4.5.3复合赋值运算符
4.5.4逗号运算符和条件运算符
4.5.5指针和地址运算符
4.6C51程序设计的三种基本结构
4.6.1选择结构
4.6.2循环结构
4.7数组
4.7.1常用数组简介
4.7.2数码管的静态显示
4.8指针
4.8.1指针变量的定义
4.8.2指针变量的引用
4.9结构体与共用体
4.9.1结构体的定义
4.9.2结构体的引用
4.9.3结构数组
4.9.4指向结构类型数据的指针
4.10C51的函数
4.10.1标准库函数
4.10.2用户自定义函数
4.10.3中断服务函数
4.11宏的使用
习题
第5章单片机并行I/O口的原理及编程
5.151单片机并行I/O口端口结构和工作原理
5.1.1P0口(P0.0~P0.7)
5.1.2P1口(P1.0~P1.7)
5.1.3P2口(P2.0~P2.7)
5.1.4P3口(P3.0~P3.7)
5.1.5P0~P3口功能总结
5.2AT89C51单片机I/O口驱动能力
5.3并行I/O口应用举例
5.3.1独立键盘设计
5.3.2继电器和蜂鸣器
5.3.3数码管的动态显示
5.3.4点阵屏显示
习题
第6章单片机中断系统
6.1中断的基本概念
6.1.1中断的作用
6.1.2中断的过程和相关名词术语
6.2AT89C51单片机的中断系统
6.2.1中断允许控制寄存器
6.2.2中断优先级控制寄存器
6.2.3定时器/计数器控制寄存器
6.2.4中断响应
6.3中断服务函数
6.3.1中断服务函数的格式
6.3.2寄存器组的切换
6.3.3中断服务函数注意事项
6.4外部中断应用举例
6.4.1单个外部中断的应用
6.4.2两个外部中断的应用
6.4.3中断嵌套应用
6.4.4多个外部中断扩展
习题
第7章AT89C51单片机的定时器/计数器
7.151单片机定时器/计数器的特性
7.251单片机定时器的内部结构
7.2.1定时器方式寄存器
7.2.2定时器控制寄存器
7.3定时器的四种工作模式
7.3.1方式0
7.3.2方式1
7.3.3方式2
7.3.4方式3
7.4定时器的编程应用举例
7.4.1单片机定时器PWM控制技术
7.4.2定时器的计数功能
7.4.3定时器定时控制功能
7.4.4脉宽检测与频率测量
7.4.5多定时任务的编程
7.552单片机定时器T2
7.5.1T2控制寄存器
7.5.2T2模式寄存器
习题
第8章单片机的串行口
8.1通信的基础知识
8.1.1通信的基本方式
8.1.2串行通信的传输方式
8.1.3串行通信的通信方式
8.1.4串行通信的校验
8.2AT89C51单片机串行口内部结构
8.2.1AT89C51串口简介
8.2.2串行口控制字及控制寄存器
8.3串行口的工作方式
8.3.1方式0
8.3.2方式1
8.3.3方式2和方式3
8.4波特率设计及定时器初值计算方法
8.5串行通信应用设计
8.5.1方式0输出(串行转并行)
8.5.2方式0输入(并行转串行)
8.5.3串口方式1的发送与接收
8.5.4串口方式2、方式3的发送与接收
8.6单片机与PC通信
8.7多机通信
8.8UART接口的扩充方法
习题
第9章单片机键盘与显示接口技术
9.1矩阵式键盘
9.1.1行(列)扫描法
9.1.2线反转法
9.2显示驱动芯片MAX7219的应用
9.2.1MAX7219概述
9.2.2MAX7219引脚功能及工作时序
9.2.3MAX7219的内部寄存器
9.3字符型液晶模块1602的使用与编程
9.3.1LCD1602概述
9.3.2LCD1602引脚接口及工作时序
9.3.3LCD1602内部结构与指令功能
9.4点阵图形液晶模块12864的使用与编程
9.5触摸屏简介
习题
第10章A/D与D/A转换接口技术
10.1A/D转换设计
10.1.1ADC的分类
10.1.2ADC的性能指标
10.1.3逐次逼近式8位并行ADC——ADC0809
10.1.4逐次逼近式12位串行ADC——TLC2543
10.2D/A转换设计
10.2.1D/A转换器DAC0832
10.2.2串行10位D/A转换器TLC5615
习题
第11章单片机的系统扩展
11.1单片机系统并行扩展技术
11.1.1并行扩展三总线简介
11.1.2三总线存储器扩展技术
11.1.3三总线外围器件扩展
11.2SPI总线
11.2.1SPI总线简介
11.2.2日历时钟芯片DS1302的使用与编程
11.3I2C总线
11.3.1I2C总线的基本特点
11.3.2I2C总线信号时序
11.3.351单片机模拟I2C总线通信
11.3.4I2C总线数据格式
11.3.5带I2C总线接口的E2PROM AT24CXX
11.41Wire总线
11.4.11Wire总线数据通信协议简介
11.4.2单总线数字温度传感器DS18B20
习题
第12章单片机的应用系统设计及抗干扰技术
12.1单片机应用系统的组成
12.2单片机应用系统设计步骤
12.3单片机应用系统硬件和软件设计应考虑的问题
12.3.1单片机应用系统硬件设计应考虑的问题
12.3.2单片机应用系统软件设计应考虑的问题
12.4单片机应用系统的可靠性与抗干扰设计
12.4.1干扰的来源
12.4.2单片机应用系统的硬件抗干扰设计
12.4.3软件抗干扰技术
第13章单片机的电机控制
13.1直流电机控制
13.1.1直流电机的控制原理
13.1.2直流电机的驱动
13.2步进电机控制
13.2.1步进电机的结构与工作原理
13.2.2步进电机的单片机控制
13.3舵机控制
13.3.1舵机的结构与工作原理
13.3.2舵机的单片机控制
第14章单片机的模块化程序设计
14.1模块化程序设计简介
14.2模块编程步骤和模块划分原则
14.3C51模块化编程的方法和规范
14.3.1C51模块化编程文件
14.3.2模块化编程遵循原则
14.3.3变量类型名定义与模块化编程
14.4模块化工程建立
14.4.1Keil中的主要文件类型
14.4.2模块化工程建立
14.4.3C51模块化工程建立实例
14.5C51模块化实例
14.6模块化程序设计编译常见错误和警告及解决方法
14.7模块化程序设计推荐规范
14.7.1程序排版规范
14.7.2命名推荐规范
14.7.3模块化编程注释推荐规范
附录AProteus提供的仿真元件分类及子类中英文对照
附录Breg51.h文件
附录CKeil C51常用库函数
附录D51单片机缩写的英文全称及中文名称对照
参考文献
|
內容試閱:
|
单片机技术在电子信息、电气工程、工业自动化、通信及物联网、汽车电子、航空航天等领域得到广泛应用,人们在生产生活中所用的几乎每件电子和机械产品中都会集成有单片机。单片机又称为微控制器,是嵌入式控制器的一种,是嵌入式系统学习的基础。
20世纪80年代初,英特尔公司推出了8位的8051单片机,此后在8051上发展出了MCS51系列单片机,基于这一内核的单片机至今还在使用。随着应用要求的不断提高和技术的发展,16位单片机和32位单片机成为市场主流,目前,高端的32位单片机主频已经超过600MHz,增强型的高端单片机集成了ADC、DAC、PWM、WDT、LCD驱动电路等功能模块,带有SPI、I2C、CAN等通信接口,实现ISP、IAP编程,进一步提升了性价比,给工程师带来更好的开发体验。当代单片机系统已经不只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机还可以直接使用专用的Windows、Linux、Android等操作系统。
8051单片机是最基础的单片机,其内部结构简单、学习资料丰富,对开发环境要求较低,方便初学者入门,使学习者在进阶学习中能够更深刻地理解接口时序和外围功能电路模块的使用与编程; 51单片机更接近底层硬件,可以使学习者深入积累更多的底层技术基础。只要把51单片机学透,通过51单片机的学习掌握单片机的内部资源、外围扩展和使用编程技巧,入门后遇到从未用过的单片机也能触类旁通,很快上手。因此,国内绝大多数高校都用51单片机进行单片机入门教学。
C语言与汇编语言相比,在功能性、结构性、可读性、可维护性上有明显的优势,C51是在标准C语言的基础上针对51单片机的硬件特点进行的扩展,并向51单片机上移植, C51已经成为公认的高效、简洁而又贴近51单片机硬件的实用高级编程语言。Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。其方便易用的集成环境、强大的软件仿真调试工具使开发者事半功倍。
单片机程序开发不同于通用的计算机应用程序设计,它是软、硬件相结合的,必须针对具体的微控制器和外围电路来实现。对于单片机初学者,在制作电路的基础上进行软、硬件联合调试具有较高难度和成本,很多公司推出了单片机开发板、实验箱、编程器、仿真器等,方便初学者和开发者进行学习。英国Labcenter Electronics公司出品的EDA工具软件Proteus,不仅具有其他EDA工具软件的仿真功能,还能仿真单片机及外围器件,它是目前最好的仿真单片机及外围器件的工具,其处理器模型支持多种主流单片机,Proteus软件为在纯软件环境中完成系统设计与调试成为可能,为单片机学习和工程开发提供了理想的平台。
本书主要基于ATMEL公司8051内核的AT89C51单片机进行讲解,实例用C语言在KeilμVision4集成开发环境下编写,所有的实例都可以在Proteus仿真软件中运行。本书共分四部分,14章内容。
第一部分: 基础知识
本部分主要介绍单片机硬件结构、集成开发环境和仿真软件、C51编程基础。包括4章内容: 第1章单片机概述,介绍单片机的概念、发展历史、发展趋势及应用领域; 对学习单片机的方法进行探讨; 介绍本课程将接触到的工具、设备和软件; 回顾数制、编码和数据的基础知识。第2章AT89C51单片机的硬件结构和原理,介绍AT89C51单片机的内部硬件资源、各功能部件及原理。第3章仿真和集成开发环境使用,讲解Keil μVision4集成开发环境和电路仿真软件Proteus 7.5的初步使用。第4章C51程序设计基础,初步介绍如何使用C51来进行AT89C51单片机程序开发,重点介绍C51对标准C语言所扩展的部分,并通过一些例程来讲解C51的程序设计思想。
第二部分: AT89C51单片机内部资源及编程
本部分是本课程的核心,主要介绍单片机内部资源结构,通过大量例子讲解内部资源的使用与编程。包括4章内容。第5章单片机的并行I/O口原理及编程,介绍51单片机P0、P1、P2、P3四组并行I/O口的结构及使用与编程。第6章单片机中断系统,介绍中断的基本概念、AT89C51单片机的中断系统、中断服务函数的语法,并通过几个实例讲解外部中断源的使用与编程方法。第7章AT89C51单片机的定时器/计数器,介绍51单片机定时器/计数器的内部结构、工作方式、相关控制寄存器、初值计算方法,并通过多个实例讲解定时器/计数器的使用与编程方法。第8章单片机的串行口,介绍通信的基础知识,UART的基本结构和工作原理,串口的4种工作方式,与串口相关的特殊功能寄存器。通过实例讲解同步移位寄存器在串行转并行和并行转串行的应用,单片机串口双机通信、多机通信、单片机与PC的通信,并简要介绍常用标准通信接口RS232、RS485、USB。
第三部分: AT89C51单片机系统扩展及接口技术
本部分主要介绍单片机的键盘与显示接口技术,A/D、D/A转换,常见接口扩展技术。包括3章内容: 第9章单片机键盘与显示接口技术,讲解键盘、数码管显示驱动芯片、液晶与单片机的接口设计与软件编程。第10章 A/D与D/A转换接口技术,介绍ADC和DAC的使用,通过实例讲解几种典型的ADC与DAC与单片机的接口设计及软件编程。第11章单片机的系统扩展,介绍51单片机系统的三总线并行扩展技术,SPI、I2C、1Wire串行扩展技术和一些常见的外围芯片和单片机的接口与编程。
第四部分: AT89C51单片机进阶应用
本部分主要介绍单片机的应用系统设计方法和抗干扰设计方法,电机控制方法和模块化程序设计方法。包括3章内容: 第12章单片机的应用系统设计及抗干扰技术,介绍单片机应用系统的组成、应用系统设计步骤,分析单片机应用系统硬件设计和软件设计应考虑的问题,介绍干扰的来源,硬件和软件的抗干扰措施。第13章单片机的电机控制,介绍直流电机、步进电机和舵机的工作原理及单片机的基本控制方法,并通过实例讲解电机的启停、正反转和调速等基本控制编程。第14章单片机的模块化程序设计,介绍单片机模块化划分的原则、C51模块化编程的方法和规范、在Keil4中单片机模块化工程建立的方法和步骤,并通过由浅入深的几个实例讲解单片机模块化程序设计的方法。
本书可作为测控技术与仪器、机械电子工程、电子信息工程等对单片机要求较高专业的教材,也可以作为机械设计制造及其自动化、车辆工程、材料成型与控制工程等对单片机要求较低专业的教材。本书可供少学时(32~48学时)选用,也可供多学时(64学时及以上)选用。对于少学时专业,主要讲授第一部分和第二部分的章节、第三部分第9章。对于多学时专业,主要讲授第一、二、三部分章节和选讲第四部分部分章节。
本书所有案例均可到清华大学出版社网站下载,包括案例仿真电路和C语言源程序。由于编者水平有限,书中错漏之处在所难免,请读者提出宝贵意见,以不断改进。
编者
2022年6月
配套资源扫码下载
|
|