内容简介:
本书以STC15F2K60S2增强型的单周期单片机为核心器件,通过100个应用实例,以单片机的功能模块为起点,以每个模块的硬件、软件设计为主线,通过大量实例的介绍来达到理论联系实际的目的,让读者能迅速开发出实际的应用系统。
本书讲解深入浅出,实例内容翔实,绝大多数模、实例都有Proteus仿真验证。
本书适合各类高校自动控制、电气工程、自动化、机械电子专业的学生使用,同时也可供从事单片机系统开发的广大技术人员参考阅读。
主要内容
全书分为3 章。
第1 章基础应用实例,共有40 个应用实例,是以STC15F2K60S2增强型51单片机的基础应用为主,这些基础应用主要包括:I/O 口的输出、按键输入、数码管驱动、8X8 点阵LED、三基色LED、定时器、中断、串行口、STC15F 单片机集成的A/D转换器、PCA 模块捕获、PCA 模块的脉宽调制、EEPROM、SPI 接口。
第2 章外围扩展实例,共有35 个应用实例,是以扩展一些实际应用中常用的器件和模块为核心,介绍了这些器件和模块的功能特点及实现如何用51 单片机来驱动这些器件的驱动程序的设计为主。这些外围扩展器件和模块主要包括:串/并转换器件74HC595的应用、并行驱动器件74HC573 的应用、字符LCD 模块、图形点阵LCD 模块、不同尺寸和接口的真彩屏TFT LCD 模块、SPI 和I2C 接口的串行存储器、并行和串行A/D 转换器、并行和串行D/A 转换器、实时时钟RTC 器件、直流电动机和步进电动机驱动器件、温度、湿度、超声波传感器、触摸屏器件、红外遥控接收协议、无线数传模块、RFID 的韦根协议、PS/2 键盘接口协议、SD卡。
第3 章综合应用实例,共有25 个应用实例,这25 个综合应用实例既含有多个基本资源的综合应用,又包括有外围扩展方面的器件和模块的高级应用、算法和复杂的综合应用实例,让读者能够体会到一个项目开发的全过程是如何实现的。其中,基于PCF8563的TFT LCD 模块显示的指针式时钟日历实例、基于PCB 铜箔的触摸式按键识别应用实例、基于FAT32 文件系统的WAV 文件播放器设计实例、基于OV7670 摄像头模块的视频图像显示应用实例、远程无线控制16X16 全彩点阵LED 屏设计应用实例、基于TEA5767 模块的全数字式收音机设计应用实例充分发掘出了8 位增强型51 单片机的潜能,让在ARM 上实现的内容在STC15F2K60S2 单周期51 单片机上也能够很好地实现。
前言
第1 章 51 单片机的基础应用实例··························································
1.1 闪烁灯·····························································································
1.2 跑马灯·····························································································
1.3 左右交替循环灯··············································································
1.4 花样流水灯······················································································
1.5 单数码管显示十六进制··································································
1.6 独立按键二进制加计数··································································
1.7 独立按键十进制数的加减计数·····················································
1.8 一键多功能应用············································································
1.9 4×4 矩阵键盘识别数码管显示······················································
1.10 4 位可预置可逆双向计数····························································
1.11 中断方式的按键加1 计数···························································
1.12 中断方式的加减计数··································································
1.13 查询方式实现的定时器T0 产生1s 闪烁灯································
1.14 中断方式实现的定时器T1 产生0.5s 和1s 同时闪烁灯············
1.15 数码管显示的00~99 自动秒计数·············································
1.16 定时器T0 实现的具有暂停功能的秒表·····································
1.17 定时器T1 实现的简易数字钟····················································
1.18 定时器T0 产生软PWM 信号·····················································
1.19 简易数字频率计··········································································
1.20 定时器T0 实现的拉幕式数字显示效果·····································
1.21 “嘀、嘀”报警声······································································
1.22 模拟救护车的警铃声··································································
1.23 “叮咚”门铃··············································································
1.24 串/并转换驱动数码管显示0~9·················································
1.25 向PC 发送字符串·······································································
1.26 接收PC 数字在数码管显示························································
1.27 定时器T2 实现的0.5s 定时························································
1.28 定时器T2 输出红外遥控器38.4kHz 时钟频率··························
1.29 PCA 模块1 实现的PWM 信号发生器·······································
1.30 PCA 模块0 产生0.2s 的定时······················································
1.31 PCA 模块2 捕获功能实现脉冲宽度测量∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
1.32 内置EEPROM 的读/写∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
1.33 内置A/D 转换器电压测量∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
1.34 同步SPI 接口实现的串/并转换∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
1.35 中断嵌套∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
1.36 三基色LED 发光二极管实现的彩色显示∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
1.37 8×8 点阵LED 显示数字及字母∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
1.38 按键控制的8×8 点阵LED 显示图形∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
1.39 一个IO 引脚实现的多个按键识别应用∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙
1.40 基于PWM 的0~9 数字语音播放应用·······························································
第2 章 外围器件扩展实例···························································································
2.1 基于74HC595 构成的8 位共阴LED 数码管显示··············································
2.2 基于MAX7221 构成的8 位共阴LED 数码管显示············································
2.3 74HC595 构成的16×16 点阵LED 汉字显示······················································
2.4 74HC573 构成的16×16 点阵LED 实现的汉字流水显示···································
2.5 字符LCD 液晶显示模块应用··············································································
2.6 128×64 图形点阵液晶模块实现的文本显示························································
2.7 128×64 图形点阵LCD 模块实现图片显示··························································
2.8 I2C 串行接口的AT24C02 存储器读/写·······························································
2.9 SPI 串行接口的AT93C46 存储器读/写·······························································
2.10 DS18B20 数字温度测量·····················································································
2.11 ADC0809 构成的0~5V 直流电压测量····························································
2.12 串行接口的ADC0832 构成的数字电压表························································
2.13 串行接口的单通道TLC549 构成的温度测量···················································
2.14 8 位并行D/A 转换器DAC0832 构成 的单极性三角波产生····························
2.15 DAC0832 产生双极性正弦波信号·····································································
2.16 串行D/A 转换器TLC5615 构成的多波形发生器·············································
2.17 TLC5620 构成的相位差为120°的三路正弦发生器··········································
2.18 DS12C887 构成的高精度数字钟·······································································
2.19 I2C 串行接口的DS1307 构成的RTC································································
2.20 可调速的直流电动机正、反转应用··································································
2.21 可调速的步进电动机正、反转应用··································································
2.22 基于DHT11 传感器的温/湿度环境测量应用····················································
2.23 240×128 图形点阵LCD 模块显示图文应用······················································
2.24 红外遥控接收解码应用······················································································
2.25 2MB 串行接口Flash 存储器AT45DB161D 读/写应用·····································
2.26 DS1302 串行接口的RTC 应用··········································································
2.27 基于NRF24L01 模块的点对点无线数据通信应用···········································
2.28 SRF05 超声波模块的测距应用··········································································
2.29 2.1 英寸的TFT LCD 真彩液晶显示屏驱动应用···············································
2.30 240×320 像素的2.8"真彩TFT LCD 液晶显示屏应用······································
2.31 基于XPT2046 构成的手写触摸屏应用·····························································
2.32 125kHz 的RFID 卡片的ID 号识别应用····························································
2.33 PS/2 接口的PC 键盘识别应用···········································································
2.34 240×320 像素的2.2" TFT LCD 串口显示屏驱动应用······································
2.35 SD 卡的读/写应用······························································································
第3 章 综合应用·······································