顶部
收藏

STC32位8051单片机原理及应用


作者:
何宾
定价:
68.00元
ISBN:
978-7-04-061379-7
版面字数:
700.000千字
开本:
16开
全书页数:
暂无
装帧形式:
平装
重点项目:
暂无
出版时间:
2024-04-22
读者对象:
高等教育
一级分类:
电气/电子信息/自动化类
二级分类:
电气/自动化专业课
三级分类:
单片机原理及应用

本书采用STC公司最新一代的STC32系列32位8051单片机作为设计平台,而STC32系列单片机采用了MCS-251指令集架构,该指令集架构兼容传统的MCS-51指令集架构,从传统8位8051单片机升级为32位8051单片机,继续保持51单片机的生命活力。全书共分为16章,主要内容包括:单片机设计导论,单片机硬件开发基础,单片机软件开发基础,数值的表示和转换,处理器内核和存储空间映射,单片机CPU指令集架构,汇编语言程序设计,C语言程序设计,时钟、复位和电源管理,定时器与计数器原理和应用,UART原理和应用,ADC原理和应用,PWM原理和应用,DMA原理和应用,USB原理和应用,CAN总线原理和应用。本书通过全方位的讲解,将STC最新的32位8051单片机中的重要知识点进行融会贯通。

本书为中国大学MOOC“单片机原理及应用”的配套教材,书中将部分教学视频、讲义制作成二维码供读者扫描阅读,同时,本书配套Abook数字资源网站,主要内容为所有设计实例完整的工程文件、讲义PPT、教学大纲、教学视频等。本书可作为高等学校和高职院校单片机课程的教材,也可作为STC单片机竞赛、单片机认证考试的参考用书。对于从事单片机应用的工程师来说,本书是很好的工程参考用书。

  • 前辅文
  • 第1章 单片机设计导论
    • 1.1 单片机和桌面系统的基本架构
      • 1.1.1 单片机的结构
      • 1.1.2 桌面系统的结构
    • 1.2 处理器核的指令集类型
      • 1.2.1 MCS-51指令集
      • 1.2.2 MCS-251指令集
      • 1.2.3 两个指令集的兼容性
    • 1.3 嵌入式系统的硬件和软件
      • 1.3.1 嵌入式系统硬件
      • 1.3.2 嵌入式系统软件
    • 1.4 单片机程序设计语言
      • 1.4.1 分层结构
      • 1.4.2 设计实例
    • 1.5 单片机的性能评价
  • 第2章 单片机硬件开发基础
    • 2.1 STC系列单片机的发展历史
    • 2.2 STC单片机的IAP和ISP
    • 2.3 STC32G系列单片机的功能
    • 2.4 STC32位单片机命名规则及封装
      • 2.4.1 命名规则
      • 2.4.2 封装类型
      • 2.4.3 引脚定义
    • 2.5 STC32G系列单片机引脚驱动原理
    • 2.6 STC32G系列单片机硬件下载电路
      • 2.6.1 硬件USB直接下载
      • 2.6.2 USB Link1D工具下载
  • 第3章 单片机软件开发基础
    • 3.1 Keil μVision软件的下载和安装
      • 3.1.1 软件功能介绍
      • 3.1.2 软件的下载
      • 3.1.3 软件的安装
      • 3.1.4 导入STC单片机元件库
      • 3.1.5 软件的启动
    • 3.2 Keil μVision设计流程和应用开发
      • 3.2.1 Keil μVision软件设计流程
      • 3.2.2 Keil μVision应用程序开发
  • 第4章 数值的表示和转换
    • 4.1 常用码制
      • 4.1.1 二进制码制
      • 4.1.2 十进制码制
      • 4.1.3 十六进制码制
    • 4.2 正数的表示方法
      • 4.2.1 正整数的表示
      • 4.2.2 正纯小数的表示
    • 4.3 正数的码制转换
      • 4.3.1 十进制正整数转换成其他进制数
      • 4.3.2 十进制正纯小数转换成二进制纯小数
    • 4.4 负数的表示方法
      • 4.4.1 符号幅度表示法
      • 4.4.2 补码表示法
    • 4.5 负数补码的计算
      • 4.5.1 负整数补码的计算
      • 4.5.2 负纯小数补码的计算
    • 4.6 小数的定点数表示方法
    • 4.7 小数的浮点数表示方法
  • 第5章 处理器内核和存储空间映射
    • 5.1 8位单片机处理器核的内部结构
      • 5.1.1 控制器
      • 5.1.2 运算器
      • 5.1.3 特殊功能寄存器
      • 5.1.4 扩展特殊功能寄存器
    • 5.2 字节存储顺序
    • 5.3 8位单片机存储器结构和地址空间
      • 5.3.1 程序Flash存储器
      • 5.3.2 数据Flash存储器
      • 5.3.3 内部数据存储器
      • 5.3.4 外部数据存储器
    • 5.4 32位单片机处理器核的内部结构
      • 5.4.1 寄存器文件
      • 5.4.2 专用寄存器
      • 5.4.3 程序状态字
    • 5.5 32位单片机存储器结构和地址空间
      • 5.5.1 程序存储器
      • 5.5.2 数据存储器
      • 5.5.3 特殊功能寄存器
    • 5.6 中断系统原理及功能
      • 5.6.1 中断原理
      • 5.6.2 中断系统结构
      • 5.6.3 中断使能和请求寄存器
      • 5.6.4 中断优先级原理
      • 5.6.5 中断优先级控制寄存器
      • 5.6.6 中断向量表
  • 第6章 单片机CPU指令集架构
    • 6.1 数据类型和端
    • 6.2 指令集中的符号规则
      • 6.2.1 寄存器符号的表示
      • 6.2.2 操作数符号的表示规则
    • 6.3 单片机CPU寻址模式
      • 6.3.1 立即数寻址模式
      • 6.3.2 直接寻址模式
      • 6.3.3 间接寻址模式
      • 6.3.4 寄存器寻址模式
      • 6.3.5 位移寻址模式
      • 6.3.6 相对寻址模式
      • 6.3.7 位寻址模式
    • 6.4 单片机指令模式的选择
    • 6.5 单片机CPU指令类型和格式
      • 6.5.1 算术指令
      • 6.5.2 逻辑指令
      • 6.5.3 数据传送指令
      • 6.5.4 位指令
      • 6.5.5 控制指令
  • 第7章 汇编语言程序设计
    • 7.1 汇编语言程序结构和段分配
      • 7.1.1 汇编语言程序框架
      • 7.1.2 汇编代码中段的分配
      • 7.1.3 注释
    • 7.2 符号和符号名字
      • 7.2.1 标号
      • 7.2.2 特殊的汇编器符号
    • 7.3 表达式和操作数
      • 7.3.1 数字
      • 7.3.2 字符
      • 7.3.3 字符串
      • 7.3.4 位置计数器
      • 7.3.5 操作符
      • 7.3.6 表达式
    • 7.4 控制语句
      • 7.4.1 地址控制
      • 7.4.2 存储器初始化
      • 7.4.3 保留存储空间
      • 7.4.4 过程声明
      • 7.4.5 程序链接
      • 7.4.6 段控制
      • 7.4.7 符号定义
      • 7.4.8 杂项
    • 7.5 条件汇编
    • 7.6 宏的定义和调用
    • 7.7 设计实例一:LED驱动和控制
      • 7.7.1 硬件设计原理
      • 7.7.2 I/O端口寄存器
      • 7.7.3 建立新的设计工程
      • 7.7.4 添加汇编语言文件
      • 7.7.5 设计汇编和链接
      • 7.7.6 分析hex文件
      • 7.7.7 程序下载和运行
    • 7.8 设计实例二:按键中断和LED控制
      • 7.8.1 硬件设计原理
      • 7.8.2 复制并打开设计
      • 7.8.3 修改汇编语言文件
      • 7.8.4 程序的硬件调试
  • 第8章 C语言程序设计
    • 8.1 存储器区域
    • 8.2 数据类型
      • 8.2.1 标准C语言所支持的类型
      • 8.2.2 位寻址对象
      • 8.2.3 特殊功能寄存器
    • 8.3 类型限定符
    • 8.4 存储类别
    • 8.5 绝对位置变量
    • 8.6 指针
      • 8.6.1 指针声明中的存储器类型
      • 8.6.2 指针转换
    • 8.7 函数
      • 8.7.1 存储器模型
      • 8.7.2 寄存器组
      • 8.7.3 中断函数
      • 8.7.4 可重入函数
      • 8.7.5 外来函数
      • 8.7.6 实时函数任务
      • 8.7.7 函数参数
      • 8.7.8 函数返回值
      • 8.7.9 使用SRC命令
      • 8.7.10 函数调用实例
    • 8.8 属性
    • 8.9 预处理器
      • 8.9.1 头文件
      • 8.9.2 宏
      • 8.9.3 宏操作符
      • 8.9.4 预定义的宏
      • 8.9.5 取消定义或重定义
      • 8.9.6 使用宏的注意事项
      • 8.9.7 预处理器命令
    • 8.10 内嵌汇编程序
      • 8.10.1 嵌入汇编代码的方法
      • 8.10.2 SRC文件
      • 8.10.3 设计实例
    • 8.11 定制文件
      • 8.11.1 基本I/O
      • 8.11.2 存储器分配
    • 8.12 设计实例:按键识别与显示
      • 8.12.1 按键的识别原理
      • 8.12.2 七段数码管显示原理
      • 8.12.3 设计中使用的寄存器
      • 8.12.4 建立新的设计工程
      • 8.12.5 添加头文件
      • 8.12.6 添加C语言源文件
      • 8.12.7 设计编译和链接
      • 8.12.8 程序下载和运行
  • 第9章 时钟、复位和电源管理
    • 9.1 时钟子系统
      • 9.1.1 第一级时钟
      • 9.1.2 第二级时钟
      • 9.1.3 第三级时钟
      • 9.1.4 相关的寄存器列表
    • 9.2 复位子系统
      • 9.2.1 硬件复位
      • 9.2.2 软件复位
      • 9.2.3 相关的寄存器列表
    • 9.3 电源子系统
      • 9.3.1 运行模式
      • 9.3.2 相关的寄存器列表
    • 9.4 设计实例一:软件复位的实现
    • 9.5 设计实例二:看门狗定时器的应用
    • 9.6 设计实例三:进入和退出空闲模式的实现
    • 9.7 设计实例四:进入和退出掉电模式的实现
  • 第10章 定时器与计数器原理和应用
    • 10.1 定时器/计数器模块功能
    • 10.2 定时器/计数器工作模式
      • 10.2.1 定时器/计数器0工作模式
      • 10.2.2 定时器/计数器1工作模式
      • 10.2.3 定时器/计数器2工作模式
    • 10.3 定时器/计数器寄存器组
    • 10.4 设计实例一:定时器/计数器设置和中断生成
      • 10.4.1 设计实现
      • 10.4.2 设计下载和验证
    • 10.5 设计实例二:定时器/计数器对外部脉冲计数
      • 10.5.1 硬件设计原理
      • 10.5.2 使用的寄存器
      • 10.5.3 设计实现
      • 10.5.4 设计下载和验证
  • 第11章 UART原理和应用
    • 11.1 RS-232串口通信标准
      • 11.1.1 RS-232传输特点
      • 11.1.2 RS-232数据传输格式
      • 11.1.3 RS-232电气标准
      • 11.1.4 RS-232参数设置
      • 11.1.5 RS-232连接器
    • 11.2 串口模块功能和引脚
    • 11.3 串口寄存器及工作模式
      • 11.3.1 串口寄存器组
      • 11.3.2 串口的发送和接收过程
    • 11.4 串口波特率的计算方法
    • 11.5 设计实例一:串口重定位的设计与实现
      • 11.5.1 串口重定位的背景
      • 11.5.2 建立新的设计工程
      • 11.5.3 添加type.h文件
      • 11.5.4 添加uart.h文件
      • 11.5.5 添加uart.c文件
      • 11.5.6 添加main.c文件
      • 11.5.7 设计编译和链接
      • 11.5.8 程序下载和运行
      • 11.5.9 串口工具的使用
    • 11.6 设计实例二:红外遥控器解码的实现
      • 11.6.1 红外接收器电路
      • 11.6.2 红外信号的捕获
      • 11.6.3 红外通信协议
      • 11.6.4 红外检测原理
      • 11.6.5 复制设计文件
      • 11.6.6 修改type.h文件
      • 11.6.7 添加ISR.asm文件
      • 11.6.8 修改main.c文件
      • 11.6.9 设计验证
  • 第12章 ADC原理和应用
    • 12.1 ADC的原理
      • 12.1.1 ADC的内部结构
      • 12.1.2 ADC计算公式
    • 12.2 ADC寄存器组
    • 12.3 设计实例:直流电压的测量和显示
      • 12.3.1 直流分压电路原理
      • 12.3.2 1602字符LCD屏接口
      • 12.3.3 1602字符LCD屏原理
      • 12.3.4 建立新的设计工程
      • 12.3.5 添加lcd1602.h文件
      • 12.3.6 添加lcd1602.c文件
      • 12.3.7 添加main.c文件
      • 12.3.8 设计编译和链接
      • 12.3.9 程序下载和运行
  • 第13章 PWM原理和应用
    • 13.1 PWM波形的原理
    • 13.2 高级PWM定时器原理
      • 13.2.1 高级PWM模块的功能
      • 13.2.2 高级PWM模块内部结构
      • 13.2.3 时基单元
      • 13.2.4 时钟/触发控制器
      • 13.2.5 捕获/比较通道
      • 13.2.6 中断
    • 13.3 设计实例一:呼吸灯的设计与实现
      • 13.3.1 建立新的设计工程
      • 13.3.2 添加type.h文件
      • 13.3.3 添加main.c文件
      • 13.3.4 设计编译和链接
      • 13.3.5 程序下载和运行
    • 13.4 设计实例二:直流风扇驱动和测速的实现
      • 13.4.1 直流风扇的驱动原理
      • 13.4.2 系统硬件连接
      • 13.4.3 系统设计策略
      • 13.4.4 建立新的设计工程
      • 13.4.5 添加已有的设计文件
      • 13.4.6 添加main.c文件
      • 13.4.7 设计处理和下载
  • 第14章 DMA原理和应用
    • 14.1 DMA的基本概念
    • 14.2 STC32G系列单片机DMA
      • 14.2.1 DMA结构
      • 14.2.2 DMA类型
    • 14.3 设计实例:存储器到存储器的DMA实现
      • 14.3.1 相关寄存器
      • 14.3.2 复制设计文件
      • 14.3.3 添加isr.asm文件
      • 14.3.4 修改main.c文件
      • 14.3.5 设计下载和验证
  • 第15章 USB原理和应用
    • 15.1 USB协议概述
    • 15.2 USB2.0程序设计实现
    • 15.3 人机交互设备原理
    • 15.4 人机交互设备程序设计
    • 15.5 通信设备类原理
    • 15.6 通信设备类程序设计
  • 第16章 CAN总线原理和应用
    • 16.1 CAN规范基础
    • 16.2 CAN模块功能
    • 16.3 CAN总线通信的实现
  • 附录 STC32G系列单片机硬件开发平台原理图

相关图书