当前位置:首页 > 工业技术
基于32位ColdFire构建嵌入式系统
基于32位ColdFire构建嵌入式系统

基于32位ColdFire构建嵌入式系统PDF电子书下载

工业技术

  • 电子书积分:14 积分如何计算积分?
  • 作 者:王宜怀编译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121092121
  • 页数:434 页
图书介绍:本书以Freescale 32位微控制器ColdFire系列的MCF52233为蓝本阐述嵌入式系统的软件与硬件设计。全书共18章,本书配有网络光盘,包含了ColdFire系列微控制器开发环境的安装文件、书中提供的所有实例源程序、辅助资料、相关芯片资料及常用软件工具。本书可供大学有关专业的高年级学生和研究生用作教材或参考读物,也可供嵌入式系统开发与研究人员用作参考和进修资料。
上一篇:金属压力加工 下下一篇:沼气简答
《基于32位ColdFire构建嵌入式系统》目录

第1章 概述 1

1.1 嵌入式系统定义、由来及特点 1

1.1.1 嵌入式系统的定义 1

1.1.2 嵌入式系统的由来及其与微控制器的关系 2

1.1.3 嵌入式系统的特点 3

1.2 嵌入式系统的知识体系、学习误区及学习建议 4

1.2.1 嵌入式系统的知识体系 4

1.2.2 嵌入式系统的学习误区 5

1.2.3 基础阶段的学习建议 8

1.3 嵌入式系统常用术语 9

1.3.1 与硬件相关的术语 9

1.3.2 与通信相关的术语 11

1.3.3 与功能模块及软件相关的术语 12

1.4 嵌入式系统常用的标准C语言基本语法概要 13

1.5 本书学习与实践资料索引 22

第2章 ColdFire概述与MCF52233硬件最小系统 24

2.1 ColdFire系列微处理器概述 24

2.2 MCF5223x系列微控制器存储器映像与编程结构 26

2.2.1 MCF5223x性能概述与内部结构简图 26

2.2.2 MCF5223x存储器映像 28

2.2.3 编程模式与寻址方式 28

2.2.4 ColdFire异常和中断控制 31

2.3 MCF52233的引脚功能与硬件最小系统 33

2.3.1 MCF52233的引脚功能 33

2.3.2 MCF52233的硬件最小系统 35

2.3.3 硬件最小系统测试方法 38

第3章 第一个样例程序及ColdFire工程组织 41

3.1 通用I/O接口基本概念及连接方法 41

3.2 MCF52233的GPIO 43

3.2.1 MCF52233 GPIO编程的基本原理 43

3.2.2 GPIO模块寄存器与GPIO的编程基本方法 44

3.3 开发套件CodeWarrior开发环境与ColdFire写入器 46

3.3.1 CodeWarrior开发环境简介与基本使用方法 46

3.3.2 WA-Ⅰ型32位ColdFire写入器 47

3.3.3 MCF52233EVB硬件评估板 48

3.4 CW工程文件组织 48

3.4.1 工程文件的组织 48

3.4.2 初始化相关文件 50

3.4.3 主程序、中断程序及其他文件 53

3.4.4 链接文件及机器码文件 56

3.5 第一个应用实例:控制小灯闪烁 59

3.5.1 GPIO构件 60

3.5.2 Light构件 65

3.5.3 Light测试工程主程序 67

3.6 理解第一个C工程的执行过程 68

第4章 异步串行通信与直接存储器访问 71

4.1 异步串行通信的基础知识 71

4.1.1 基本概念 71

4.1.2 RS-232C总线标准 73

4.1.3 电平转换电路原理 74

4.2 MCF52233的UART模块的物理结构 76

4.3 MCF52233的UART模块的编程结构 79

4.4 基于构件方法的UART编程 82

4.4.1 UART构件的函数原型设计 82

4.4.2 UART构件的头文件 83

4.4.3 UART构件的源程序文件 86

4.4.4 UART构件的测试工程 91

4.5 ColdFire第一个带有中断功能的实例 92

4.6 MCF52233的四通道DMA控制器 95

4.6.1 DMA概述 95

4.6.2 MCF52233四通道DMA特点 95

4.6.3 MCF52233的DMA控制器编程结构 96

4.7 MCF52233的DMA编程要点 99

4.7.1 DMA初始化 100

4.7.2 DMA启动序列与重启序列 100

4.8 基于构件的带DMA的UART编程实例 101

4.8.1 DMA构件的函数原型设计 101

4.8.2 DMA构件的头文件 101

4.8.3 DMA构件的源程序文件 105

4.8.4 DMA方式收/发测试实例 108

4.9 进一步讨论 110

4.9.1 流控制与Break信号 110

4.9.2 延长串口通信的距离 111

4.9.3 串口的扩展 111

第5章 GPIO的应用实例——键盘、LED与LCD 113

5.1 键盘 113

5.1.1 键盘模型及接口 113

5.1.2 键盘编程的基本问题 114

5.1.3 键盘编程实例 114

5.2 码管LED 121

5.2.1 描法编程原理 121

5.2.2 码管编程实例 122

5.3 液晶LCD 126

5.3.1 HD44780的编程结构 126

5.3.2 点阵字符型LCD编程实例 127

第6章 MCF52233的A/D转换模块 133

6.1 A/D转换的基本问题 133

6.2 MCF52233的A/D转换结构与特性 134

6.3 MCF52233的A/D模块编程寄存器 135

6.4 基于构件的A/D编程 144

6.4.1 A/D构件的函数原型设计 144

6.4.2 A/D构件的头文件 145

6.4.3 A/D构件的源程序文件 146

6.5 MCF52233 A/D模块编程实例——物理量采集回归系统 149

6.5.1 低端软件设计 149

6.5.2 高端软件设计 151

6.6 常用传感器简介及一个典型信号采样电路设计 152

6.6.1 常用传感器简介 152

6.6.2 电阻型传感器采样电路设计 154

第7章 定时器相关模块及其应用 156

7.1 可编程中断定时器 156

7.1.1 PIT模块的编程寄存器 156

7.1.2 PIT模块的运行模式与编程方法 157

7.1.3 PIT模块的编程实例 158

7.2 通用定时器GPT模块 161

7.2.1 计数器/定时器的基本工作原理 161

7.2.2 定时器模块的定时计数功能 162

7.2.3 定时器模块的输入捕捉功能 166

7.2.4 定时器模块的输出比较功能 171

7.2.5 定时器模块的脉冲累加功能 174

7.3 PWM与D/A转换 177

7.3.1 PWM基本概念 177

7.3.2 PWM的编程寄存器 179

7.3.3 PWM的编程实例 182

7.3.4 PWM的进一步讨论 189

7.3.5 用PWM实现D/A转换 190

第8章 队列式串行外设接口 191

8.1 SPI的基本工作原理 191

8.1.1 SPI基本概念 191

8.1.2 SPI的数据传输 192

8.1.3 SPI模块的时序 193

8.1.4 模拟SPI 194

8.2 MCF52233队列串行外设接口(QSPI)模块编程结构 195

8.2.1 QSPI概述 195

8.2.2 QSPI工作原理 196

8.2.3 QSPI功能描述 197

8.2.4 QSPI模块寄存器 198

8.2.5 发送延时 202

8.3 MCF52233的串行外设接口QSPI模块编程实例 203

第9章 I2C模块及应用实例 209

9.1 I2C模块 209

9.1.1 I2C总线特点 209

9.1.2 I2C总线标准的发展历史 210

9.1.3 I2C总线的相关术语 210

9.2 I2C总线工作原理 211

9.2.1 总线上数据的有效性 211

9.2.2 总线上的信号 211

9.2.3 总线上数据传输格式 213

9.2.4 I2C总线寻址约定 213

9.2.5 主机向从机读/写1个字节数据的过程 213

9.3 I2C模块的编程基础 214

9.3.1 MCF52233的I2C模块 214

9.3.2 MCF52233的I2C模块寄存器介绍 215

9.3.3 MCF52233的I2C模块编程 218

9.4 MCF52233的I2C模块的进一步讨论 224

9.4.1 仲裁程序 224

9.4.2 实现数据传输同步交换 225

第10章 Flash在线编程 226

10.1 Flash存储器概述 226

10.2 ColdFire Flash存储器编程方法 227

10.2.1 ColdFire Flash模块寄存器 228

10.2.2 ColdFire Flash存储器擦除/写入的步骤 231

10.3 ColdFire Flash擦除/写入函数的测试工程 236

10.4 ColdFire Flash存储器的保护特性和安全性 237

10.4.1 ColdFire Flash存储器的保护特性 237

10.4.2 ColdFire Flash存储器的安全性 237

第11章 MCF52235 FlexCAN模块编程方法 241

11.1 CAN总线通用知识 241

11.1.1 CAN总线协议的历史概况 241

11.1.2 CAN硬件系统的典型电路 241

11.1.3 CAN总线的有关基本概念 244

11.1.4 帧结构 247

11.1.5 位时间 250

11.2 MCF52235 FlexCAN模块概述与编程结构 251

11.2.1 FlexCAN特性 251

11.2.2 操作模式 252

11.2.3 FlexCAN模块的内存映像以及寄存器定义 254

11.2.4 FlexCAN报文缓冲区(Message Buffer,MB) 259

11.3 MCF52235 FlexCAN模块报文发送与接收函数设计 263

11.3.1 数据帧发送/接收 263

11.3.2 远程帧发送/接收 267

11.3.3 仲裁处理、匹配处理及报文缓冲区管理 271

11.4 MCF52235 FlexCAN模块编程实例 272

11.4.1 初始化函数设计 272

11.4.2 MCF52235 FlexCAN模块测试工程说明 274

11.5 进一步讨论 276

第12章 基于MCF52233的嵌入式以太网 280

12.1 嵌入式以太网相关基础知识 280

12.1.1 以太网的由来与协议模型 280

12.1.2 以太网中主要物理设备 283

12.1.3 相关名词解释 284

12.2 MCF52233以太网模块外部连接及编程基础 288

12.2.1 以太网模块引脚及硬件连接 288

12.2.2 以太网物理层收/发器EPHY的编程基础 290

12.2.3 第一个测试实例:网络连接 294

12.2.4 快速以太网控制器FEC的编程基础 299

12.3 链路层编程 307

12.3.1 FEC初始化函数FEC_Init 307

12.3.2 以太帧发送 311

12.3.3 以太帧接收 313

12.3.4 第二个测试实例:以太帧的发送和接收 315

12.3.5 第三个测试实例:链路层ARP协议编程 317

12.4 网络层的IP协议与ICMP协议编程 320

12.4.1 IP协议简介 320

12.4.2 第四个测试实例:使用ICMP协议响应Ping请求 322

12.5 传输层的UDP与TCP协议编程 324

12.5.1 UDP协议概述 324

12.5.2 第五个测试实例:UDP报文的发送和接收 324

12.5.3 TCP协议概述 326

12.5.4 第六个测试实例:TCP报文的发送和接收 326

12.6 应用层的HTTP协议编程 329

12.6.1 HTTP协议概述 330

12.6.2 第七个测试实例:HTTP协议静态页面的实现 332

第13章 其他模块 333

13.1 时钟模块 333

13.2 芯片配置模块 334

13.2.1 芯片配置模块简介 335

13.2.2 芯片配置模块寄存器定义 335

13.3 系统控制模块 336

13.3.1 系统控制模块功能概述 336

13.3.2 系统控制模块的可编程寄存器 337

13.3.3 对系统初始化过程的理解 339

13.4 实时时钟模块 341

13.5 电源管理模块 343

13.5.1 低功耗模式 343

13.5.2 低功耗模式下的外设行为 344

13.5.3 电源管理模块寄存器定义 344

13.6 复位控制模块 345

第14章 基于MCF52223的USB 2.0编程 347

14.1 USB基本概念及硬件特性 347

14.1.1 USB概述 347

14.1.2 USB相关基本概念 349

14.1.3 USB的物理特性 354

14.2 USB的通信协议 356

14.2.1 USB基本通信单元:包 356

14.2.2 USB通信中的事务处理 358

14.2.3 从设备的枚举看USB数据传输 360

14.3 MCF52223硬件最小系统及USB模块功能简介 364

14.3.1 MCF52223硬件最小系统 364

14.3.2 MCF52223的USB模块功能简介 365

14.3.4 MCF52223的USB模块主要寄存器介绍 366

14.4 MCF52223作为USB从机的开发方法 370

14.4.1 PC端USB设备驱动程序的选择及基本原理 370

14.4.2 PC作为USB主机的程序设计 374

14.4.3 MCF52223作为USB从机的程序设计 377

14.5 MCF52223作为USB主机的开发方法 381

14.5.1 MCF52223作为USB主机的基本功能 381

14.5.2 USB主机与CDC类USB设备通信 383

14.5.3 USB主机与MassStorage类USB设备通信 384

14.6 采用OTG技术的USB系统开发方法 384

第15章 μC/OS-Ⅱ在ColdFire上的移植与应用 388

15.1 实时操作系统概述 388

15.1.1 实时操作系统基本含义和要求 388

15.1.2 任务和多任务 388

15.1.3 RTOS的常用术语 389

15.1.4 RTOS的现状 390

15.2 嵌入式实时操作系统μC/OS-Ⅱ 392

15.2.1 μC/OS-Ⅱ简介 392

15.2.2 μC/OS-Ⅱ与几种RTOS的比较 393

15.2.3 μC/OS-Ⅱ中的任务 393

15.2.4 μC/OS-Ⅱ用户应用程序的一般结构 394

15.3 μC/OS-Ⅱ的任务划分 395

15.3.1 任务划分的目标 396

15.3.2 任务划分的方法 396

15.4 μC/OS-Ⅱ在MCF52233上的应用实例 398

15.4.1 基于μC/OS-Ⅱ的应用实例 398

15.4.2 与无RTOS实例的比较 400

15.5 μC/OS-Ⅱ在MCF52233上的移植 401

15.5.1 定义内核的大小和功能 401

15.5.2 与硬件相关的代码 403

第16章 基于硬件构件的嵌入式系统开发方法 407

16.1 嵌入式系统开发所遇到的若干问题 407

16.2 嵌入式硬件构件的基本思想与应用方法 408

16.3 基于硬件构件的嵌入式系统硬件电路设计原则 408

16.3.1 设计时需要考虑的基本问题 408

16.3.2 硬件构件化电路原理图绘制规则 409

16.3.3 PCB设计基本原则 411

16.4 基于硬件构件的嵌入式底层软件构件的编程方法 413

16.4.1 嵌入式硬件构件和软件构件的层次模型 413

16.4.2 底层构件的实现方法与编程思想 414

16.4.3 硬件构件及底层软件构件的重用与移植方法 416

16.5 硬件构件化嵌入式开发技术的应用实例 417

16.5.1 系统功能 417

16.5.2 硬件设计 418

16.5.2 软件设计 422

附录A 425

附录B 427

附录C 430

参考文献 434

返回顶部