51单片机C语言编程从入门到精通

本书特色

[

本书通过大量实例和采用程序逐行解说的方式介绍51单片机和C语言编程。全书主要内容有单片机快速入门、数制与C51语言基础、51单片机编程软件的使用、单片机驱动发光二极管的电路及编程、单片机驱动LED数码管的电路及编程、中断功能的使用及编程、定时器/计数器的使用及编程、按键电路及编程、双色LED点阵的使用及编程、液晶显示屏的使用及编程、步进电机的使用及编程、单片机的串行通信及编程、模拟I2C总线通信及编程、A/D(模/数)与D/A(数/模)转换电路及编程、51单片机的硬件系统、单片机开发常用电子元器件。本书内容由浅入深、语言通俗易懂,并且内容结构安排符合学习认知规律,适合作为初学者学习51单片机C语言编程的自学图书,也适合作为职业院校电类专业的单片机教材使用。

]

内容简介

[

本书通过大量实例和采用程序逐行解说的方式介绍51单片机和C语言编程。全书主要内容有单片机快速入门、数制与C51语言基础、51单片机编程软件的使用、单片机驱动发光二极管的电路及编程、单片机驱动LED数码管的电路及编程、中断功能的使用及编程、定时器/计数器的使用及编程、按键电路及编程、双色LED点阵的使用及编程、液晶显示屏的使用及编程、步进电机的使用及编程、单片机的串行通信及编程、模拟I2C总线通信及编程、A/D(模/数)与D/A(数/模)转换电路及编程、51单片机的硬件系统、单片机开发常用电子元器件。本书内容由浅入深、语言通俗易懂,并且内容结构安排符合学习认知规律,适合作为初学者学习51单片机C语言编程的自学图书,也适合作为职业院校电类专业的单片机教材使用。

]

目录

第1章单片机快速入门 11.1 单片机简介 / 11.1.1 什么是单片机 / 11.1.2 单片机应用系统的组成及实例说明 / 21.1.3 单片机的分类 / 31.1.4 单片机的应用领域 / 41.2 单片机应用系统开发实例 / 41.2.1 选择单片机的型号 / 41.2.2 设计单片机电路原理图 / 51.2.3 制作单片机电路 / 61.2.4 用编程软件编写单片机控制程序 / 71.2.5 计算机、下载(烧录)器和单片机的连接 / 101.2.6 用烧录软件将程序写入单片机 / 131.2.7 单片机电路的通电与测试 / 16第2章数制与C51语言基础 182.1 数制与数制的转换 / 182.1.1 十进制数 / 182.1.2 二进制数 / 182.1.3 十六进制数 / 202.1.4 二进制数与十进制数的转换 / 202.1.5 二进制数与十六进制数的转换 / 202.1.6 单片机的数的表示及运算 / 212.2 C51语言基础 / 232.2.1 常量 / 232.2.2 变量 / 242.2.3 运算符 / 242.2.4 关键字 / 272.2.5 数组 / 282.2.6 循环语句(while、do while、for语句) / 292.2.7 选择语句(if、switch…case语句) / 30第3章51单片机编程软件的使用 333.1 Keil C51软件的安装 / 333.1.1 Keil C51软件的版本及获取 / 333.1.2 Keil C51软件的安装 / 333.2 程序的编写与编译 / 353.2.1 启动Keil C51软件并新建工程文件 / 353.2.2 新建源程序文件并与工程关联起来 / 383.2.3 编写程序 / 403.2.4 编译程序 / 423.3 程序的仿真与调试 / 453.3.1 编写或打开程序 / 453.3.2 仿真设置 / 463.3.3 编译程序 / 473.3.4 仿真调试程序 / 48第4章单片机驱动发光二极管的电路及编程 524.1 LED(发光二极管) / 524.1.1 外形与符号 / 524.1.2 性质 / 524.1.3 检测 / 534.1.4 限流电阻的阻值计算 / 534.2 单片机点亮单个LED的电路及程序详解 / 534.2.1 单片机点亮单个LED的电路 / 534.2.2 采用位操作方式编程点亮单个LED的程序及详解 / 544.2.3 采用字节操作方式编程点亮单个LED的程序及详解 / 554.2.4 单个LED以固定频率闪烁发光的程序及详解 / 564.2.5 单个LED以不同频率闪烁发光的程序及详解 / 584.3 单片机点亮多个LED的电路及程序详解 / 594.3.1 单片机点亮多个LED的电路 / 594.3.2 采用位操作方式编程点亮多个LED的程序及详解 / 594.3.3 采用字节操作方式编程点亮多个LED的程序及详解 / 604.3.4 多个LED以不同频率闪烁发光的程序及详解 / 614.3.5 多个LED左移和右移的程序及详解 / 614.3.6 LED循环左移和右移的程序及详解 / 634.3.7 LED移动并闪烁发光的程序及详解 / 644.3.8 用查表方式控制LED多样形式发光的程序及详解 / 654.3.9 LED花样发光的程序及详解 / 664.4 采用PWM(脉宽调制)方式调节LED亮度的原理及程序详解 / 674.4.1 采用PWM方式调节LED亮度的原理 / 674.4.2 采用PWM方式调节LED亮度的程序及详解 / 68第5章单片机驱动LED数码管的电路及编程 705.1 单片机驱动一位LED数码管的电路及程序详解 / 705.1.1 一位LED数码管的外形、结构与检测 / 705.1.2 单片机连接一位LED数码管的电路 / 725.1.3 单个数码管静态显示一个字符的程序及详解 / 735.1.4 单个数码管动态显示多个字符的程序及详解 / 735.1.5 单个数码管环形转圈显示的程序及详解 / 745.1.6 单个数码管显示逻辑电平的程序及详解 / 745.2 单片机驱动8位LED数码管的电路及程序详解 / 755.2.1 多位LED数码管外形、结构与检测 / 755.2.2 单片机连接8位共阴型数码管的电路 / 765.2.3 8位数码管显示1个字符的程序及详解 / 785.2.4 8位数码管逐位显示8个字符的程序及详解 / 795.2.5 8位数码管同时显示8个字符的程序及详解 / 805.2.6 8位数码管动态显示8个以上字符的程序及详解 / 80第6章中断功能的使用及编程 826.1 中断的基本概念与处理过程 / 826.1.1 什么是中断 / 826.1.2 中断的基本概念 / 826.1.3 中断的处理过程 / 836.2 8051单片机的中断系统结构与控制寄存器 / 836.2.1 中断系统的结构 / 836.2.2 中断源寄存器 / 846.2.3 中断允许寄存器IE / 856.2.4 中断优先级控制寄存器IP / 866.3 中断编程举例 / 876.3.1 中断编程的电路例图 / 876.3.2 用外部中断0以低电平方式触发中断的程序及详解 / 886.3.3 用外部中断1以下降沿方式触发中断的程序及详解 / 89第7章定时器/计数器的使用及编程 917.1 定时器/计数器的定时与计数功能 / 917.1.1 定时功能 / 917.1.2 计数功能 / 927.2 定时器/计数器的结构原理 / 927.2.1 定时器/计数器的结构 / 927.2.2 定时器/计数器的工作原理 / 927.3 定时器/计数器的控制寄存器与四种工作方式 / 947.3.1 定时器/计数器控制寄存器TCON / 947.3.2 工作方式控制寄存器TMOD / 947.3.3 定时器/计数器的工作方式 / 957.4 定时器/计数器的应用及编程 / 997.4.1 产生1kHz方波信号的程序及详解 / 997.4.2 产生50kHz方波信号的程序及详解 / 1007.4.3 产生周期为1s方波信号的程序与长延时的方法 / 101第8章按键电路及编程 1038.1 独立按键输入电路与程序详解 / 1038.1.1 开关输入产生的抖动及软、硬件解决方法 / 1038.1.2 单片机连接8个独立按键和8个LED的电路 / 1048.1.3 一个按键点动控制一个LED亮灭的程序及详解 / 1048.1.4 一个按键锁定控制一个LED亮灭的程序及详解 / 1048.1.5 四路抢答器的程序及详解 / 1068.1.6 独立按键控制LED和LED数码管的单片机电路 / 1078.1.7 两个按键控制一位数字增、减并用8位数码管显示的程序及详解 / 1078.1.8 两个按键控制多位数字增、减并用8位数码管显示的程序及详解 / 1108.1.9 按键长按与短按产生不同控制效果的程序及详解 / 1118.1.10 8个独立按键控制LED亮灭和LED数码管显示的程序及详解 / 1148.2 矩阵键盘输入电路与程序详解 / 1168.2.1 单片机连接16键矩阵键盘和8位数码管的电路 / 1168.2.2 矩阵键盘行列扫描方式输入及显示的程序及详解 / 1168.2.3 中断触发键盘行列扫描的矩阵键盘输入及显示电路与程序详解 / 1208.2.4 矩阵键盘密码锁的程序及详解 / 125第9章双色LED点阵的使用及编程 1299.1 双色LED点阵的结构原理与检测 / 1299.1.1 共阳型和共阴型点阵的电路结构 / 1299.1.2 点阵的混色规律 / 1299.1.3 点阵的静态字符或图形显示原理 / 1309.1.4 点阵的动态字符或图形显示原理 / 1339.1.5 双色点阵的识别与检测 / 1349.2 单片机驱动双色点阵的电路及编程 / 1359.2.1 74HC595芯片 / 1359.2.2 单片机配合74HC595芯片驱动双色LED点阵的电路 / 1369.2.3 双色点阵显示一种颜色字符的程序及详解 / 1369.2.4 双色点阵正反交替显示两种颜色字符的程序及详解 / 1399.2.5 字符移入和移出点阵的程序及详解 / 141第10章液晶显示屏的使用及编程 14510.1 1602字符型液晶显示屏的硬、软件 / 14510.1.1 外形与引脚功能 / 14510.1.2 内部字库及代码 / 14610.1.3 LCD屏各显示位与DDRAM的地址关系 / 14610.1.4 1602显示屏的指令集 / 14710.2 单片机驱动1602液晶显示屏的电路及编程 / 15110.2.1 单片机驱动1602液晶显示屏的电路 / 15110.2.2 1602液晶显示屏静态显示字符的程序及详解 / 15110.2.3 1602液晶显示屏逐个显示字符的程序及详解 / 15410.2.4 1602液晶显示屏字符滚动显示的程序及详解 / 15410.2.5 矩阵键盘输入与1602液晶显示屏显示的电路及程序详解 / 156第11章步进电机的使用及编程 16011.1 步进电机与驱动芯片 / 16011.1.1 步进电机的结构与工作原理 / 16011.1.2 驱动芯片ULN2003 / 16311.1.3 五线四相步进电机 / 16511.2 单片机驱动步进电机的电路及编程 / 16611.2.1 由按键、单片机、驱动芯片和数码管构成的步进电机驱动电路 / 16611.2.2 用单4拍方式驱动步进电机正转的程序及详解 / 16711.2.3 用双4拍方式驱动步进电机自动正反转的程序及详解 / 16711.2.4 外部中断控制步进电机正反转的程序及详解 / 16911.2.5 用按键控制步进电机启动、加速、减速、停止的程序及详解 / 171第12章单片机的串行通信及编程 17512.1 并行通信和串行通信 / 17512.1.1 串行通信的两种方式 / 17512.1.2 串行通信的数据传送方向 / 17712.2 串行通信口的结构与原理 / 17812.2.1 串行通信口的结构 / 17812.2.2 串行通信口的工作原理 / 17812.3 串行通信口的控制寄存器 / 17912.3.1 串行控制寄存器(SCON) / 17912.3.2 电源控制寄存器(PCON) / 18012.4 四种工作方式与波特率的设置 / 18012.4.1 方式0 / 18012.4.2 方式1 / 18212.4.3 方式2 / 18212.4.4 方式3 / 18312.4.5 波特率的设置 / 18312.5 串行通信的应用编程 / 18412.5.1 利用串行通信的方式0实现产品计数显示的电路及编程 / 18412.5.2 利用串行通信的方式1实现双机通信的电路及编程 / 185第13章模拟I2C总线通信及编程 19013.1 I2C总线 / 19013.1.1 概述 / 19013.1.2 I2C总线通信协议 / 19013.1.3 I2C总线的数据传送格式 / 19113.2 I2C总线存储器24C02(E2PROM) / 19213.2.1 外形与引脚功能 / 19213.2.2 器件地址的设置 / 19213.2.3 读/写操作 / 19313.3 单片机与24C02的I2C总线通信电路及编程 / 19613.3.1 模拟I2C总线通信的程序及详解 / 19613.3.2 利用I2C总线从24C02读写一个数据并用LED显示的电路及程序详解 / 19913.3.3 利用I2C总线从24C02读写多个数据的电路及程序详解 / 20113.3.4 利用24C02存储按键的操作信息的电路及程序详解 / 202第14章A/D(模/数)与D/A(数/模)转换电路及编程 20614.1 A/D(模/数)与D/A(数/模)转换原理 / 20614.1.1 A/D转换 / 20614.1.2 D/A转换 / 20814.2 A/D与D/A转换芯片PCF8591 / 20814.2.1 外形与引脚功能 / 20814.2.2 器件地址和功能设置 / 20914.3 由PCF8591芯片构成的A/D和D/A转换电路及编程 / 21014.3.1 单片机、PCF8591芯片与8位数码管构成的A/D和D/A转换及显示电路 / 21014.3.2 1路A/D转换并显示转换值的程序及详解 / 21014.3.3 4路电压测量显示的程序及详解 / 21314.3.4 D/A转换输出显示的程序及详解 / 216第15章51单片机的硬件系统 21915.1 8051单片机的引脚功能与内部结构 / 21915.1.1 引脚功能 / 21915.1.2 单片机与片外存储器的连接与控制 / 22115.1.3 内部结构 / 22315.2 8051单片机I/O端口的结构与工作原理 / 22515.2.1 P0端口 / 22615.2.2 P1端口 / 22715.2.3 P2端口 / 22815.2.4 P3端口 / 22815.3 8051单片机的存储器 / 22915.3.1 存储器的存储单位与编址 / 22915.3.2 片内外程序存储器的使用与编址 / 23015.3.3 片内外数据存储器的使用与编址 / 23115.3.4 数据存储器的分区 / 23115.3.5 特殊功能寄存器(SFR) / 23315.4 STC89C5X系列单片机 / 23815.4.1 STC89C5X单片机的版本、封装形式和引脚 / 23815.4.2 STC89C5X系列单片机的型号命名规则 / 24215.4.3 STC89C5X系列单片机的常用型号的主要参数 / 24215.4.4 STC89C5X系列单片机的I/O端口 / 24215.4.5 STC89C5X系列单片机的程序存储器与数据存储器 / 24615.4.6 STC89C5X系列单片机的特殊功能寄存器 / 247第16章单片机开发常用电子元器件 25016.1 基本电子元器件 / 25016.1.1 电阻器 / 25016.1.2 电位器 / 25216.1.3 排阻 / 25316.1.4 电容器 / 25416.1.5 电感器 / 25516.1.6 变压器 / 25616.2 半导体元器件 / 25916.2.1 二极管 / 25916.2.2 整流二极管与整流桥堆 / 26016.2.3 稳压二极管 / 26116.2.4 肖特基二极管 / 26216.2.5 快恢复二极管 / 26316.2.6 三极管 / 26416.2.7 单向晶闸管 / 26716.2.8 绝缘栅型场效应管(MOS管) / 26816.3 其他类型元器件 / 27016.3.1 双色发光二极管 / 27016.3.2 红外线接收组件 / 27116.3.3 光电耦合器 / 27116.3.4 光遮断器 / 27216.3.5 耳机 / 27316.3.6 蜂鸣器 / 27416.3.7 石英晶体谐振器(晶振) / 27616.3.8 电磁继电器 / 27716.3.9 干簧管 / 27816.3.10 自恢复熔断器 / 27816.3.11 瞬态电压抑制二极管 / 27916.4 贴片元器件 / 28016.4.1 贴片封装规格 / 28016.4.2 手工焊接方法 / 28016.4.3 贴片电阻器 / 28216.4.4 贴片电位器 / 28216.4.5 贴片熔断器 / 28316.4.6 贴片电容器 / 28316.4.7 贴片电感器 / 28416.4.8 贴片二极管 / 28416.4.9 贴片三极管 / 28516.5 集成电路 / 28616.5.1 集成电路的引脚识别 / 28616.5.2 三端固定输出稳压器(78XX/79XX) / 28616.5.3 三端精密稳压器(TL431) / 28816.5.4 双运算放大器(LM358) / 28916.5.5 双电压比较器(LM393) / 29116.5.6 单全桥/单H桥/电机驱动芯片(L9110) / 29216.5.7 常用的74系列芯片型号 / 29316.5.8 8路三态输出D型锁存器芯片(74HC573) / 29416.5.9 三-八线译码器/多路分配器芯片(74HC138) / 29616.5.10 8路选择器/分配器芯片 (74HC4051) / 29716.5.11 串/并转换芯片(74HC164) / 29816.5.12 并/串转换芯片(74HC165) / 299视频讲解清单 301

封面

1单片机C语言编程从入门到精通"

书名:51单片机C语言编程从入门到精通

作者:蔡杏山 主编

页数:301

定价:¥79.8

出版社:化学工业出版社

出版日期:2018-01-01

ISBN:9787122350800

PDF电子书大小:134MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注