单片机应用技术项目化教程:基于STC单片机.pdf

单片机应用技术项目化教程:基于STC单片机.pdf
 

书籍描述

内容简介
本书是学习单片机应用技术的项目化教材,也是STC大学推广计划的合作教材、STC杯单片机系统设计大赛的推荐教材,适合C语言零基础的学员,书中通过典型案例——一个单片机I/O口测试仪、一台交通灯控制器、一个仪表显示器、医院病床呼叫系统控制器、一个定时开关、一个数显测量仪、一个智能控制器、一个小型飞行器的设计制作,详尽解说了单片机应用的核心技术,程序完整,循序渐进,引导读者入门并快学速用。
本书适合相关高职高专院校师生使用,也非常适用于本科和相关工程技术人员自学单片机时使用。

编辑推荐
《单片机应用技术项目化教程----基于STC单片机项目化教程》为STC大学推广计划的合作教材,也是STC杯单片机系统设计大赛的推荐教材。 按OTPAE五步训练法,以案例引入,以能力培养为目标 生动讲解:应用单片机进行各项设计制作的核心技术 案例丰富:详尽展示——单片机测试仪、交通灯控制器、仪表显示器、医院病床呼叫系统控制器、带时间显示的定时开关、数显测量仪、多功能智能控制器设计制作相关的技术知识 关注学习者的感受:步骤详尽,程序清晰,循序渐进,快学速用

作者简介
陈静,吉林电子信息职业技术学院机电技术学院,副教授 教研室主任,一直从事自动化相关专业的教学工作,主讲课程有:《单片机应用技术》、《自动控制原理》、《自动控制系统》、《电路》等。

目录
项目一 设计制作一个单片机I/O口测试仪 1
进阶一 通过与计算机比较,初步认识单片机 3
一、单片机的定义及单片机应用系统的组成 4
二、单片机的硬件和软件 5
三、单片机的应用和发展趋势 8
四、STC单片机简介 9
五、IAP15W4K58S4单片机介绍 10
六、单片机的学习方法 13
进阶二 单片机正常工作时的状态 14
一、IAP15W4K58S4单片机典型应用电路介绍 16
二、51单片机程序的运行机制 17
三、IAP15W4K58S4单片机I/O口 19
进阶三 用单片机点亮LED指示灯 21
一、LED基础知识 22
二、点亮一个LED信号灯电路 22
三、点亮一个LED信号灯的程序 23
四、Keil C51软件和STC Monitor51仿真器使用方法 24
五、C语言知识学习(一)——C语言的基本语句 40
项目二 设计制作一台交通灯控制器 44
进阶一 设计一个LED闪烁信号灯控制系统 45
一、一个LED信号灯的闪烁电路 47
二、任务分析 48
三、IAP15W4K58S4单片机控制一个LED信号灯闪烁的程序 49
四、C语言知识学习(二)——while语句 50
五、单片机程序结构 53
进阶二 简单的城市路口交通灯控制系统实例 58
一、程序流程图的基本结构 59
二、模拟城市路口交通灯控制系统举例 61
三、C语言知识学习(三)——for语句 63
项目三 设计制作一个仪表显示器 66
进阶一 用单片机控制一位数码管显示数字 66
一、数码管工作原理 67
二、一位数码管与单片机的连接电路 69
三、用单片机控制数码管显示“6”程序 69
四、C语言知识学习(四)——预处理命令和变量 70
进阶二 用单片机控制多位数码管显示不同的数字 73
一、8位数码管与单片机的连接电路 74
二、多联数码管与动态显示技术 74
三、74HC595简介与按时序图编程 75
四、8位数码管显示不同数字流程图 77
五、编程实现多位数码管显示不同的数字 78
六、C语言知识学习(五)——数组知识 80
进阶三 设计一个仪表的数码管数值显示器 82
一、C语言知识学习(六)——常用运算符 83
二、程序示例 86
进阶四 用字符液晶12864做显示器,显示汉字和数字 89
一、12864显示器介绍 90
二、12864使用说明 91
三、电路 94
四、12864显示的程序 94
项目四 设计制作医院病床呼叫系统控制器 100
进阶一 按钮控制电动机的启停 101
一、如何把电动机接到单片机上——功率驱动 101
二、交流电动机的驱动电路 103
三、按钮控制电动机的启停流程图 103
四、按钮控制交流电动机的启停程序 103
五、C语言知识学习(七)——if语句用法 105
进阶二 设计一台简易抢答器 108
一、简易抢答器中按钮的电路 108
二、简易抢答器流程图 108
三、简易抢答器程序 109
四、C语言知识学习(八)——switch、break、continue语句用法 111
进阶三 用一位数码管记录按钮按下的次数 112
一、按钮去抖动的方法 114
二、用8位数码管的第1位记录按钮按下的次数程序 114
进阶四 用4个组合按钮修改仪表上显示的数据 116
一、组合按钮电路 117
二、程序 117
进阶五 矩阵式键盘用法 121
一、矩阵式键盘 121
二、扫描程序 122
项目五 设计制作一个带时间显示的定时开关 125
进阶一 认识单片机的特殊功能寄存器 126
一、IAP15W4K58S4单片机内部结构原理 126
二、单片机内部存储器结构与数据存放方法 127
三、特殊功能寄存器 128
四、STC15Fxxxx.h头文件 130
进阶二 设计一个故障报警器 136
一、中断知识 137
二、IAP15W4K58S4单片机外中断的用法 146
三、单片机响应中断的过程 146
四、故障报警器电路 147
五、故障报警器程序 147
进阶三 设计一位秒表 148
一、定时器/计数器功能介绍 149
二、电路 158
三、程序 158
进阶四 使用串口实现两台单片机间的通信功能 162
一、串行接口通信简介 162
二、电路 172
三、程序 172
项目六 设计制作一个手持数显测量仪 176
进阶一 IAP15W4K58S4单片机I/O口使用 177
一、IAP15W4K58S4单片机I/O口的使用 177
二、主时钟分频、分频寄存器、主时钟对外输出 181
三、IAP15W4K58S4单片机复位 182
四、IAP15W4K58S4单片机的省电模式 186
五、IAP15W4K58S4单片机的EEPROM 187
进阶二 用PCA软件定时器功能实现LED灯1s闪烁一次 189
一、IAP15W4K58S4系列单片机CCP/PWM/PCA模块简介 189
二、16位软件定时器模式 193
三、程序 194
进阶三 用PCA模块的捕捉(捕获)功能测量脉冲宽度 196
一、PCA模块的捕捉工作模式 196
二、高速输出模式 198
三、程序 199
进阶四 用PCA模块的PWM功能完成LED灯亮度调节 201
一、PCA模块的脉宽调节模式 202
二、PWM应用于D/A输出 204
三、PCA模块的应用总结 204
四、程序 208
进阶五 用片内A/D模块实现一个简易的电压表 210
一、A/D转换器介绍 210
二、ADC模块的使用编程要点 214
三、程序 214
进阶六 用SPI通信模块完成两台单片机间的通信 217
一、IAP15W4K58S4单片机的SPI接口 218
二、SPI相关的特殊功能寄存器 218
三、SPI接口的编程要点 220
四、电路 220
五、程序 220
项目七 设计制作一个多功能智能控制器 223
进阶一 用DS18B20测量教室内的温度 224
一、单总线介绍 224
二、DS18B20简介 226
三、电路 228
四、程序 228
进阶二 设计一个日历时钟 235
一、I2C总线的基础知识 235
二、PCF8563芯片硬件介绍 237
三、电路 239
四、程序 239
进阶三 自动窗帘 249
一、步进电动机简介 249
二、ULN2003驱动芯片介绍 251
三、光敏电阻 252
四、电动机驱动模块L298N电路 254
五、电路 255
六、程序 256
进阶四 用8×8点阵轮流显示数字0~9 258
一、8×8点阵模块 258
二、电路 259
三、程序 259
进阶五 单片机解码红外线遥控 261
一、红外线遥控编码基础知识 262
二、电路 264
三、程序 265
项目八 使用IAP15W4K58S4控制的小型四轴飞行器设计 270
进阶一 使用RTX51进行单片机程序的开发 271
一、RTX51 Tiny操作系统简介 271
二、单任务、多任务和基于RTX51 Tiny程序的比较 272
三、使用操作系统编写一个流水灯程序 275
四、RTX51操作系统中任务的调度和参数的传递方法 277
五、在RTX51下编写遥控器摇杆程序 281
进阶二 使用无线模块NRF24L01收发数据 285
一、NRF24L01收发模块介绍 285
二、使用NRF24L01设计小型四通道遥控器 292
三、使用NRF24L01设计小型四通道遥控器示例程序 293
进阶三 小型四轴飞行器中常见传感器用法与编程 304
一、四轴飞行器的传感器 306
二、六轴传感器MPU-6050 306
三、六轴传感器MPU-6050程序示例 308
进阶四 小型电动机PID控制方法与编程 316
一、无刷直流电动机 317
二、直流电动机的调速 318
三、PID控制 319
四、飞行器控制程序示例 319
附录 327
附录A C51库函数 327
A.1 寄存器头文件 327
A.2 字符函数 327
A.3 一般I/O函数 328
A.4 标准函数 329
A.5 数学函数 330
A.6 内部函数 331
A.7 字符串函数 331
A.8 绝对地址访问函数 333
附录B Keil C菜单项 334
附录C 单片机中数据的表示与运算 336
C.1 二进制与十六进制数 337
C.2 BCD码、ASCII码与汉字编码 339
C.3 二进制数的加法和减法运算 341
C.4 二进制数的逻辑运算 341
C.5 带符号数的表示法 342
思考与练习 344
参考文献 345

序言
21世纪全球全面进入了计算机智能控制/计算时代,而其中的一个重要方向就是以单片机为代表的嵌入式计算机控制/计算。由于最适合中国工程师/学生入门的8051单片机有30多年的应用历史,绝大部分工科院校均有此必修课,有几十万名对该单片机十分熟悉的工程师可以相互交流开发/学习心得,有大量的经典程序和电路可以直接套用,从而大幅降低了开发风险,极大地提高了开发效率,这也是STC宏晶科技/南通国芯微电子有限公司基于8051系列单片机产品的巨大优势。
Intel 8051技术诞生于20世纪70年代,不可避免地面临着落伍的危险,如果不对其进行大规模创新,我国的单片机教学与应用就会陷入被动局面。为此,STC宏晶科技对8051单片机进行了全面的技术升级与创新,经历了STC89/90、STC10/11、STC12、STC15系列,累计上百种产品:全部采用Flash技术(可反复编程10万次以上)和ISP/IAP(在系统可编程/在应用可编程)技术;针对抗干扰进行了专门设计,超强抗干扰;进行了特别加密设计,如STC15系列现无法解密;对传统8051进行了全面提速,指令速度最快提高了24倍;大幅提高了集成度,如集成了A/D、CCP/PCA/PWM (PWM还可当D/A使用)、高速同步串行通信端口SPI、高速异步串行通信端口UART、定时器、看门狗、内部高精准时钟(±1%温飘,–40~ +85℃之间,可彻底省掉外部昂贵的晶振)、内部高可靠复位电路(可彻底省掉外部复位电路)、大容量SRAM、大容量EEPROM、大容量Flash程序存储器等。针对大学教学,现STC15系列一个单芯片就是一个仿真器,定时器改造为支持16位自动重载(学生只需学一种模式),串行口通信波特率计算改造为[系统时钟/4/(65536–重装数)],极大地简化了教学,针对实时操作系统RTOS推出了不可屏蔽的16位自动重载定时器,并且在最新的STC-ISP烧录软件中提供了大量的贴心工具,如范例程序、定时器计算器、软件延时计算器、波特率计算器、头文件、指令表、Keil仿真设置等。封装也从传统的PDIP40发展到DIP8/DIP16/DIP20/ SKDIP28,SOP8/SOP16/SOP20/SOP28,TSSOP20/TSSOP28,DFN8/QFN28/QFN32/QFN48/ QFN64,LQFP32/LQFP48/LQFP64S/LQFP64L,每个芯片的I/O口从6个到62个不等,价格从0.89元到5.9元不等,极大地方便了客户选型和设计。
2014年4月,STC宏晶科技重磅推出了STC15W4K32S4系列单片机,宽电压工作范围,不需任何转换芯片,STC15W4K32S4系列单片机可直接通过电脑USB接口进行ISP下载编程,集成了更多的SRAM(4K 字节)、定时器7个(5个普通定时器+CCP定时器2)、串口(4个),集成了更多的高功能部件(如比较器、带死区控制的6路15位专用PWM等);开发了功能强大的STC-ISP在线编程软件,包含了项目发布、脱机下载、RS-485下载、程序加密后传输下载等功能,并已申请专利。IAP15W4K58S4一个芯片就是一个仿真器(OCD,ICE),人民币5.6元,是全球第一个实现一个芯片就可以仿真的,再也不需要J-Link/D-Link了。
在中国民间草根企业掌握了Intel 8051单片机技术,以“初生牛犊不怕虎”的精神,击溃了欧美竞争对手之后,站在8051单片机的前沿,也正在向32位前进的途中。当然,这有您,有他,有大家的关心、鼓励与支持!
STC感恩社会,回馈社会,全力支持我国的单片机/嵌入式系统教育事业,STC大学推广计划正如火如荼地进行中,免费向一本、二本大学赠送可仿真的STC15系列实验箱〈仿真芯片IAP15W4K58S4〉,共建STC高性能单片机联合实验室,本教材为STC大学推广计划的合作教材,也是STC杯单片机系统设计大赛的推荐教材。
感谢Intel公司发明了经久不衰的8051体系结构,感谢陈静老师的新书,保证了中国30年来的单片机教学与世界同步,采用本书作为教材的院校将优先免费获得我们可仿真的STC15系列实验箱的支持〈主控芯片IAP15W4K58S4〉。
明知山有虎,偏向虎山行!

STC MCU Limited:Andy.姚
www.STCMCU.com www.GXWMCU.com

文摘
插图:











购买书籍

当当网购书 京东购书 卓越购书

PDF电子书下载地址

相关书籍

搜索更多