标题：嵌入式SoC系统开发与工程实例
基本信息
作　　者：包海涛 著出 版 社：北京航空航天大学出版社ISBN：9787811244601出版时间：2009-01-01版　　次：1页　　数：434装　　帧：平装开　　本：16开所属分类：图书 > 计算机与互联网 > 单片机与嵌入式
内容简介
本书以C8051F41x为例介绍SoC单片机内核的一些共性问题，同时也突出其自身所具有的特点，如更高的指令执行速度，低功耗，相对于其他C8051系列，具有新型外设的集成，低廉的价格，丰富外设的合理规划与布局。作者在介绍每一种外设时均给出了应用代码，使读者可尽快掌握并应用该模块。
本书言简意赅地介绍了μC/OS-Ⅱ的核心和常用模块，并以C8051F41x为平台，结合作者的项目实际，给出了工程应用实例，其中许多实例经过科研与生产实践检验，有较高参考价值，可帮助读者更好地应用此单片机，缩短学习与应用的距离。本书所有的实例和调试代码均采用C语言编程，以增强程序代码的可读性和移植性。
目录
第1章 片上系统内核与功能总汇
1.1 与MCS51的兼容性与差异性
1.2 内核功能的扩展
1.3 存储空间的映射
1.4 扩展的中断系统
1.4.1 中断源和中断向量
1.4.2 中断的优先级与响应时间
1.4.3 外部中断源
1.4.4 中断控制寄存器
1.5 内核指令集说明
1.6 内核的工作状态
1.6.1 内核的几种工作模式
1.6.2 工作状态的设置与特点
1.7 特殊功能寄存器
1.7.1 特殊功能寄存器的分布
1.7.2 特殊功能寄存器的定义
1.8 流水线式指令预取引擎
1.9 片内可编程稳压器
1.10 SoC的仿真与调试
1.10.1 内置的C2仿真接口
1.10.2 C2引脚共享
1.11 芯片引脚定义及电气参数
1.11.1 总体直流电气特性
1.11.2 引脚和定义
第2章 可编程输入/输出端口与外设资源匹配
2.1 I/O口优先权交叉开关译码器原理
2.2 外设资源初始化配置
2.3 通用端口I/O初始化设置
2.4 I/O匹配应用实例
第3章 多通道12位模/数转换器（ADC0）
3.1 多路模拟开关选择器与片内温度传感器
3.2 A/D的配置
3.2.1 转换启动方式
3.2.2 A/D跟踪与工作方式
3.2.3 A/D的时序要求
3.2.4 输出转换码
3.2.5 建立时间的要求
3.3 可编程窗口检测器
3.4 寄存器的定义与设置
3.5 ADC0的电气参数
3.6 A/D转换器应用实例
3.6.1 A/D定时采样实例
3.6.2 硬件数据累加器使用实例
3.6.3 芯片工作环境监测
3.6.4 CPU无扰门限比较
第4章 可叠加或独立的12 位电流模式DAC
4.1 D/A转换寄存器
4.1.1 D/A寄存器说明
4.1.2 IDAC输出字格式
4.2 D/A转换的输出方式选择
4.2.1 程控立即更新模式
4.2.2 定时器时控输出更新模式
4.2.3 外部触发信号边沿的输出更新模式
4.3 D/A转换的应用设置与电气参数
4.4 D/A转换的应用实例
4.4.1 D/A的调试与程控立即更新模式应用
4.4.2 DAC定时器模式应用
4.4.3 可编程正弦波发生
第5章 片内可编程电压基准与片内比较器
5.1 片内电压基准
5.1.1 片内电压基准结构原理
5.1.2 片内电压基准控制寄存器与电气参数
5.2 比较器
5.2.1 比较器的结构与原理
5.2.2 比较器相关寄存器设置与使用
第6章 循环冗余检查单元
6.1 CRC结构功能
6.1.1 CRC寄存器
6.1.2 执行CRC计算107 6.1.3 访问CRC结果
6.2 CRC的位序反转功能
6.3 CRC模块功能应用实例
第7章 SoC复位源
7.1 上电复位
7.2 掉电复位和VDD监视器
7.3 外部复位
7.4 时钟丢失检测器复位
7.5 比较器0复位
7.6 PCA看门狗定时器复位
7.7 FLASH错误复位
7.8 智能时钟复位
7.9 软件复位
7.10 软件复位操作实例
第8章 FLASH存储单元
8.1 FLASH存储单元的编程
8.1.1 FLASH编程锁定和关键字设置
8.1.2 FLASH擦写的操作
8.2 FLASH数据的安全保护
8.3 FLASH可靠写和擦除的几点要求
8.4 FLASH读定时设置与应用
8.5 非易失性数据存储程序示例
第9章 振荡器
9.1 可编程内部振荡器设置与使用
9.2 外部振荡器的配置与使用
9.2.1 外部晶体模式
9.2.2 外部RC模式
9.2.3 外部电容模式
9.2.4 外部振荡器作为定时器时钟
9.3 时钟乘法器
9.4 系统时钟的选择
第10章 智能实时时钟
10.1 智能时钟的全局接口寄存器
10.1.1 智能时钟的接口寄存器定义
10.1.2 智能时钟锁定和解锁
10.2 智能时钟的内部寄存器
10.2.1 使用接口寄存器间接访问智能时钟的内部寄存器
10.2.2 接口寄存器的数据自动读地址自增功能与设置
10.3 智能时钟的时钟源选择
10.3.1 使用标准钟表振荡器的晶体方式
10.3.2 无片外振荡器的自振荡方式
10.3.3 振荡器时钟丢失的检测
10.4 智能时钟定时和报警功能
10.4.1 定时器值的设置和访问
10.4.2 报警门限值的设置
10.5 后备电源稳压器和后备RAM
10.6 智能时钟的应用实例
10.6.1 智能时钟定时应用
10.6.2 智能时钟后备RAM的数据存取示例
第11章 SMBus总线
11.1 SMBus配置与外设扩展
11.2 SMBus的通信概述
11.2.1 总线仲裁
11.2.2 总线时序
11.2.3 总线状态
11.3 SMBus寄存器的定义与配置
11.3.1 SMBus初始配置寄存器
11.3.2 SMBus状态控制寄存器
11.3.3 SMBus数据收/发寄存器
11.4 SMBus工作方式选择
11.4.1 主发送方式
11.4.2 主接收方式
11.4.3 从接收方式
11.4.4 从发送方式
11.5 SMBus状态译码
11.6 SMBus总线扩展应用实例
11.6.1 以主发送器方式扩展ZLG7290的应用实例
11.6.2 利用SMBus扩展24C
11.6.3 利用SMBus总线进行双机通信
第12章 同步/异步串口UART
12.1 增强的波特率发生器
12.2 串行通信工作方式选择
12.2.1 8位通信模式
12.2.2 9位通信模式
12.3 多机通信
12.4 串行通信相关寄存器说明
12.5 串口UART0实例
12.5.1 片上系统串口自环调试实例
12.5.2 上下位机点对点通信示例
第13章 增强型全双工同步串行外设接口
13.1 SPI0的信号定义
13.2 SPI0主工作方式
13.3 SPI0从工作方式
13.4 SPI0中断源说明
13.5 串行时钟时序
13.6 SPI特殊功能寄存器
13.7 SPI主工作方式下扩展74HC595 LED显示实例
第14章 定时器
14.1 定时器0和定时器
14.1.1 定时器0/1的工作方式0、
14.1.2 定时器0/1的工作方式
14.1.3 定时器0/1的工作方式
14.1.4 定时器0/1的相关寄存器
14.2 定时器
14.2.1 定时器2的16位自动重装载方式
14.2.2 定时器2的8位自动重装载方式
14.2.3 外部/智能时钟捕捉方式
14.2.4 定时器2的相关寄存器
14.3 定时器
14.3.1 16位自动重装载方式
14.3.2 8位自动重装载定时器方式
14.3.3 外部/智能时钟捕捉方式
14.3.4 定时器3的相关寄存器
14.4 智能时钟振荡频率捕捉应用实例
第15章 可编程计数器阵列
15.1 PCA计数器/定时器
15.2 PCA的捕捉/比较模块
15.2.1 PCA边沿触发的捕捉方式
15.2.2 PCA软件定时器方式
15.2.3 PCA高速输出方式
15.2.4 PCA频率输出方式
15.2.5 8位脉宽调制器方式
15.2.6 16位脉宽调制器方式
15.3 看门狗定时器方式
15.3.1 看门狗定时器操作
15.3.2 看门狗定时器的配置与使用272 15.4 PCA寄存器说明
15.5 PCA应用实例
15.5.1 方波发生输出
15.5.2 8位PWM发生
15.5.3 16位PWM发生
15.5.4 频率捕获功能应用
第16章 嵌入式操作系统
16.1 嵌入式操作系统的定义
16.2 嵌入式实时操作系统的功能
16.3 几种常用的操作系统
16.4 可移植与51系列的操作系统
16.4.1 RTX51实时操作系统
16.4.2 嵌入式实时操作系统μC/OSⅡ
16.5 μC/OS Ⅱ功能概述
16.5.1 任务类操作函数
16.5.2 时间类函数
16.5.3 信号类函数
16.5.4 信箱类函数
16.6 基于μC/OSⅡ的串口测温应用实例
第17章 SoC应用设计经验点滴
17.1 SoC选型问题
17.2 SoC系统设计的几点建议
第18章 应用设计实例
18.1 LCD模块与片上系统接口应用实例
18.1.1 ST7565功能介绍
18.1.2 基于ST7565的模块与处理器接口
18.1.3 ST7565的模块与片上系统接口实例程序
18.2 FFT变换与谱分析
18.2.1 快速傅里叶变换(FFT)算法的原理
18.2.2 利用FFT进行频谱分析
18.2.3 FFT算法在片上系统上的实现
18.2.4 结果与思考
18.3 低频自定义信号发生器
18.3.1 系统功能概述
18.3.2 系统结构与原理
18.3.3 系统软件设计
18.3.4 结果
18.4 低成本无人值守数据采集器
18.4.1 数据采集功能概述
18.4.2 基于C8051F410的采集系统
18.4.3 系统软件部分
18.4.4 总结与思考
18.5 智能水压力发生器
18.5.1 背景
18.5.2 主控芯片在系统编程
18.5.3 在系统编程功能寄存器说明
18.5.4 系统编程的实现过程
18.5.5 智能水压力发生器的开发设计
参考文献
前言
微处理器在社会发展中扮演着非同寻常的角色，几乎渗透到了各行各业。经过不断的发展与创新，单片机大致可分为4位、8位、16位和32位。其中32位系列是最近几年才发展起来的新系列，大有后来居上的态势，多用于信息量较大但运算负担又不太重的设备上（如掌上设备等）。16位单片机越来越边缘化，曾经辉煌一时的MCS96也不可避免地走向衰落，现在这一系列品种较少，影响较大的有MSP430。但它所处的位置很尴尬，主要用于运算量小，且控制要求不是很复杂的中低端场合，这种场合使用4位或8位机也可很好地实现，而且更具性价比优势。在中高端应用场合，其性能又无法和32位机相比，目前其价格优势也不明显。应该说在低端的控制领域，8位机仍是主力军，笔者断言这种趋势短时期不会改变。8位机在我国的普及程度最高的非51莫属，尽管相对于其他种类8位机并没有绝对的技术优势，甚至还有劣势，但认同是硬道理，君不见应用者数以亿计，资料浩如烟海。也正是如此，各家公司开发的许多产品都是基于51内核的。基于51内核的系列单片机处在不断改进的过程之中，这是因为芯片设计技术在发展，如果不对缺陷进行改造，就等于坐以待毙。8位单片机在CPU结构、外围模块及总线和集成开发环境等各个方面，都发生了巨大变化。单片机的设计也已经从积木扩展模式跨入了集成度、可靠性、性价比都非常高的片上系统SoC时代。