描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787302402329
编辑推荐
导语_点评_推荐词
内容简介
本书主要介绍了51单片机系统中常用模块的具体运用,这些模块包括:内部模块、常用算法和函数模块、扩展外围模块、I/O引脚模块、用户输入通道模块、LED显示模块、液晶显示模块、 语音和打印输入模块、驱动和执行机构、A/D模块、D/A模块、时钟传感器模块、温度传感器模块、常用其他传感器模块、有线通信模块、无线通信模块、小容量存储模块,以及51单片机的大容量存储模块。
本书适合具有初步单片机基础的单片机工程师使用,也可供高等院校电子类专业的学生和单片机爱好者参考阅读。
本书适合具有初步单片机基础的单片机工程师使用,也可供高等院校电子类专业的学生和单片机爱好者参考阅读。
目 录
第1章 51单片机的内部模块 11.1 51单片机及其应用系统概述 11.1.1 51单片机应用系统的构成和设计流程 21.1.2 “小”51单片机应用系统 41.2 51单片机内部模块的基础应用 51.2.1 内部模块基础 51.2.2 并行I/O模块 61.2.3 定时计数器模块 71.2.4 中断系统和外部中断模块 131.2.5 串行通信模块 181.3 51单片机内部模块的高级应用 241.3.1 使用定时计数器扩展外部中断 241.3.2 使用I/O端口模拟串行通信端口 251.3.3 串行通信模块的波特率自适应 291.3.4 使用软件扩展多级中断应用 321.3.5 定时计数器的可控PWM输出 36第2章 51单片机的常用算法和函数模块 392.1 51单片机的库函数基础 392.1.1 函数库和头文件分类 392.1.2 自定义库 402.1.3 库函数的使用 412.2 51单片机常用函数模块 412.2.1 内部函数_crol_() 412.2.2 内部函数_nop_() 422.2.3 输入/输出函数putchar() 442.2.4 输入/输出函数printf() 452.2.5 随机数生成函数rand()和srand() 482.3 51单片机的常用算法模块 522.3.1 统计字节中1的个数 522.3.2 软件延时/定时 532.3.3 排序算法 53第3章 扩展51单片机外围模块的方法 553.1 地址—数据总线扩展 553.2 串行通信模块扩展 583.3 I2C总线扩展 583.3.1 I2C总线基础 583.3.2 I2C总线接口扩展的驱动库函数 613.4 SPI总线扩展 673.4.1 SPI总线基础 673.4.2 SPI总线接口扩展的驱动库函数 693.5 1-wire总线扩展 703.5.1 1-wire总线扩展原理 703.5.2 1-wire总线扩展的驱动库函数 72第4章 51单片机的I/O引脚模块 754.1 译码器模块 754.1.1 译码器模块的应用场合 754.1.2 译码器模块的应用基础 764.1.3 译码器模块的应用实例——简易流水灯 784.2 锁存器模块 794.2.1 锁存器模块的应用场合 804.2.2 锁存器模块的应用基础 804.2.3 锁存器模块的应用实例——秒表 824.3 三态门模块 844.3.1 三态门模块的应用场合 844.3.2 三态门模块的应用基础 844.3.3 三态门模块的应用实例——地址输入 864.4 串行输入并行输出模块 884.4.1 串行输入并行输出模块的应用场合 884.4.2 串行输入并行输出模块的应用基础 884.4.3 串行输入并行输出模块的应用实例——秒计时 904.5 并行输入串行输出模块 934.5.1 并行输入串行输出模块的应用场合 934.5.2 并行输入串行输出模块的应用基础 934.5.3 并行输入串行输出模块的应用实例——读取拨码开关状态 954.6 可编程I/O扩展芯片Intel8255 964.6.1 可编程I/O扩展芯片Intel8255的应用场合 964.6.2 可编程I/O扩展芯片Intel8255的应用基础 974.6.3 可编程I/O扩展芯片Intel8255的应用实例——扩展输入/输出 1004.7 I/O引脚模块的应用实例——电子抽奖系统 1024.7.1 电子抽奖系统的需求分析 1034.7.2 电子抽奖系统的电路设计 1034.7.3 电子抽奖系统的应用代码 105第5章 51单片机的用户输入通道模块 1115.1 独立按键 1115.1.1 独立按键的应用场合 1115.1.2 独立按键的应用基础 1125.1.3 独立按键的应用实例——加减计数 1135.2 拨码开关 1165.2.1 拨码开关的应用场合 1165.2.2 拨码开关的应用基础 1175.2.3 拨码开关的应用实例——开关状态显示 1185.3 行列扫描键盘 1205.3.1 行列扫描键盘的应用场合 1215.3.2 行列扫描键盘的应用基础 1215.3.3 行列扫描键盘的应用实例 1235.4 PS/2键盘 1265.4.1 PS/2键盘的应用场合 1265.4.2 PS/2键盘的应用基础 1265.4.3 PS/2键盘的应用实例——扫描码输出 1305.5 用户输入模块的应用实例——带计时功能的计算器 1375.5.1 计算器的需求分析 1385.5.2 计算器的电路设计 1395.5.3 计算器的应用代码 140第6章 51单片机的LED显示模块 1516.1 发光二极管 1516.1.1 发光二极管的应用场合 1516.1.2 发光二极管的应用基础 1526.1.3 发光二极管的应用实例——流水灯 1536.2 单位数码管 1556.2.1 单位数码管的应用场合 1556.2.2 单位数码管的应用基础 1556.2.3 单位数码管的应用实例——“流水数字”显示 1596.3 多位数码管 1616.3.1 多位数码管的应用场合 1616.3.2 多位数码管的应用基础 1616.3.3 多位数码管的应用实例——移动数字效果显示 1656.4 数码管驱动芯片MAX7219 1676.4.1 数码管驱动芯片MAX7219的应用场合 1676.4.2 数码管驱动芯片MAX7219的应用基础 1686.4.3 数码管驱动芯片MAX7219的应用实例——当前日期显示 1756.5 数码管和键盘驱动芯片CH452 1766.5.1 数码管和键盘驱动芯片CH452的应用场合 1766.5.2 数码管和键盘驱动芯片CH452的应用基础 1766.5.3 数码管和键盘驱动芯片CH452的应用实例——串口数据显示和按键状态返回 1906.6 LED显示模块的应用实例——简易频率计 1936.6.1 简易频率计的需求分析 1936.6.2 简易频率计的电路设计 1956.6.3 简易频率计的应用代码 196第7章 51单片机的液晶显示模块 2017.1 数字字符液晶1602 2017.1.1 数字字符液晶1602的应用场合 2017.1.2 数字字符液晶1602的应用基础 2027.1.3 数字字符液晶1602的应用实例——字符串显示 2087.2 汉字图形液晶12864 2087.2.1 汉字图形液晶12864的应用场合 2087.2.2 汉字图形液晶12864的应用基础 2097.2.3 汉字图形液晶12864的应用实例——混合显示 2157.3 点阵显示模块 2217.3.1 点阵显示模块的应用场合 2217.3.2 点阵显示模块的应用基础 2217.3.3 点阵显示模块的应用实例——“流水字符”显示 2247.4 带字库的汉字图形液晶12864 2277.4.1 带字库的汉字图形液晶12864的应用场合 2277.4.2 带字库的汉字图形液晶12864的应用基础 2287.4.3 带字库的汉字图形液晶12864的应用实例——显示串口接收数据和图形 2387.5 液晶显示模块的应用实例——俄罗斯方块 2427.5.1 俄罗斯方块的需求分析 2427.5.2 俄罗斯方块的电路设计 2447.5.3 俄罗斯方块的应用代码 245第8章 51单片机的语音和打印输出模块 2598.1 蜂鸣器 2598.1.1 蜂鸣器的应用场合 2598.1.2 蜂鸣器的应用基础 2608.1.3 蜂鸣器的应用实例——按键提示音 2628.2 录放音芯片 2648.2.1 录放音芯片的应用场合 2648.2.2 录放音芯片的应用基础 2648.2.3 录放音芯片的应用实例——录放操作 2688.3 文本语言芯片 2718.3.1 文本语音芯片的应用场合 2718.3.2 文本语音芯片的应用基础 2718.3.3 文本语音芯片的应用实例——来电提示音 2798.4 打印机模块 2818.4.1 打印机模块的应用场合 2818.4.2 打印机模块的应用基础 2818.4.3 打印机模块的应用实例——温度打印输出 2858.5 语音和打印输出的应用实例——简易电子琴 2888.5.1 简易电子琴的需求分析 2888.5.2 简易电子琴的电路设计 2908.5.3 简易电子琴的应用代码 291第9章 51单片机的驱动和执行机构 2979.1 三极管 2979.1.1 三极管的应用场合 2979.1.2 三极管的应用基础 2989.1.3 三极管的应用实例——大功率灯泡闪烁 2999.2 达林顿管 3009.2.1 达林顿管的应用场合 3009.2.2 达林顿管的应用基础 3009.2.3 达林顿管的应用实例——发光二极管流水点亮 3029.3 光电隔离器 3029.3.1 光电隔离器的应用场合 3039.3.2 光电隔离器的应用基础 3049.3.3 光电隔离器的应用实例 3069.4 直流电动机 3069.4.1 直流电动机的应用场合 3069.4.2 直流电动机的应用基础 3069.4.3 直流电动机的应用实例——串口控制直流电动机转动 3099.5 步进电动机 3129.5.1 步进电动机的应用场合 3129.5.2 步进电动机的应用基础 3129.5.3 步进电动机的应用实例——串口控制步进电动机转动 3179.6 步进电动机驱动模块 3219.6.1 步进电动机驱动模块的应用场合 3219.6.2 步进电动机驱动模块的应用基础 3219.6.3 步进电动机驱动模块的应用实例——按键控制步进电动机转动 3239.7 继电器 3269.7.1 继电器的应用场合 3279.7.2 继电器的应用基础 3279.7.3 继电器的应用实例——继电器控制 3299.8 驱动和执行机构的应用实例——天车控制系统 3329.8.1 天车控制系统的需求分析 3329.8.2 天车控制系统的电路设计 3339.8.3 天车控制系统的应用代码 335第10章 51单片机的A/D模块 33910.1 A/D模块基础 33910.1.1 A/D变换的过程 34010.1.2 A/D变换的应用电路构成 34210.1.3 A/D变换的保持电路 34310.1.4 A/D芯片的分类 34310.1.5 A/D芯片的选择 34310.1.6 A/D芯片对电源的需求 34510.2 8位并行8通道A/D芯片 34510.2.1 ADC0809的应用基础 34510.2.2 ADC0809的应用实例——串口输出ADC0809多通道模拟信号采集 35310.3 12位并行8通道A/D芯片 35610.3.1 MAX197的应用基础 35610.3.2 MAX197的应用实例——串口输出MAX197多通道模拟信号采集 36010.4 12位串行多通道A/D芯片 36310.4.1 TLC2543的应用基础 36410.4.2 TLC2543的应用实例——串口输出TLC2543多通道模拟信号采集 36910.5 I2C接口高精度A/D芯片 37110.5.1 ADS1100的应用基础 37110.5.2 ADS1100的应用实例 38010.6 16位串行接口多通道A/D芯片 38010.6.1 AD977A的应用基础 38010.6.2 AD977A的应用实例 38810.7 A/D模块的应用实例——太阳能电池监控模块 38810.7.1 太阳能电池监控模块的需求分析 38810.7.2 太阳能电池监控模块的电路设计 38910.7.3 太阳能电池监控模块的应用代码 393第11章 51单片机的D/A模块 40711.1 D/A模块基础 40711.1.1 D/A转换的过程 40711.1.2 D/A芯片的分类 40911.1.3 D/A芯片的选择 40911.1.4 D/A芯片对电源的需求 41011.2 8位并行D/A芯片 41111.2.1 DAC0832的应用基础 41111.2.2 DAC0832的应用实例——模拟波形输出 41611.3 8位串行D/A芯片 42011.3.1 MAX517的应用基础 42011.3.2 MAX517的应用实例——输出正弦波 42211.4 10位串行D/A芯片 42411.4.1 TLC5615的应用基础 42411.4.2 TLC5615的应用实例——输出锯齿波 42711.5 12位并行D/A芯片 42811.5.1 MAX527的应用基础 42811.5.2 MAX527的应用实例 43311.6 16位串行D/A芯片 43311.6.1 MAX541的应用基础 43311.6.2 MAX541的应用实例 43611.7 串行A/D和D/A芯片 43611.7.1 PCF8591的应用基础 43711.7.2 PCF8591的应用实例——AD模拟量采集和DA模拟量输出 44011.8 信号发生器芯片MAX038 44111.8.1 MAX038的应用基础 44111.8.2 MAX038的应用实例 44411.9 D/A模块的应用实例——简易波形发生器 44411.9.1 简易波形发生器的需求分析 44411.9.2 简易波形发生器的电路设计 445
11.9.3 简易波形发生器的应用代码 446第12章 51单片机的时钟传感器模块 45112.1 51单片机应用系统中的时钟信息获取 45112.2 内部定时计数器 45212.3 并行总线接口时钟模块 45312.3.1 DS12C887的应用基础 45312.3.2 DS12C887的应用实例——路灯自动开关控制 46112.4 I2C总线接口时钟模块 46312.4.1 PCF8563的应用基础 46412.4.2 PCF8563的应用实例 47212.5 SPI总线接口时钟模块 47412.5.1 DS1302的应用基础 47412.5.2 DS1302的应用实例——时钟信息读取 47912.6 时钟传感器模块的应用实例——简单数字时钟 48112.6.1 简单数字时钟的需求分析 48112.6.2 简单数字时钟的电路设计 48212.6.3 简单数字时钟的应用代码 483第13章 51单片机的温度传感器模块 48513.1 51单片机应用系统中的温度信息获取 48513.2 1-wire总线接口温度模块 48613.2.1 DS18B20的应用基础 48713.2.2 DS18B20的应用实例——DS18B20温度数据采集 49213.3 I2C总线接口温度模块 49413.3.1 DS1621的应用基础 49413.3.2 DS1621的应用实例——DS1621温度数据采集 49813.4 SPI总线接口温度模块 50013.4.1 TC77的应用基础 50013.4.2 TC77的应用实例 50413.5 温度传感器模块的应用实例——多点温度采集系统 50413.5.1 多点温度采集系统的需求分析 50513.5.2 多点温度采集系统的电路设计 50613.5.3 多点温度采集系统的应用代码 507第14章 51单片机的常用其他传感器模块 51514.1 温度传感器 51514.1.1 SHT75的应用基础 51514.1.2 SHT75的应用实例——SHT75湿度和温度数据采集 52314.2 压力传感器 52514.2.1 MPX4115的应用基础 52514.2.2 MPX4115的应用实例 52714.3 定位传感器 52714.3.1 数字罗盘基础 52714.3.2 GPS模块基础 52814.3.3 NMEA-1083规范 52814.4 数字罗盘传感器 53214.4.1 HMR3000的应用基础 53214.4.2 HMR3000的应用实例——航向、俯仰、横滚数据采集 53514.5 GPS传感器 53714.5.1 GARMIN 25LP的应用基础 53714.5.2 GARMIN 25LP的应用实例——GPS地理信息采集 54114.6 倾角传感器 54514.6.1 TS1120的应用基础 54614.6.2 TS1120的应用实例 54814.7 超声距离传感器 54814.7.1 HC-SR04的应用基础 54914.7.2 HC-SR04的应用实例——距离测量 55114.8 传感器模块的应用实例——手持倾角仪 55414.8.1 手持倾角仪的需求分析 55414.8.2 手持倾角仪的电路设计 55414.8.3 手持倾角仪的应用代码 556第15章 51单片机的有线通信模块 56715.1 51单片机的有线通信模块设计概述 56715.2 RS-232协议芯片 56815.2.1 MAX232的应用基础 56815.2.2 MAX232的应用实例 57115.3 RS-485协议芯片 57215.3.1 MAX485的应用基础 57215.3.2 MAX485的应用实例——51单片机和PC进行远程数据交换 57415.4 RS-422协议芯片 57615.4.1 MAX491的应用基础 57615.4.2 MAX491的应用实例 57915.5 高速光电隔离芯片 57915.5.1 6N137的应用基础 58015.5.2 6N137的应用实例 58215.6 CAN总线芯片 58315.6.1 SJA1000的应用基础 58315.6.2 SJA1000的应用实例——串口CAN总线桥 58815.7 电力线总线芯片 59215.7.1 SSC P300的应用基础 59315.7.2 SSC P300的应用实例——SSC P300数据发送和接收 59715.8 USB通信桥芯片 60015.8.1 CP2102的应用基础 60015.8.2 CP2102的应用实例 60515.9 51单片机应用系统的通信模型和通信协议设计 60515.9.1 51单片机应用系统的通信模型 60615.9.2 51单片机应用系统的通信协议设计 60615.10 有线通信模块的应用实例——远程仓库温度监测系统 60715.10.1 远程仓库湿度监测系统的需求分析 60715.10.2 远程仓库湿度监测系统的电路设计 60815.10.3 远程仓库湿度监测系统的应用代码 609第16章 51单片机的无线通信模块 61316.1 51单片机的无线通信模块设计概述 61316.2 红外芯片 61316.2.1 红外芯片的应用基础 61416.2.2 红外芯片的应用实例——红外按键信息解析 62116.3 433MHz无线通信模块 62316.3.1 无线通信模块的应用基础 62316.3.2 无线通信模块的应用实例——PTR8000串口通信桥 633第17章 51单片机的小容量存储模块 63717.1 外部单口RAM芯片 63717.1.1 6264的应用基础 63817.1.2 6264的应用实例——外部大容量RAM的使用 64117.2 外部双口RAM芯片 64317.2.1 IDT7132的应用基础 64317.2.2 IDT7132的应用实例——使用双口RAM进行双机通信 64717.3 外部ROM芯片 64917.3.1 2716的应用基础 64917.3.2 2716的应用实例 65117.4 FIFO芯片 65117.4.1 CY7C419的应用基础 65117.4.2 CY7C419的应用实例——使用FIFO存放临时数据 65417.5 I2C总线接口的E2PROM芯片 65717.5.1 AT24系列芯片的应用基础 65817.5.2 AT24系列芯片的应用实例——使用AT24C04存放用户数据 66517.6 SPI总线接口的E2PROM芯片 66817.6.1 93系列芯片的应用基础 66817.6.2 93系列芯片的应用实例——使用93C46存放用户数据 674 17.7 接触式加密智能卡 67717.7.1 接触式智能卡基础 67717.7.2 SLE4442接触式加密卡的应用基础 67917.7.3 SLE4442的应用实例——SLE4442卡的读写 69017.8 非接触式智能卡 69317.8.1 非接触式智能卡基础 69317.8.2 非接触式智能卡读写模块的应用基础 69717.8.3 非接触式智能卡读写模块的应用实例 709第18章 51单片机的大容量存储模块 71118.1 Flash芯片 71118.1.1 Flash芯片的应用基础 71118.1.2 Flash的应用实例——K9F5608芯片的应用 71718.2 U盘读写芯片 71718.2.1 CH376的应用基础 71718.2.2 CH376的应用实例——U盘读写 74118.3 SD卡 74518.3.1 SD卡的应用基础 74518.3.2 SD卡的应用实例 756
11.9.3 简易波形发生器的应用代码 446第12章 51单片机的时钟传感器模块 45112.1 51单片机应用系统中的时钟信息获取 45112.2 内部定时计数器 45212.3 并行总线接口时钟模块 45312.3.1 DS12C887的应用基础 45312.3.2 DS12C887的应用实例——路灯自动开关控制 46112.4 I2C总线接口时钟模块 46312.4.1 PCF8563的应用基础 46412.4.2 PCF8563的应用实例 47212.5 SPI总线接口时钟模块 47412.5.1 DS1302的应用基础 47412.5.2 DS1302的应用实例——时钟信息读取 47912.6 时钟传感器模块的应用实例——简单数字时钟 48112.6.1 简单数字时钟的需求分析 48112.6.2 简单数字时钟的电路设计 48212.6.3 简单数字时钟的应用代码 483第13章 51单片机的温度传感器模块 48513.1 51单片机应用系统中的温度信息获取 48513.2 1-wire总线接口温度模块 48613.2.1 DS18B20的应用基础 48713.2.2 DS18B20的应用实例——DS18B20温度数据采集 49213.3 I2C总线接口温度模块 49413.3.1 DS1621的应用基础 49413.3.2 DS1621的应用实例——DS1621温度数据采集 49813.4 SPI总线接口温度模块 50013.4.1 TC77的应用基础 50013.4.2 TC77的应用实例 50413.5 温度传感器模块的应用实例——多点温度采集系统 50413.5.1 多点温度采集系统的需求分析 50513.5.2 多点温度采集系统的电路设计 50613.5.3 多点温度采集系统的应用代码 507第14章 51单片机的常用其他传感器模块 51514.1 温度传感器 51514.1.1 SHT75的应用基础 51514.1.2 SHT75的应用实例——SHT75湿度和温度数据采集 52314.2 压力传感器 52514.2.1 MPX4115的应用基础 52514.2.2 MPX4115的应用实例 52714.3 定位传感器 52714.3.1 数字罗盘基础 52714.3.2 GPS模块基础 52814.3.3 NMEA-1083规范 52814.4 数字罗盘传感器 53214.4.1 HMR3000的应用基础 53214.4.2 HMR3000的应用实例——航向、俯仰、横滚数据采集 53514.5 GPS传感器 53714.5.1 GARMIN 25LP的应用基础 53714.5.2 GARMIN 25LP的应用实例——GPS地理信息采集 54114.6 倾角传感器 54514.6.1 TS1120的应用基础 54614.6.2 TS1120的应用实例 54814.7 超声距离传感器 54814.7.1 HC-SR04的应用基础 54914.7.2 HC-SR04的应用实例——距离测量 55114.8 传感器模块的应用实例——手持倾角仪 55414.8.1 手持倾角仪的需求分析 55414.8.2 手持倾角仪的电路设计 55414.8.3 手持倾角仪的应用代码 556第15章 51单片机的有线通信模块 56715.1 51单片机的有线通信模块设计概述 56715.2 RS-232协议芯片 56815.2.1 MAX232的应用基础 56815.2.2 MAX232的应用实例 57115.3 RS-485协议芯片 57215.3.1 MAX485的应用基础 57215.3.2 MAX485的应用实例——51单片机和PC进行远程数据交换 57415.4 RS-422协议芯片 57615.4.1 MAX491的应用基础 57615.4.2 MAX491的应用实例 57915.5 高速光电隔离芯片 57915.5.1 6N137的应用基础 58015.5.2 6N137的应用实例 58215.6 CAN总线芯片 58315.6.1 SJA1000的应用基础 58315.6.2 SJA1000的应用实例——串口CAN总线桥 58815.7 电力线总线芯片 59215.7.1 SSC P300的应用基础 59315.7.2 SSC P300的应用实例——SSC P300数据发送和接收 59715.8 USB通信桥芯片 60015.8.1 CP2102的应用基础 60015.8.2 CP2102的应用实例 60515.9 51单片机应用系统的通信模型和通信协议设计 60515.9.1 51单片机应用系统的通信模型 60615.9.2 51单片机应用系统的通信协议设计 60615.10 有线通信模块的应用实例——远程仓库温度监测系统 60715.10.1 远程仓库湿度监测系统的需求分析 60715.10.2 远程仓库湿度监测系统的电路设计 60815.10.3 远程仓库湿度监测系统的应用代码 609第16章 51单片机的无线通信模块 61316.1 51单片机的无线通信模块设计概述 61316.2 红外芯片 61316.2.1 红外芯片的应用基础 61416.2.2 红外芯片的应用实例——红外按键信息解析 62116.3 433MHz无线通信模块 62316.3.1 无线通信模块的应用基础 62316.3.2 无线通信模块的应用实例——PTR8000串口通信桥 633第17章 51单片机的小容量存储模块 63717.1 外部单口RAM芯片 63717.1.1 6264的应用基础 63817.1.2 6264的应用实例——外部大容量RAM的使用 64117.2 外部双口RAM芯片 64317.2.1 IDT7132的应用基础 64317.2.2 IDT7132的应用实例——使用双口RAM进行双机通信 64717.3 外部ROM芯片 64917.3.1 2716的应用基础 64917.3.2 2716的应用实例 65117.4 FIFO芯片 65117.4.1 CY7C419的应用基础 65117.4.2 CY7C419的应用实例——使用FIFO存放临时数据 65417.5 I2C总线接口的E2PROM芯片 65717.5.1 AT24系列芯片的应用基础 65817.5.2 AT24系列芯片的应用实例——使用AT24C04存放用户数据 66517.6 SPI总线接口的E2PROM芯片 66817.6.1 93系列芯片的应用基础 66817.6.2 93系列芯片的应用实例——使用93C46存放用户数据 674 17.7 接触式加密智能卡 67717.7.1 接触式智能卡基础 67717.7.2 SLE4442接触式加密卡的应用基础 67917.7.3 SLE4442的应用实例——SLE4442卡的读写 69017.8 非接触式智能卡 69317.8.1 非接触式智能卡基础 69317.8.2 非接触式智能卡读写模块的应用基础 69717.8.3 非接触式智能卡读写模块的应用实例 709第18章 51单片机的大容量存储模块 71118.1 Flash芯片 71118.1.1 Flash芯片的应用基础 71118.1.2 Flash的应用实例——K9F5608芯片的应用 71718.2 U盘读写芯片 71718.2.1 CH376的应用基础 71718.2.2 CH376的应用实例——U盘读写 74118.3 SD卡 74518.3.1 SD卡的应用基础 74518.3.2 SD卡的应用实例 756
前 言
51单片机具有体积小、功能强、价格低的特点,在工业控制、数据采集、智能仪表、机电一体化、家用电器等领域有着广泛的应用,其应用可以大大提高生产、生活的自动化水平。51单片机的应用系统是一个用于实现某种目的、以51单片机为核心的软件和硬件综合体;在应用系统中,除了51单片机之外通常还会涉及一些其他的模块和器件,本书介绍了这些包括51单片机内部模块在内的常用模块和器件的典型应用方法。本书内容简介全书分为18章,以下是各章内容的概述。第1章 51单片机的内部模块本章介绍了51单片机应用系统的构成和设计流程,并且介绍了51单片机的并行I/O、定时计数器、串行通信模块等内部模块的基础和高级使用方法。第2章 51单片机的常用算法和函数模块在51单片机的应用系统中,有很多功能模块是会被反复使用的,如果每个应用系统都单独为这些功能模块编写相应的代码,一方面会大大增加开发的工作量,另一方面从某种意义上来说也降低了系统的可靠性,此时如果将这些功能模块做成库函数,则可以高效便捷地完成相应的设计。本章介绍了C51语言提供的函数和一些常用的用户自定义函数。第3章 扩展51单片机外围模块的方法 本章介绍了在51单片机应用系统中扩展外围模块的方法,包括使用地址—数据总线扩展、使用串行通信模块扩展、使用I2C总线扩展、使用SPI总线扩展和使用1-wire总线扩展。第4章 51单片机的I/O引脚模块在实际使用系统中可能出现51单片机的I/O引脚不够的情况,本章介绍了如何使用译码器、锁存器、三态门等扩展51单片机的I/O引脚的方法。在本章的后提供了一个电子抽奖系统的应用实例。第5章 51单片机的用户输入通道模块在51单片机应用系统中,常常需要用户通过输入对系统进行控制或者给系统提供一些参数,此时需要使用一些器件使得用户完成相应的操作,这些器件被称为51单片机的用户输入通道,包括按键、拨码开关、键盘等。本章详细介绍如何在51单片机的应用系统使用用户输入通道。在本章的后提供了一个带计时功能计算器的应用实例。第6章 51单片机的LED显示模块LED显示模块是51单片机应用系统中常用的两种显示模块之一,包括发光二极管、单位数码管、多位数码管等。本章详细介绍了它们的使用方法。在本章的后提供了一个简易频率计的应用实例。第7章 51单片机的液晶显示模块液晶显示模块是51单片机应用系统中常用的两种显示模块之一,本章介绍了数字字符液晶1602、汉字图形液晶12864、点阵液晶显示模块等的使用方法。在本章的后提供了一个俄罗斯方块游戏的应用实例。第8章 51单片机的语音和打印输出模块51单片机应用系统除了使用显示模块来和用户进行数据交互之外,还可以使用语音和文字信息来提供应用系统需要输出的信息。本章详细介绍了包括蜂鸣器、录放音芯片ISD2560、文本语音芯片SYN6188等的使用方法。在本章的后提供了一个简易电子琴的应用实例。第9章 51单片机的驱动和执行机构在51单片机的应用系统中,常常需要驱动物体进行物理位移或者驱动物体进行开启和闭合操作,完成这些动作的模块被称为51单片机的驱动和执行结构。本章介绍了包括三极管、达林顿管、光电隔离器、继电器等的使用方法。在本章的后提供了一个天车控制系统的应用实例。第10章 51单片机的A/D模块 在51单片机的应用系统中,某些信号是以模拟电压的形式给出的,此时需要使用外扩的A/D(模拟/数字变换)模块将这些连续的模拟电压信号转换为数字信号才能被51单片机所识别。本章介绍了A/D模块的工作原理和常见的A/D模块的使用方法,包括MAX197、TLC2543、ADS1100等。在本章的后提供了一个太阳能电池监控系统的应用实例。第11章 51单片机的D/A模块 在51单片机的应用系统中,常常需要通过单片机控制一些模拟量如模拟电压、模拟电流驱动一些外部设备,此时需要将51单片机内部的数字信息转化为模拟信号,需要使用被称为D/A芯片或者DAC(Digital Analog Converter)的数字—模拟转换模块。本章介绍了D/A模块的工作原理和常见的D/A模块的使用方法,包括DAC0832、TLC5615等,还介绍了信号发生器模块MAX038的使用方法。在本章的后提供了一个简易波形发生器的应用实例。第12章 51单片机的时钟传感器模块时钟传感器是指能给51单片机的应用系统提供当前时间和日期信息的模块,其具有不占用单片机内部资源(需要占用引脚)、软件相对简单、时间精度较高和掉电不会丢失数据的优点。本章介绍了包括DS12C887、PCF8563等在内的时钟传感器的使用方法。在本章的后提供了一个简易数字时钟的应用实例。第13章 51单片机的温度传感器模块在51单片机的应用系统中,可能需要测量当前系统所处环境的温度,此时可以扩展相应温度传感器来获取相应的信息,这些温度传感器通常可以自主地将温度数据转换为对应的数字量,然后通过相应的数据接口发送给51单片机。本章将介绍在51单片机应用系统中获取温度的方法以及包括DS18B20、TC77等在内的温度传感器的使用方法。在本章的后提供了一个多点温度采集系统的应用实例。第14章 51单片机的常用其他传感器模块除了温度和时间之外,51单片机的应用系统中常常还会涉及其他一些物理量的测量,包括温度、压力、当前位置等;在实际应用中同样可以使用对应的传感器来对这些物理量进行测量。本章介绍51单片机的这些传感器的使用方法,包括湿度传感器SHT75、压力传感器MPX4115、数字罗盘传感器HMR3000等。在本章的后提供了一个手持倾角仪的应用实例。第15章 51单片机的有线通信模块51单片机应用系统常常需要和其他系统进行数据交换,如PC、ARM嵌入式应用系统等,此时需要一个数据通道来提供对应的数据流操作,这个数据通道可以按照物理载体的不同分为有线和无线两种。常见的有线数据通道芯片包括RS-232总线芯片、RS-485总线芯片、CAN总线芯片、USB桥接口芯片等,通过对这些芯片的使用可以组成一个有51单片机应用系统参与的有线网络。在本章的后提供了一个远程仓库湿度监测系统的应用实例。第16章 51单片机的无线通信模块当51单片机的应用系统不方便使用电缆等有线物理通道和其他系统进行数据交换时,可以使用无线电波进行通信,这种通道被称为无线数据通道。常见的无线数据通道模块包括红外收发芯片和基于433MHz无线数据通信模块PTR8000,通过对这些芯片和模块的使用可以组成一个有51单片机应用系统参与的无线网络。第17章 51单片机的小容量存储模块本章介绍了在51单片机应用系统中常用的小容量存储模块的使用方法,包括单口和双口RAM、E2PROM、加密IC卡和非接触射频卡等。第18章 51单片机的大容量存储模块本章介绍了在51单片机应用系统中常用的大容量存储模块的使用方法,包括Nand Flash芯片K9F5608、U盘扩展芯片CH376、SD卡。本书特点本书涵盖了51单片机从内部资源到用户输入通道、A/D信号采集、温度/湿度传感芯片、有线/无线通信模块、数字罗盘和GPS模块等常用的外围器件/模块,对于相应的器件或者模块的介绍,都按照原理讲解、应用电路分析、操作步骤分析和应用实例循序渐进的方式,并且在后点评了其使用要点。本书提供了大量的实际应用电路和代码,并且给出了相当多器件/模块的51单片机驱动库函数,读者可以修改这些电路和代码或者直接应用于自己的实际工程项目中。感谢本书由程国钢、文坤、王祥仲、尹辉主持编写,此外,许小荣、陈作聪、张泽、刘荣、张璐、王统、王东、周艳丽、刘波、苏静、贾东永、王松年、祁招娣、王龙、陈可汤、蔡娜等也参与了本书的编写和修改,在此,向他们致以诚挚的谢意!作者受学识水平所限,而且本书程序和图表较多,加上时间仓促,书中疏漏甚至谬误之处难免,希望读者批评、指正。
编 者 2015年12月
编 者 2015年12月
媒体评论
评论
评论
还没有评论。