书籍详情
基于S3C2440的嵌入式WinCE开发与实践
作者:董辉 著
出版社:电子工业出版社
出版时间:2017-08-01
ISBN:9787121322440
定价:¥55.00
购买这本书可以去
内容简介
本书循序渐进、全面地讲解ARM9各个模块的嵌入式开发以及基于ARM9的嵌入式操作系统Windows CE的系统定制、驱动开发与应用程序开发,本书提供大量实用案例,共13章,主要介绍S3C2440芯片各模块的功能以及相对应的寄存器,以及嵌入式操作系统Windows CE在S3C2440芯片上的嵌入式开发,并给出相关的实验代码来具体演示其实现过程。主要内容包括:S3C2440各时钟模块、GPIO、UART、存储控制器、NAND FLASH控制器、中断模块、ADC模块、LCD控制器、DMA控制器和SD控制器的嵌入式开发、Windows CE的平台构建与移植、Windows CE的应用程序开发及Windows CE驱动开发等。
作者简介
董辉,浙江工业大学副教授,拥有十余年的产业工作经验和一线教学经验,长期从事电子系统设计相关领域的教学和科研工作,经验丰富。
目录
目 录
第1章 嵌入式系统概述\t1
1.1 嵌入式系统基本概念\t1
1.2 嵌入式系统组成\t1
1.3 主流嵌入式操作系统\t4
1.3.1 VxWorks\t4
1.3.2 μC/OS-II\t4
1.3.3 Windows CE\t5
1.3.4 嵌入式Linux\t5
1.4 ARM处理器系列\t6
1.4.1 ARM微处理器系列\t6
1.5 S3C2440A处理器\t7
1.5.1 S3C2440A简介\t7
1.5.2 基本编程模型\t10
1.5.3 ARM指令集介绍\t18
1.6 开发板简介\t22
课后练习\t23
第2章 WinCE平台构建\t24
2.1 开发平台构建\t24
2.1.1 Platform Builder简介\t24
2.1.2 Platform Builder安装\t24
2.1.3 板级支持包BSP\t27
2.2 系统定制实验\t29
2.2.1 WinCE5.0系统定制\t29
2.2.2 编译系统\t33
2.2.3 Eboot下载\t35
2.2.4 操作系统下载\t35
2.3 SDK输出\t37
2.4 WinCE5.0调试\t40
2.4.1 WinCE模拟器\t40
2.4.2 WinCE5.0调试\t44
课后习题\t47
第3章 WinCE应用程序开发\t48
3.1 开发环境的构建\t48
3.1.1 Visual Studio 2005的安装\t48
3.1.2 SDK的安装\t53
3.2 应用程序开发\t55
3.2.1 新建项目\t55
3.2.2 控件编程\t59
3.2.3 进程编程\t62
3.2.4 多线程编程\t64
3.2.5 读写文件\t66
3.2.6 访问注册表\t68
3.2.7 网络编程\t71
课后习题\t78
第4章 时钟与定时器程序设计\t79
4.1 时钟概述\t79
4.1.1 系统时钟\t79
4.1.2 时钟控制逻辑\t81
4.1.3 慢速模式\t82
4.1.4 系统时钟特殊寄存器\t83
4.2 WatchDog\t87
4.2.1 WatchDog定时器简介\t87
4.2.2 看门狗定时器的特殊寄存器\t87
4.3 PWM定时器\t88
4.3.1 PWM定时器简介\t88
4.3.2 PWM定时器特殊寄存器\t90
4.3.3 PWM工作步骤与原理\t90
4.4 实时时钟RTC\t92
4.4.1 实时时钟简介\t92
4.4.2 实时时钟特殊功能寄存器\t93
4.5 PWM实验\t94
4.5.1 系统时钟设置\t94
4.5.2 实验测试\t95
4.5.3 实验结果\t97
4.6 RTC实验\t97
4.6.1 实验测试\t97
4.6.2 实验结果\t101
4.7 定时器模块在WinCE中的程序
设计\t102
4.7.1 PWM输出实验\t102
课后习题\t108
第5章 GPIO接口与UART串口应用\t109
5.1 S3C2440A的GPIO接口介绍\t109
5.1.1 GPIO寄存器\t109
5.1.2 寄存器地址\t110
5.2 LED灯实验\t110
5.2.1 硬件原理图\t110
5.2.2 寄存器配置\t111
5.2.3 实验测试\t112
5.3 串口通信原理和简介\t122
5.3.1 串口概述\t122
5.3.2 S3C2440A串口简介\t124
5.3.3 S3C2440A的串口操作\t125
5.4 S3C2440A的UART特殊功能
寄存器\t126
5.4.1 UART控制寄存器\t126
5.4.2 UART状态寄存器\t127
5.5 UART通信测试实验\t129
5.5.1 UART电路原理\t129
5.5.2 UART初始化程序\t129
5.5.3 UART测试程序\t130
5.5.4 UART通信实验结果\t133
5.6 基本接口模块\t134
5.6.1 GPIO输出控制实验\t134
5.6.2 串口控制实验\t135
课后习题\t142
第6章 存储器接口设计与WinCE
BootLoader\t143
6.1 存储器概述\t143
6.1.1 半导体存储器介绍\t143
6.1.2 动态随机存储器原理\t144
6.1.3 NAND Flash存储原理\t145
6.2 SDRAM内存管理\t146
6.2.1 地址空间与地址映射\t146
6.2.2 SDRAM工作原理\t148
6.2.3 内存管理模块特殊寄存器\t149
6.3 SDRAM测试实验\t150
6.3.1 SDRAM存储器接口\t150
6.3.2 初始化SDRAM\t151
6.4 NAND Flash介绍\t153
6.4.1 芯片介绍\t153
6.4.2 NAND Flash读操作\t155
6.4.3 NAND Flash擦除操作\t155
6.4.4 NAND Flash写操作\t155
6.5 NAND Flash控制器\t156
6.5.1 S3C2440A的NAND Flash
控制器特征\t156
6.5.2 NAND Flash控制器的配置\t157
6.5.3 NAND Flash控制器的特殊
寄存器\t158
6.6 NAND Flash测试实验\t160
6.6.1 NAND Flash实验电路及原理\t160
6.6.2 NAND Flash初始化\t160
6.6.3 读NAND Flash函数\t163
6.6.4 擦除NAND Flash函数\t164
6.6.5 写NAND Flash函数\t165
6.6.6 NAND Flash代码拷贝程序\t166
6.6.7 Nand Flash实验\t169
6.6.8 实验介绍\t170
6.6.9 使用NAND Flash注意事项:\t170
6.6.10 实验主要代码\t170
6.6.11 实验结果\t174
6.7 WinCE BootLoader\t175
6.7.1 WinCE5.0 Stepldr\t175
6.7.2 Eboot移植\t177
课后习题\t180
第7章 中断系统\t181
7.1 中断概述\t181
7.1.1 中断的定义及作用\t181
7.1.2 中断源\t181
7.1.3 中断向量与中断嵌套\t181
7.1.4 中断处理过程\t182
7.2 S3C2440A的中断系统\t183
7.2.1 S3C2440A中断控制系统\t183
7.2.2 S3C2440A中断源\t183
7.2.3 S3C2440A中断控制寄存器\t185
7.2.4 S3C2440A的IRQ中断处理
过程\t188
7.3 外部中断实验\t189
7.3.1 C语言实现中断过程\t189
7.3.2 外部中断寄存器配置\t191
7.3.3 实验测试\t192
7.3.4 实验结果\t195
课后习题\t195
第8章 ADC与触摸屏接口\t196
8.1 ADC与触摸屏工作原理\t196
8.1.1 ADC工作原理\t196
8.1.2 触摸屏工作原理\t196
8.2 S3C2440A的ADC及触摸屏接口\t198
8.3 ADC与触摸屏接口特殊寄存器\t199
8.4 触摸屏实验\t201
8.4.1 触摸屏实验寄存器配置\t201
8.4.2 实验测试\t202
8.4.3 实验结果\t205
课后习题\t205
第9章 LCD程序设计\t206
9.1 LCD基本概念\t206
9.1.1 LCD的发展历史\t206
9.1.2 LCD分类\t207
9.1.3 LCD参数介绍\t208
9.2 LCD工作原理\t208
9.2.1 显示原理\t209
9.2.2 LCD的驱动方式\t209
9.3 S3C2440A的LCD模块\t209
9.3.1 S3C2440A的LCD模块组成
结构\t209
9.3.2 S3C2440A的LCD控制器的
特性\t210
9.3.3 STN-LCD控制器配置\t211
9.3.4 TFT-LCD控制器配置\t216
9.4 S3C2440A的LCD控制器特殊
寄存器\t220
9.4.1 LCD控制器的控制寄存器
LCDCON1/2/3/4/5\t220
9.4.2 帧缓冲起始地址寄存器
LCDSADDR1/2/3\t222
9.4.3 视频显示寄存器\t222
9.4.4 LCD中断控制寄存器\t223
9.4.5 LCD寄存器设置向导\t224
9.5 LCD实验\t225
9.5.1 实验原理\t225
9.5.2 寄存器配置\t226
9.5.3 图片存储与显示\t229
9.5.4 实验测试及结果\t230
9.6 WinCE下的LCD接口实验\t230
课后习题\t232
第10章 DMA控制器介绍与应用\t233
10.1 DMA控制器介绍\t233
10.1.1 DMA控制器概述\t233
10.1.2 DMA控制器原理\t234
10.2 DMA控制器操作\t235
10.2.1 DMA基本时序\t235
10.2.2 查询/握手模式对比\t235
10.2.3 DMA特殊寄存器\t236
10.3 DMA编程与测试\t236
10.3.1 DMA数据传输\t236
10.3.2 DMA测试程序\t239
10.3.3 DMA测试实验结果\t240
课后习题\t241
第11章 SD存储卡\t242
11.1 SD存储卡的基本概念\t242
11.1.1 SD存储卡概述\t242
11.1.2 SD存储卡发展\t242
11.1.3 SD存储卡特性\t243
11.2 SD总线基本概念\t244
11.2.1 SD总线结构\t245
11.2.2 SD总线协议\t245
11.3 S3C2440A的SD/MMC控制器\t248
11.3.1 S3C2440A的SD/MMC控制器
简介\t248
11.3.2 S3C2440A的SD/MMC控制器
操作\t248
11.3.3 S3C2440A的SD/MMC控制器
特殊寄存器\t249
11.4 SD模块的编程与测试\t252
11.4.1 SD实验电路及原理\t252
11.4.2 SD模块初始化编程\t252
11.4.3 SD命令传输编程\t257
11.4.4 SD数据读/写编程\t259
11.4.5 SD测试程序\t265
11.4.6 SD测试实验结果\t267
课后习题\t267
第12章 WinCE5.0驱动编写\t268
12.1 WinCE5.0驱动分类\t268
12.1.2 驱动模型分类\t268
12.1.2 驱动程序的体系结构\t269
12.1.3 驱动加载方式\t269
12.2 流接口驱动开发\t270
12.2.1 接口函数分析\t270
12.2.2 驱动编译设置\t272
12.2.3 流接口驱动开发实例\t272
12.3 动态加/卸载驱动\t279
12.3.1 动态加/卸载驱动函数\t279
12.3.2 动态加/卸载驱动实验\t279
12.4 中断流驱动\t282
12.4.1 S3C2440A中断控制系统\t282
12.4.2 WinCE5.0中断流驱动\t284
12.4.3 应用程序读中断\t292
课后习题\t295
第13章 WinCE聊天程序和文件收发程序
设计\t296
13.1 WinCE聊天程序设计\t296
13.1.1 新建工程\t296
13.1.2 放置对话框控件\t298
13.1.3 初始化套接字\t299
13.1.4 消息处理\t300
13.1.5 字符转换\t301
13.1.6 添加事件处理程序\t302
13.2 文件传输\t306
13.2.1 添加CMessage类\t306
13.2.2 添加CServerSocket类\t307
13.2.3 添加CClientSocket类\t309
13.2.4 添加对话框控件\t311
13.2.5 创建套接字\t313
13.2.6 添加线程函数\t317
13.2.7 添加收发文件函数\t319
13.2.8 消息处理\t322
13.2.9 实验结果\t325
课后习题\t326
第1章 嵌入式系统概述\t1
1.1 嵌入式系统基本概念\t1
1.2 嵌入式系统组成\t1
1.3 主流嵌入式操作系统\t4
1.3.1 VxWorks\t4
1.3.2 μC/OS-II\t4
1.3.3 Windows CE\t5
1.3.4 嵌入式Linux\t5
1.4 ARM处理器系列\t6
1.4.1 ARM微处理器系列\t6
1.5 S3C2440A处理器\t7
1.5.1 S3C2440A简介\t7
1.5.2 基本编程模型\t10
1.5.3 ARM指令集介绍\t18
1.6 开发板简介\t22
课后练习\t23
第2章 WinCE平台构建\t24
2.1 开发平台构建\t24
2.1.1 Platform Builder简介\t24
2.1.2 Platform Builder安装\t24
2.1.3 板级支持包BSP\t27
2.2 系统定制实验\t29
2.2.1 WinCE5.0系统定制\t29
2.2.2 编译系统\t33
2.2.3 Eboot下载\t35
2.2.4 操作系统下载\t35
2.3 SDK输出\t37
2.4 WinCE5.0调试\t40
2.4.1 WinCE模拟器\t40
2.4.2 WinCE5.0调试\t44
课后习题\t47
第3章 WinCE应用程序开发\t48
3.1 开发环境的构建\t48
3.1.1 Visual Studio 2005的安装\t48
3.1.2 SDK的安装\t53
3.2 应用程序开发\t55
3.2.1 新建项目\t55
3.2.2 控件编程\t59
3.2.3 进程编程\t62
3.2.4 多线程编程\t64
3.2.5 读写文件\t66
3.2.6 访问注册表\t68
3.2.7 网络编程\t71
课后习题\t78
第4章 时钟与定时器程序设计\t79
4.1 时钟概述\t79
4.1.1 系统时钟\t79
4.1.2 时钟控制逻辑\t81
4.1.3 慢速模式\t82
4.1.4 系统时钟特殊寄存器\t83
4.2 WatchDog\t87
4.2.1 WatchDog定时器简介\t87
4.2.2 看门狗定时器的特殊寄存器\t87
4.3 PWM定时器\t88
4.3.1 PWM定时器简介\t88
4.3.2 PWM定时器特殊寄存器\t90
4.3.3 PWM工作步骤与原理\t90
4.4 实时时钟RTC\t92
4.4.1 实时时钟简介\t92
4.4.2 实时时钟特殊功能寄存器\t93
4.5 PWM实验\t94
4.5.1 系统时钟设置\t94
4.5.2 实验测试\t95
4.5.3 实验结果\t97
4.6 RTC实验\t97
4.6.1 实验测试\t97
4.6.2 实验结果\t101
4.7 定时器模块在WinCE中的程序
设计\t102
4.7.1 PWM输出实验\t102
课后习题\t108
第5章 GPIO接口与UART串口应用\t109
5.1 S3C2440A的GPIO接口介绍\t109
5.1.1 GPIO寄存器\t109
5.1.2 寄存器地址\t110
5.2 LED灯实验\t110
5.2.1 硬件原理图\t110
5.2.2 寄存器配置\t111
5.2.3 实验测试\t112
5.3 串口通信原理和简介\t122
5.3.1 串口概述\t122
5.3.2 S3C2440A串口简介\t124
5.3.3 S3C2440A的串口操作\t125
5.4 S3C2440A的UART特殊功能
寄存器\t126
5.4.1 UART控制寄存器\t126
5.4.2 UART状态寄存器\t127
5.5 UART通信测试实验\t129
5.5.1 UART电路原理\t129
5.5.2 UART初始化程序\t129
5.5.3 UART测试程序\t130
5.5.4 UART通信实验结果\t133
5.6 基本接口模块\t134
5.6.1 GPIO输出控制实验\t134
5.6.2 串口控制实验\t135
课后习题\t142
第6章 存储器接口设计与WinCE
BootLoader\t143
6.1 存储器概述\t143
6.1.1 半导体存储器介绍\t143
6.1.2 动态随机存储器原理\t144
6.1.3 NAND Flash存储原理\t145
6.2 SDRAM内存管理\t146
6.2.1 地址空间与地址映射\t146
6.2.2 SDRAM工作原理\t148
6.2.3 内存管理模块特殊寄存器\t149
6.3 SDRAM测试实验\t150
6.3.1 SDRAM存储器接口\t150
6.3.2 初始化SDRAM\t151
6.4 NAND Flash介绍\t153
6.4.1 芯片介绍\t153
6.4.2 NAND Flash读操作\t155
6.4.3 NAND Flash擦除操作\t155
6.4.4 NAND Flash写操作\t155
6.5 NAND Flash控制器\t156
6.5.1 S3C2440A的NAND Flash
控制器特征\t156
6.5.2 NAND Flash控制器的配置\t157
6.5.3 NAND Flash控制器的特殊
寄存器\t158
6.6 NAND Flash测试实验\t160
6.6.1 NAND Flash实验电路及原理\t160
6.6.2 NAND Flash初始化\t160
6.6.3 读NAND Flash函数\t163
6.6.4 擦除NAND Flash函数\t164
6.6.5 写NAND Flash函数\t165
6.6.6 NAND Flash代码拷贝程序\t166
6.6.7 Nand Flash实验\t169
6.6.8 实验介绍\t170
6.6.9 使用NAND Flash注意事项:\t170
6.6.10 实验主要代码\t170
6.6.11 实验结果\t174
6.7 WinCE BootLoader\t175
6.7.1 WinCE5.0 Stepldr\t175
6.7.2 Eboot移植\t177
课后习题\t180
第7章 中断系统\t181
7.1 中断概述\t181
7.1.1 中断的定义及作用\t181
7.1.2 中断源\t181
7.1.3 中断向量与中断嵌套\t181
7.1.4 中断处理过程\t182
7.2 S3C2440A的中断系统\t183
7.2.1 S3C2440A中断控制系统\t183
7.2.2 S3C2440A中断源\t183
7.2.3 S3C2440A中断控制寄存器\t185
7.2.4 S3C2440A的IRQ中断处理
过程\t188
7.3 外部中断实验\t189
7.3.1 C语言实现中断过程\t189
7.3.2 外部中断寄存器配置\t191
7.3.3 实验测试\t192
7.3.4 实验结果\t195
课后习题\t195
第8章 ADC与触摸屏接口\t196
8.1 ADC与触摸屏工作原理\t196
8.1.1 ADC工作原理\t196
8.1.2 触摸屏工作原理\t196
8.2 S3C2440A的ADC及触摸屏接口\t198
8.3 ADC与触摸屏接口特殊寄存器\t199
8.4 触摸屏实验\t201
8.4.1 触摸屏实验寄存器配置\t201
8.4.2 实验测试\t202
8.4.3 实验结果\t205
课后习题\t205
第9章 LCD程序设计\t206
9.1 LCD基本概念\t206
9.1.1 LCD的发展历史\t206
9.1.2 LCD分类\t207
9.1.3 LCD参数介绍\t208
9.2 LCD工作原理\t208
9.2.1 显示原理\t209
9.2.2 LCD的驱动方式\t209
9.3 S3C2440A的LCD模块\t209
9.3.1 S3C2440A的LCD模块组成
结构\t209
9.3.2 S3C2440A的LCD控制器的
特性\t210
9.3.3 STN-LCD控制器配置\t211
9.3.4 TFT-LCD控制器配置\t216
9.4 S3C2440A的LCD控制器特殊
寄存器\t220
9.4.1 LCD控制器的控制寄存器
LCDCON1/2/3/4/5\t220
9.4.2 帧缓冲起始地址寄存器
LCDSADDR1/2/3\t222
9.4.3 视频显示寄存器\t222
9.4.4 LCD中断控制寄存器\t223
9.4.5 LCD寄存器设置向导\t224
9.5 LCD实验\t225
9.5.1 实验原理\t225
9.5.2 寄存器配置\t226
9.5.3 图片存储与显示\t229
9.5.4 实验测试及结果\t230
9.6 WinCE下的LCD接口实验\t230
课后习题\t232
第10章 DMA控制器介绍与应用\t233
10.1 DMA控制器介绍\t233
10.1.1 DMA控制器概述\t233
10.1.2 DMA控制器原理\t234
10.2 DMA控制器操作\t235
10.2.1 DMA基本时序\t235
10.2.2 查询/握手模式对比\t235
10.2.3 DMA特殊寄存器\t236
10.3 DMA编程与测试\t236
10.3.1 DMA数据传输\t236
10.3.2 DMA测试程序\t239
10.3.3 DMA测试实验结果\t240
课后习题\t241
第11章 SD存储卡\t242
11.1 SD存储卡的基本概念\t242
11.1.1 SD存储卡概述\t242
11.1.2 SD存储卡发展\t242
11.1.3 SD存储卡特性\t243
11.2 SD总线基本概念\t244
11.2.1 SD总线结构\t245
11.2.2 SD总线协议\t245
11.3 S3C2440A的SD/MMC控制器\t248
11.3.1 S3C2440A的SD/MMC控制器
简介\t248
11.3.2 S3C2440A的SD/MMC控制器
操作\t248
11.3.3 S3C2440A的SD/MMC控制器
特殊寄存器\t249
11.4 SD模块的编程与测试\t252
11.4.1 SD实验电路及原理\t252
11.4.2 SD模块初始化编程\t252
11.4.3 SD命令传输编程\t257
11.4.4 SD数据读/写编程\t259
11.4.5 SD测试程序\t265
11.4.6 SD测试实验结果\t267
课后习题\t267
第12章 WinCE5.0驱动编写\t268
12.1 WinCE5.0驱动分类\t268
12.1.2 驱动模型分类\t268
12.1.2 驱动程序的体系结构\t269
12.1.3 驱动加载方式\t269
12.2 流接口驱动开发\t270
12.2.1 接口函数分析\t270
12.2.2 驱动编译设置\t272
12.2.3 流接口驱动开发实例\t272
12.3 动态加/卸载驱动\t279
12.3.1 动态加/卸载驱动函数\t279
12.3.2 动态加/卸载驱动实验\t279
12.4 中断流驱动\t282
12.4.1 S3C2440A中断控制系统\t282
12.4.2 WinCE5.0中断流驱动\t284
12.4.3 应用程序读中断\t292
课后习题\t295
第13章 WinCE聊天程序和文件收发程序
设计\t296
13.1 WinCE聊天程序设计\t296
13.1.1 新建工程\t296
13.1.2 放置对话框控件\t298
13.1.3 初始化套接字\t299
13.1.4 消息处理\t300
13.1.5 字符转换\t301
13.1.6 添加事件处理程序\t302
13.2 文件传输\t306
13.2.1 添加CMessage类\t306
13.2.2 添加CServerSocket类\t307
13.2.3 添加CClientSocket类\t309
13.2.4 添加对话框控件\t311
13.2.5 创建套接字\t313
13.2.6 添加线程函数\t317
13.2.7 添加收发文件函数\t319
13.2.8 消息处理\t322
13.2.9 实验结果\t325
课后习题\t326
猜您喜欢