可重构嵌入式系统设计与实现:基于CypressPSoC4BLE智能互联平台何宾pdf下载pdf下载

可重构嵌入式系统设计与实现:基于CypressPSoC4BLE智能互联平台何宾百度网盘pdf下载

作者:
简介:本篇主要提供可重构嵌入式系统设计与实现:基于CypressPSoC4BLE智能互联平台何宾pdf下载
出版社:中图创优图书专营店
出版时间:2018-11
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

基本信息

书名:可重构嵌入式系统设计与实现:基于Cypress PSoC4 BLE智能互联平台

定价:69元

作者:何宾

出版社:电子工业出版社

出版日期:2018-11-01

ISBN:9787121351044

字数:435000

页码:272

版次:1

装帧:平装

开本:16开

商品重量:

编辑推荐


"本书特色 内容全面:本书涵盖了嵌入式系统所涉及的知识点,包括ARM Cortex-M0处理器内核和指令集、总线架构、低功耗特性、汇编语言程序设计、C语言程序设计和优化、模拟和数字系统的驱动与控制、低功耗蓝牙模块应用,以及FreeRTOS原理及应用。 技术优选:Cypress公司的PSo4 BLE器件是新一代的可编程片上系统器件,该器件将模拟、数字、处理器和射频集成在单芯片内,采用堆木块式的硬件设计思想,并结合PSoC Creator集成开发环境提供的软件代码自动生成技术,为构建智能互联嵌入式系统提供了更加便捷高效的手段。 系统重构:采用PSoC4 BLE器件构建嵌入式系统的优势就在于系统的可重构性和可移植性,通过堆积木的设计方法很容易重构硬件系统,再加上PSoC Creator集成开发环境提供的软件代码自动生成技术,为应用开发屏蔽了底层硬件的实现细节,这样就很容易将应用从一个硬件平台移植到另一个硬件平台。 实例丰富:为了帮助读者全面掌握PSoC4 BLE器件的特性和PSoC Creator集成开发环境的设计流程,本书配套提供了近40个设计实例,这些设计实例基本涵盖了PSoC4 BLE器件所提供的特性和功能。 "

内容提要


本书基于Cypress公司的PSoC4 BLE嵌入式平台,该平台以ARM Cortex-M0处理器为内核,集成了模拟可编程阵列和数字可编程阵列,并且新集成了低功耗蓝牙模块,使得该平台成为物联网应用的不错选择。本书共14章,主要包括可重构嵌入式系统设计导论、可重构嵌入式系统基本设计流程、Cortex-M0 CPU结构、Cortex-M0指令集、AHB-Lite总线结构分析、Cortex-M0低功耗特性、Cortex-M0汇编语言编程基础、中断系统的构建和实现、C语言代码设计与优化方法、电容感应触摸控制模块原理及实现、低功耗蓝牙模块原理及实现、通用数字块原理及实现、模拟子系统原理及实现,以及FreeRTOS原理及应用等内容。 本书反映了基于Cypress公司的PSoC可编程片上系统发展的很新成果,系统化和模块化地介绍了PSoC4 BLE内所集成的ARM Cortex-M0 CPU硬核处理器的结构及指令集、PSoC4 BLE内各个功能单元的结构,以及基于PSoC Creator 4.1软件的片上系统的设计流程。 本书注意理论和实践相结合,同时给出了大量的设计实例,使读者能够掌握这一新的设计技术,以便推动电子系统设计方法的创新。

目录


目 录 章 可重构嵌入式系统设计导论1 1.1 可重构嵌入式系统的背景和优势1 1.1.1 传统的嵌入式系统构建方法1 1.1.2 可重构嵌入式系统构建方法2 1.1.3 PSoC性能比MCU更优越4 1.2 可重构嵌入式系统的设计重用5 1.3 PSoC4 BLE的结构及功能6 1.4 PSoC4 BLE设计流程9 1.4.1 硬件设计流程9 1.4.2 软件设计流程10 1.5 PSoC4 BLE的硬件连接11 第2章 可重构嵌入式系统基本设计流程13 2.1 软件的下载和安装13 2.2 建立新的设计工程16 2.3 在原理图中添加嵌入式硬件设计18 2.3.1 在原理图中添加数字输出端口18 2.3.2 在原理图中添加片外外设注解19 2.3.3 对硬件设计进行处理24 2.3.4 查看分配的引脚位置25 2.4 为嵌入式硬件开发软件应用26 2.5 下载设计到目标系统27 第3章 Cortex-M0 CPU结构28 3.1 ARM处理器类型28 3.2 Cortex-M系列处理器概述29 3.2.1 Cortex-M系列处理器的特点29 3.2.2 Cortex-M系列处理器的性能参数29 3.3 Cortex-M0处理器的性能和结构30 3.3.1 Cortex-M0处理器的性能30 3.3.2 Cortex-M0处理器的结构31 3.4 Cortex-M0处理器的寄存器组33 3.4.1 通用寄存器33 3.4.2 堆栈指针34 3.4.3 程序计数器34 3.4.4 链接寄存器34 3.4.5 组合程序状态寄存器35 3.4.6 中断屏蔽特殊寄存器36 3.4.7 特殊寄存器36 3.5 Cortex-M0存储器空间映射37 3.6 Cortex-M0程序镜像原理及生成方法39 3.7 Cortex-M0处理器的端及分配40 3.8 Cortex-M0处理器异常及处理41 3.8.1 异常处理41 3.8.2 异常优先级41 3.8.3 向量表42 3.8.4 异常类型43 3.8.5 PSoC4中断源44 3.8.6 PSoC4中断触发方式45 3.8.7 固定功能模块和UDB的中断布线46 第4章 Cortex-M0指令集48 4.1 Thumb指令集48 4.2 Cortex-M0汇编语言格式49 4.3 寄存器访问指令:MOVE50 4.4 存储器访问指令:LOAD51 4.5 存储器访问指令:STORE54 4.6 多数据访问指令:LDM和STM55 4.7 堆栈访问指令:PUSH和POP56 4.8 算术运算指令57 4.8.1 加法指令57 4.8.2 减法指令59 4.8.3 乘法指令60 4.8.4 比较指令60 4.9 逻辑操作指令61 4.10 移位操作指令62 4.10.1 右移指令62 4.10.2 左移指令64 4.11 反序操作指令65 4.12 扩展操作指令66 4.13 程序流控制指令67 4.14 存储器屏蔽指令68 4.15 异常相关指令69 4.16 休眠相关指令69 4.17 其他指令69 4.18 数据插入和对齐操作70 第5章 AHB-Lite总线结构分析71 5.1 总线及分类71 5.1.1 总线的概念71 5.1.2 总线的分类71 5.2 ARM AMBA系统总线72 5.3 AMBA3 AHB-Lite总线73 5.3.1 AHB-Lite概述73 5.3.2 AHB-Lite总线操作73 5.4 AHB-Lite总线结构74 5.4.1 全局信号75 5.4.2 AHB-Lite主设备接口75 5.4.3 AHB-Lite从设备接口77 5.4.4 地址译码器和多路选择器78 5.5 AHB-Lite总线时序79 5.5.1 无等待基本读传输80 5.5.2 有等待基本读传输80 5.5.3 无等待基本写传输81 5.5.4 有等待基本写传输81 5.6 硬件实现82 第6章 Cortex-M0低功耗特性83 6.1 低功耗要求83 6.2 Cortex-M0低功耗特性及优势83 6.2.1 Cortex-M0低功耗特性概述83 6.2.2 Cortex-M0低功耗结构84 6.3 Cortex-M0休眠模式84 6.4 唤醒中断控制器86 6.5 降低功耗的其他方法87 6.6 PSoC4 BLE低功耗特性87 6.6.1 休眠模式88 6.6.2 深度休眠模式89 6.6.3 冬眠模式90 6.6.4 停止模式91 6.7 功耗降低技术91 6.7.1 关闭未使用的组件92 6.7.2 以较低速度运行组件92 6.7.3 降低供电电压92 6.7.4 使用PSoC器件控制电流路径92 6.7.5 使用DMA传输数据93 6.8 其他功耗模式中需要注意的事项93 6.8.1 时钟93 6.8.2 看门狗定时器94 6.8.3 GPIO95 6.8.4 深度休眠模式和冬眠模式下的电压调节器96 6.8.5 调试接口96 第7章 Cortex-M0汇编语言编程基础97 7.1 Keil MDK开发套件97 7.1.1 下载MDK开发套件97 7.1.2 安装 MDK开发套件99 7.1.3 MDK程序处理流程100 7.2 Cortex-M0汇编语言程序设计102 7.2.1 建立新设计工程102 7.2.2 修改编译器设置102 7.2.3 添加汇编文件103 7.2.4 汇编语言语法说明106 7.2.5 添加C设计代码111 7.3 设计的硬件调试和运行111 7.4 汇编语言其他常用语法介绍114 7.4.1 标识符的命名规则114 7.4.2 变量114 7.4.3 常数115 7.4.4 EQU命令116 7.4.5 IMPORT/EXTERN命令116 7.4.6 子程序调用117 7.4.7 宏定义和使用117 第8章 中断系统的构建和实现119 8.1 设计定时器中断系统119 8.1.1 建立新的设计工程119 8.1.2 构建定时器中断硬件系统120 8.1.3 配置定时器中断组件120 8.1.4 设置定时器中断优先级121 8.1.5 使用自动生成的ISR121 8.1.6 创建自定义的ISR123 8.2 设计GPIO中断系统125 8.2.1 建立新的设计工程125 8.2.2 构建GPIO中断硬件系统126 8.2.3 配置GPIO中断组件126 8.2.4 添加引脚约束128 8.2.5 编写GPIO 的ISR128 8.2.6 设计下载129 8.3 有关中断的高级主题129 8.3.1 异常事件129 8.3.2 中断延迟130 8.3.3 优化中断代码131 8.3.4 带有内置中断的组件131 8.3.5 强制中断向量编号131 8.3.6 Systick定时器133 8.3.7 中断嵌套134 第9章 C语言代码设计与优化方法135 9.1 全局和本地变量135 9.1.1 全局变量135 9.1.2 局部变量136 9.1.3 静态变量136 9.2 编译器优化设置选项137 9.3 属性―attribute139 9.4 LDR和STR指令139 9.5 函数参数和结果141 9.6 C语言和汇编混合编程142 9.6.1 内嵌汇编的语法142 9.6.2 自动变量144 9.6.3 全局和静态变量144 9.6.4 函数参数146 9.7 特殊功能指令148 9.8 结构体的对齐处理148 9.9 编译器库149 9.9.1 使用标准的C语言库150 9.9.2 使用MicroLIB库进行编译151 9.9.3 不使用库进行编译151 9.10 放置代码和变量152 9.10.1 链接脚本文件152 9.10.2 放置程序156 9.10.3 一般性考虑157 0章 电容感应触摸控制模块原理及实现159 10.1 CapSense基本原理159 10.2 电容式触摸感应方法161 10.3 CapSense部件162 10.3.1 按键(零维)162 10.3.2 滑条(一维)163 10.3.3 触摸屏/触摸板(二维)163 10.3.4 接近度传感器(三维)164 10.4 屏蔽电极和保护传感器165 10.5 PSoC4中的CSD模块166 10.5.1 GPIO单元的电容-电流转换器166 10.5.2 开关时钟发生器168 10.5.3 电流-数字转换器168 10.5.4 模拟多路器169 10.5.5 屏蔽电极169 10.5.6 CMOD的预充电170 10.6 电容感应触摸的设计与实现171 10.6.1 建立新的设计工程171 10.6.2 在原理图中添加设计元件171 10.6.3 配置元件参数172 10.6.4 配置系统时钟174 10.6.5 编写软件代码175 10.6.6 配置引脚约束177 1章 低功耗蓝牙模块原理及实现179 11.1 低功耗蓝牙子系统(BLESS)179 11.1.1 BLESS特性179 11.1.2 BLESS框架和构成180 11.1.3 BLE状态180 11.2 标准服务与自定义服务181 11.3 健康温度计硬件系统的设计与实现182 11.3.1 建立新的设计工程182 11.3.2 添加并配置BLE组件183 11.3.3 添加和配置数字引脚组件187 11.3.4 添加中断组件188 11.3.5 添加和配置温度测量元件189 11.3.6 添加引脚约束193 11.3.7 修改系统时钟频率193 11.4 健康温度计软件的设计与实现194 11.4.1 配置固件194 11.4.2 系统初始化196 11.4.3 BLE事件处理程序197 11.4.4 系统的正常操作模式199 11.4.5 系统的低功耗工作状态199 11.4.6 传感器仿真200 11.5 系统硬件配置200 11.6 编程器件200 11.7 更新编程器固件201 11.8 使用CySmart中心仿真工具201 11.9 CySmart手机应用204 2章 通用数字块原理及实现206 12.1 通用数字块功能及特性206 12.2 UDB内部功能块207 12.2.1 PLD模块结构208 12.2.2 PLD宏单元209 12.3 数据通道模块210 12.3.1 工作寄存器210 12.3.2 动态数据通道配置RAM211 12.4 状态和控制模块212 12.5 基于UDB实现3位计数器设计212 12.5.1 建立新的PSoC工程213 12.5.2 添加自定义3位计数器IP核213 12.5.3 调用自定义3位计数器元件216 12.5.4 配置系统所用元件217 12.5.5 连接设计中的所有元件219 12.5.6 配置引脚221 12.5.7 编程及调试222 12.5.8 静态时序分析222 3章 模拟子系统原理及实现224 13.1 模拟子系统框架及功能224 13.1.1 模拟子系统框架224 13.1.2 高精度参考224 13.1.3 SAR ADC225 13.1.4 低功耗比较器226 13.1.5 微型连续时间模块226 13.1.6 LCD直接驱动模块226 13.1.7 温度传感器228 13.2 同相模拟增益放大器的原理及实现228 13.2.1 建立新的设计工程228 13.2.2 在原理图中添加模拟组件229 13.2.3 修改元件参数230 13.2.4 连接系统中的所有元件232 13.2.5 引脚分配233 13.2.6 添加软件控制代码235 13.2.7 设计下载与测试235 4章 FreeRTOS原理及应用236 14.1 嵌入式和实时的概念236 14.2 FreeRTOS架构概述237 14.2.1 FreeRTOS的功能237 14.2.2 硬件注意事项237 14.3 任务调度概述240 14.3.1 任务优先级和就绪列表240 14.3.2 系统节拍器(时钟)241 14.4 任务242 14.4.1 任务控制块242 14.4.2 任务设置244 14.5 列表245 14.6 队列248 14.7 信号灯和互斥250 14.8 实现251 14.9 移植FreeRTOS到PSoC4 BLE252 14.9.1 下载FreeRTOS源码252 14.9.2 建立一个新的设计工程252 14.9.3 修改编译器设置253 14.9.4 添加FreeRTOS源文件到工程254 14.9.5 在原理图中添加硬件组件255 14.9.6 添加引脚约束文件255 14.9.7 在主文件中添加应用代码256 14.9.8 下载设计到目标器件256

作者介绍


何宾,有名的嵌入式技术和EDA技术专家,长期从事电子信息技术方面的教学和科研工作,与优选多家知名的半导体厂商和EDA工具厂商大学计划保持紧密合作。目前已经出版电子信息技术方面的著作40余部,内容涵盖电路仿真、电路设计、可编程逻辑器件、数字信号处理、单片机、嵌入式系统、片上可编程系统等。典型的代表作有《模拟电子系统设计指南(基础篇):从半导体、分立元件到TI集成电路的分析与实现》、《模拟电子系统设计指南(实践篇):从半导体、分立元件到TI集成电路的分析与实现》、《Xilinx Zynq-7000嵌入式系统设计与实现-基于ARM Cortex-A9双核处理器和Vivado的设计方法》、《Altium Designer17一体化设计标准教程-从仿真原理和PCB设计到单片机系统》、《STC8系列单片机开发指南:面向处理器、程序设计和操作系统的分析与应用》、《Xilinx FPGA数字信号处理系统设计指南-基于HDL、Simulink和HLS的实现》等。

序言