基 础 篇

第1章 单片机概述及实验器材介绍2

1.1 单片机概述2

1.1.1 单片机的定义、分类与内部组成2

1.1.2 单片机应用系统的结构及其工作过程5

1.1.3 单片机的应用6

1.2 单片机基础知识7

1.2.1 数制与数制间的转换7

1.2.2 单片机中数的表示方法及常用数制的对应关系10

1.2.3 逻辑数据的表示10

1.2.4 单片机中常用的基本术语12

1.3 单片机入门的有效方法与途径12

1.4 学习单片机的基本条件13

1.4.1 软件条件13

1.4.2 硬件条件15

习题16

第2章 单片机开发软件及开发过程17

2.1 仿真软件Proteus的使用17

2.1.1 Proteus的主要功能特点17

2.1.2 实例1:功能感受—Proteus仿真单片机播放《渴望》主题曲17

2.1.3 Proteus软件的界面与操作介绍19

2.1.4 实例2:Proteus仿真设计快速入门21

2.2 Keil C51的使用31

2.2.1 单片机最小系统31

2.2.2 实例3:用Keil C51编写点亮一个发光二极管的程序31

2.3 程序烧录器及烧录软件的使用38

习题与实验38

第3章 逐步认识单片机基本结构40

3.1 实例4:用单片机控制一个灯闪烁40

3.1.1 实现方法40

3.1.2 程序设计40

3.1.3 用Proteus软件仿真41

3.1.4 延时程序分析43

3.2 实例5:将 P1口状态送入P0、P2和P3口44

3.2.1 实现方法44

3.2.2 程序设计45

3.2.3 用Proteus软件仿真45

3.2.4 用实验板实验46

3.2.5 I/O口功能介绍46

3.2.6 I/O口的结构分析46

3.3 实例6:使用P3口流水点亮8位LED49

3.3.1 实现方法49

3.3.2 程序设计50

3.3.3 用Proteus软件仿真51

3.3.4 用实验板实验51

3.4 实例7:通过对P3口地址的操作流水点亮8位LED51

3.4.1 实现方法51

3.4.2 程序设计52

3.4.3 用Proteus软件仿真53

3.4.4 用实验板实验53

3.5 MCS—51单片机存储器的基本结构53

3.5.1 程序存储器53

3.5.2 数据存储器53

3.6 单片机的复位电路55

习题与实验55

第4章 单片机C语言开发基础56

4.1 C语言源程序的结构特点56

4.2 标志符与关键字57

4.3 C语言的数据类型与运算符59

4.3.1 数据类型59

4.3.2 运算符62

4.3.3 实例8:用不同数据类型控制LED的闪烁65

4.3.4 实例9:用P0口、P1 口分别显示加法和减法运算结果68

4.3.5 实例10:用P0、P1口显示乘法运算结果70

4.3.6 实例11:用P1、P0口显示除法运算结果71

4.3.7 实例12:用自增运算控制P0口8位LED的闪烁花样73

4.3.8 实例13:用P0口显示逻辑“与”运算结果74

4.3.9 实例14:用P0口显示条件运算结果74

4.3.10 实例15:用P0口显示按位“异或”运算结果75

4.3.11 实例16:用P0显示左移运算结果76

4.3.12 实例17:“万能逻辑电路”实验77

4.3.13 实例18:用右移运算流水点亮P1口8位LED78

4.4 C语言的语句79

4.4.1 概述79

4.4.2 控制语句80

4.4.3 实例19:用if语句控制P0口8位LED的点亮状态84

4.4.4 实例20:用switch语句控制P0口8位LED的点亮状态86

4.4.5 实例21:用for语句设计鸣笛报警程序88

4.4.6 实例22:用while语句控制P0口8位LED闪烁花样92

4.4.7 实例23:用do-while语句控制P0口8位LED流水点亮93

4.5 C语言的数组95

4.5.1 数组的定义和引用95

4.5.2 实例24:用字符型数组控制P0口8位LED流水点亮97

4.5.3 实例25:用P0口显示字符串常量98

4.6 C语言的指针99

4.6.1 指针的定义与引用100

4.6.2 实例26:用P0口显示指针运算结果102

4.6.3 实例27:用指针数组控制P0口8位LED流水点亮103

4.6.4 实例28:用数组的指针控制P0 口8 位LED流水点亮104

4.7 C语言的函数106

4.7.1 函数的定义与调用106

4.7.2 实例29:用P0 、P1口显示整型函数返回值109

4.7.3 实例30:用有参数函数控制P0口8位LED流水速度111

4.7.4 实例31:用数组作为函数参数控制P0口8位LED流水点亮112

4.7.5 实例32:用指针作为函数参数控制P0口8位LED流水点亮113

4.7.6 实例33:用函数型指针控制P0口8位LED流水点亮115

4.7.7 实例34:用指针数组作为函数的参数显示多个字符串116

4.7.8 实例35:字符函数ctype.h应用举例118

4.7.9 实例36:内部函数intrins.h应用举例119

4.7.10 实例37:标准函数stdlib.h应用举例121

4.7.11 实例38:字符串函数string.h应用举例122

4.8 C语言的编译预处理123

4.8.1 常用预处理命令介绍123

4.8.2 实例39:宏定义应用举例126

4.8.3 实例40:文件包含应用举例127

4.8.4 实例41:条件编译应用举例128

习题与实验129

第5章 单片机的定时器/计数器131

5.1 定时器/计数器的基本概念131

5.2 定时器/计数器的结构及工作原理132

5.2.1 定时器/计数器的结构133

5.2.2 定时器/计数器的工作原理133

5.3 定时器/计数器的控制134

5.3.1 定时器/计数器的方式控制寄存器(TMOD)134

5.3.2 定时器/计数器控制寄存器(TCON)134

5.3.3 定时器/计数器的4种工作方式135

5.3.4 定时器/计数器中定时/计数初值的计算138

5.4 定时器/计数器应用举例138

5.4.1 实例42:用定时器T0控制跑马灯实现138

5.4.2 实例43:用定时器T1查询方式控制报警器鸣笛实现140

习题与实验142

第6章 单片机的中断系统143

6.1 中断系统的基本概念143

6.2 中断系统的结构及控制144

6.2.1 中断系统的结构144

6.2.2 中断系统的控制145

6.3 中断系统应用举例148

6.3.1 实例44:用定时器T0的中断方式控制跑马灯实现148

6.3.2 实例45:用定时器T1分式1控制控制报警器鸣笛实现149

6.3.3 实例46:用定时器T0的中断方式控制PWM波实现151

6.3.4 实例47:用定时器T0的音乐播放器的实现154

6.3.5 实例48:用定时器T0的门控制位测量外部正脉冲宽度159

6.3.6 实例49:用外中断 测量负跳变信号累计数161

习题与实验163

第7章 串行通信技术164

7.1 串行通信的基本概念164

7.2 串行通信口的结构166

7.3 串行通信口的控制166

7.3.1 串行口控制寄存器SCON167

7.3.2 电源控制寄存器PCON167

7.3.3 4种工作方式与波特率的设置168

7.4 串行通信口应用举例171

7.4.1 实例50:基于方式1的单工通信171

7.4.2 实例51:基于方式3的单工通信173

7.4.3 实例52:单片机向计算机发送数据176

7.4.4 实例53:计算机控制单片机LED显示178

习题与实验180

应 用 篇

第8章 接口技术182

8.1 LED数码管接口技术182

8.1.1 LED数码管的原理和接口电路182

8.1.2 实例54:用LED数码管显示数字“5”184

8.1.3 实例55:用LED数码管循环显示数字0~9185

8.1.4 实例56:用数码管慢速动态扫描显示数字“1234”186

8.1.5 实例57:快速动态扫描显示数字“1234”188

8.1.6 实例58:点阵LED动态显示实现189

8.2 键盘接口技术191

8.2.1 独立式键盘的工作原理192

8.2.2 实例59:无软件消抖的独立式键盘输入实验193

8.2.3 实例60:带软件消抖的独立式键盘输入实验194

8.2.4 实例61:CPU控制的键盘扫描实验195

8.2.5 实例62:定时器中断控制的键盘扫描实验200

8.2.6 实例63:“一键多能”实验201

8.2.7 实例64:独立式键盘控制步进电动机实验204

8.2.8 矩阵键盘的工作原理209

8.2.9 实例65:矩阵键盘按键值的数码管显示210

8.2.10 实例66:简易电子琴设计214

8.3 字符型LCD接口技术220

8.3.1 1602字符型LCD简介220

8.3.2 实例67:用LCD显示字符“A”225

8.3.3 实例68:液晶时钟设计230

习题与实验231

第9章 新型串行接口芯片应用232

9.1 I2C总线器件及其应用实例232

9.1.1 I2C总线接口232

9.1.2 实例69:将按键次数写入AT24C02,再读出送LCD显示235

9.1.3 实例70:对I2C总线上挂接两个AT24C02的读/写操作236

9.1.4 实例71:将“好人一生平安”乐谱写入AT24C02并播放238

9.2 单总线器件及其应用实例239

9.2.1 单总线简介239

9.2.2 实例72:DS18B20温度检测及其LCD显示244

9.3 SPI总线接口芯片及其应用实例245

9.3.1 SPI串行总线简介245

9.3.2 实例73:将数据“0xaa”写入X5045再读出送P1口显示248

9.3.3 实例74:将流水灯控制码写入X5045并读出送P1口显示250

9.3.4 实例75:对SPI总线上挂接的两个X5045的读/写操作251

习题与实验252

第10章 常用功能器件应用举例254

10.1 模/数(A/D)转换器件254

10.1.1 A/D转换基础254

10.1.2 实例76:基于ADC0832的5V直流数字电压表256

10.2 数/模(D/A)转换器件258

10.2.1 D/A转换基础258

10.2.2 实例77:用DAC0832产生锯齿波电压260

10.3 红外线遥控信号接收器件261

10.3.1 红外线信号接收基础261

10.3.2 实例78:用P1口显示红外遥控器的按键值263

10.3.3 实例79:用红外线遥控器控制继电器265

10.4 适时时钟芯片266

10.4.1 常用适时时钟芯片介绍267

10.4.2 实例80:基于DS1302的日历时钟269

习题与实验271

综合提高篇

第11章 综合应用实例274

11.1 实例81:中文字符的液晶显示274

11.1.1 图形点阵显示器简介274

11.1.2 仿真原理图设计278

11.1.3 程序设计与仿真279

11.2 实例82:12位A/D转换器TLC2543的使用284

11.2.1 TLC2543介绍284

11.2.2 仿真原理图设计286

11.2.3 程序设计与仿真288

11.3 实例83:二线制串行接口传感器SHT11的使用293

11.3.1 智能温、湿度传感器SHT11介绍293

11.3.2 仿真原理图设计295

11.3.3 程序设计与仿真295

11.4 实例84:电压型传感器的使用302

11.4.1 FS4003传感器介绍302

11.4.2 仿真原理图设计304

11.4.3 程序设计与仿真305

11.5 实例85:RS—232型数字传感器的使用310

11.5.1 FS4003传感器的串口通信协议介绍310

11.5.2 仿真原理图设计310

11.5.3 程序设计与仿真311

11.6 实例86:电流型传感器应用举例318

11.6.1 电流型传感器的使用基础318

11.6.2 仿真原理图设计319

11.6.3 程序设计与仿真321

11.7 实例87:基于化学传感器的氧浓度检测仪设计323

11.7.1 R—17MED化学传感器简介323

11.7.2 硬件仿真电路设计324

11.7.3 程序设计与仿真325

11.8 实例88:单片机向RS—485 型传感器发送读取命令327

11.8.1 RS—485通信简介328

11.8.2 TTL/RS—485转换的仿真原理图设计329

11.8.3 程序设计与仿真331

11.9 实例89:单片机从RS—485型传感器接收数据333

11.9.1 RS—485传感器返回数据的格式333

11.9.2 仿真原理图设计334

11.9.3 程序设计与仿真334

11.10 实例90:用VB实现单片机和计算机的串行通信337

11.10.1 开发背景337

11.10.2 开发要求337

11.10.3 Visual Basic 6.0 简介337

11.10.4 添加MSComm控件与基本属性设置338

11.10.5 Visual Basic 6.0实现串行通信的过程339

11.11 实例91:LabVIEW环境下串行通信编程345

11.11.1 开发环境345

11.11.2 上下位机程序设计346

11.11.3 程序结果353

11.12 实例92:手部握力评估仪设计353

11.12.1 系统工作原理353

11.12.2 仿真原理图设计354

11.12.3 程序设计与仿真355

11.13 实例93:心率测量系统设计359

11.13.1 系统工作原理359

11.13.2 仿真原理图设计360

11.13.3 程序设计与仿真361

11.14 实例94:基于铂热电阻的防火系统设计367

11.14.1 系统的工作原理367

11.14.2 仿真原理图设计368

11.14.3 程序设计与仿真370

11.15 实例95:基于LabVIEW和Proteus的温度控制仿真372

11.15.1 系统工作原理372

11.15.2 仿真原理图设计373

11.15.3 程序设计与仿真376

11.16 实例96:K型热电偶的冷端自动补偿设计381

11.16.1 系统的工作原理381

11.16.2 仿真原理图设计382

11.16.3 程序设计与仿真383

11.17 实例97:电动机测速表设计385

11.17.1 系统的工作原理385

11.17.2 仿真原理图设计386

11.17.3 程序设计与仿真387

11.18 实例98:基于PWM的直流电动机调速系统设计389

11.18.1 系统的工作原理389

11.18.2 仿真原理图设计389

11.18.3 程序设计与仿真390

11.19 实例99:热敏打印机驱动程序设计392

11.19.1 系统的工作原理392

11.19.2 仿真原理图设计393

11.19.3 程序设计与仿真393

11.20 实例100:航空发动机热电偶信号模拟电压源设计395

11.20.1 系统的工作原理395

11.20.2 电路原理图设计396

11.20.3 程序设计396

参考文献399

单片机c语言应用100例第3版课后答案,单片机C语言应用100例(第3版)(含光盘1张)...相关推荐

  1. java语言程序设计第二版课后答案吴倩_java语言程序设计课后答案 郞波 第二版 清华大学出版社...

    展开全部 我有 Java面向对象程序设计 清华大学出版社 (编著 耿祥义 张跃平) 习题解答 建议e69da5e887aa62616964757a686964616f31333330326632使用文 ...

  2. java语言程序设计第二版课后答案吴倩_Java语言程序设计

    内容概要 <java语言程序设计:面向对象的设计思想与实践>围绕面向对象的设计思想展开主题,详细讲解了java语言基础语法.面向对象的三大特征.图形用户界面的编程方法.多线程编程.java ...

  3. java语言程序设计第二版课后答案吴倩_java语言程序设计课后答案

    作业参考答案 习题一 4 .如何建立和运行 Java 程序? 首先启动文本编辑器,如记事本. UltraEdit 等,编辑程序代码,并以 .Java 作为文件 扩展名保存程序源代码:然后进入 dos ...

  4. 单片机原理及应用第三版课后答案张毅刚

    单片机原理及应用第三版张毅刚答案 内容简介 本书为"十二五"普通高等教育本科*规划教材单片机原理及应用第三版课后答案,全书详细介绍了美ATMEL公司的增强型AT89S52单片机的硬 ...

  5. 数据结构c语言王海燕版课后答案,c语言程序设计实验指导(学生用).doc

    c语言程序设计实验指导(学生用).doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. ...

  6. c++语言基础教程第三版习题答案,《C++语言基础教程》吕凤翥习题答案

    <<C++语言基础教程>吕凤翥习题答案>由会员分享,可在线阅读,更多相关<<C++语言基础教程>吕凤翥习题答案(66页珍藏版)>请在人人文库网上搜索. ...

  7. python语言入门p-python语言程序设计基础(第2版)课后答案嵩天

    嵩天等程序设计基础(Python语言)习题答案?本书系统地介绍了Python程序设计语言和程序设计的基本方法.从Python语言发展历史.配置环境开始,详细介绍了Python语言的各种数据类型.程序编 ...

  8. 数据结构c语言版第二版第三章课后答案,数据结构(C语言版)习题集答案第三章.doc...

    数据结构(C语言版)习题集答案第三章.doc 习题三3.1 3.10 3.13 3.5 3.6 3.15 3.17 3.19 3.24 3.29 3.31 3.51 给定操作序列P1P2P3PiPn( ...

  9. c语言第二版课后答案pdf,数据结构(C语言版)第2版习题答案—严蔚敏.pdf

    数据结构( C语言版) (第2版) 课后习题答案 李冬梅 2015.3 目 录 第 1 章 绪论 1 第 2 章 线性表 5 第 3 章 栈和队列 14 第 4 章 串.数组和广义表 27 第 5 章 ...

最新文章

  1. 【心情】为什么发英文版免责声明?
  2. Java synchronized 和 volatile 的区别
  3. prettier 配置参数说明
  4. 03-java学习-基本数据类型-运算符-键盘接收用户输入
  5. python字符串前面加上序号_简单了解python字符串前面加r,u的含义
  6. 群晖pxe安装windows_使用win-server2016 进行 pxe 网络装机
  7. 第6章系统数据文件和信息总结
  8. php日志数据统计,PHP统计Nginx日志的User Agent数据
  9. 云卓遥控器+DIY高清摄像机的方案(完美接入原系统)
  10. matlab fspecial
  11. html中treegrid不显示根节点,treegrid如何让子节点默认不展开
  12. 【毕业设计】物联网智能温控风扇设计与实现 - stm32 单片机 嵌入式
  13. Node.js学习笔记(五)——WebSocket
  14. L2 Spare the spider 不要伤害蜘蛛
  15. [UOJ#454][UER#8]打雪仗
  16. 【Unityc#专题篇】—基础章题单实践
  17. 【时光它会替我们记得】- 1024有奖征文
  18. mqtt消息推送中间件服务器软件评价
  19. python画魄罗代码_LOL:灵魂画师在这里!玩家手绘冰雪节魄罗
  20. Java实验6 --模拟物流快递系统程序设计

热门文章

  1. Taro+react开发(50) 小程序触底操作
  2. 前端学习(2963):element-ui介绍
  3. [html] html中如何使用svg?
  4. [vue] 有在vue中使用过echarts吗?踩过哪些坑?如何解决的?
  5. 前端学习(1987)vue之电商管理系统电商系统之通过路由加载商品列表
  6. 前端学习(1561):ng-class颜色切换
  7. 前端学习(1496):watch使用场景
  8. java学习(25):三目运算符
  9. xshell连接突然报Connection closed by foreign host.
  10. Linux SPI总线和设备驱动架构