| ISBN | 出版时间 | 包装 | 开本 | 页数 | 字数 |
|---|---|---|---|---|---|
| 未知 | 暂无 | 暂无 | 未知 | 0 | 暂无 |
第1章 嵌入式系统基本概念 1
1.1 嵌入式系统的基本特点 1
1.2 实时系统 3
1.2.1 基本概念 4
1.2.2 实时系统的特征 6
1.2.3 实时系统的分类 7
1.3 嵌入式系统设计要点 8
1.3.1 嵌入式处理器的选择 8
1.3.2 操作系统的选择 10
1.3.3 开发工具的选择 11
1.3.4 任务的划分及优先级安排 11
1.3.5 任务间通信方式的选择 12
1.3.6 最小时间片的确定 12
1.3.7 编程语言的选择 12
1.4 嵌入式系统的发展趋势 13
1.4.1 联网成为必然趋势 15
1.4.2 支持小型设备实现小尺寸、
微功耗和低成本 15
1.4.3 提供精巧的多媒体界面 16
第2章 嵌入式处理器 17
2.1 概述 17
2.2 CCM3118简介 18
2.3 操作模式 19
2.3.1 芯片工作模式 19
2.3.2 低功耗操作模式 20
2.4 编程模式与寄存器 20
2.4.1 编程模式 20
2.4.2 寄存器 21
2.5 数据格式 26
2.6 指令系统 26
2.6.1 指令系统综述 26
2.6.2 指令类型和寻址方式 30
2.7 异常和中断处理机制 34
2.7.1 异常处理概述 34
2.7.2 异常处理过程 34
2.7.3 异常类型 37
2.7.4 异常优先级 40
2.7.5 在异常悬停时的调试请求 41
2.7.6 异常处理程序的返回 41
2.8 处理器的中断控制器 41
2.8.1 寄存器地址映射 42
2.8.2 寄存器功能描述 43
2.8.3 中断处理的实现和中断
服务程序编写 48
2.9 SPI模块 49
2.9.1 引脚信号说明 49
2.9.2 寄存器地址映射 49
2.9.3 寄存器功能描述 50
2.10 SCI模块 54
2.10.1 引脚信号说明 55
2.10.2 寄存器地址映射 55
2.10.3 寄存器功能描述 55
2.11 PS/2主机控制器模块 62
2.11.1 引脚信号说明 62
2.11.2 寄存器地址映射 62
2.11.3 寄存器功能描述 63
2.12 通用读卡器模块 70
2.12.1 引脚信号说明 71
2.12.2 寄存器地址映射 71
2.12.3 寄存器功能描述 71
2.13 液晶显示控制器模块 79
2.13.1 引脚信号说明 79
2.13.2 寄存器地址映射 79
2.13.3 寄存器功能描述 80
第3章 嵌入式操作系统 91
3.1 嵌入式实时操作系统与通用操作
系统的差异 91
3.2 嵌入式操作系统的技术特点 95
3.2.1 微内核结构 96
3.2.2 任务调度 96
3.2.3 硬实时和软实时 96
3.2.4 内存管理 96
3.2.5 实时系统的通信 97
3.2.6 内核加载方式 98
3.3 嵌入式实时操作系统的体系结构 98
3.3.1 层次模型 99
3.3.2 单内核 99
3.3.3 微内核 99
3.3.4 虚拟机 100
3.3.5 客户机/服务器 101
3.4 嵌入式实时操作系统的关键技术
指标 102
3.4.1 任务调度算法 102
3.4.2 上下文切换时间 102
3.4.3 中断响应时间 103
3.4.4 确定性 103
3.4.5 最大中断禁止时间 103
3.4.6 系统开销 103
3.5 嵌入式实时操作系统的设计原则 103
3.5.1 实时进程调度算法 105
3.5.2 实时进程调度算法的
正确性 107
3.5.3 实时系统的内存 107
3.5.4 外围设备管理 108
3.6 嵌入式实时操作系统现状 108
3.7 嵌入式实时操作系统发展趋势 111
3.7.1 特定应用嵌入式实时操作
系统 111
3.7.2 嵌入式安全实时操作系统 114
第4章 嵌入式Linux 117
4.1 Linux发展简史 117
4.2 Linux内核原理 119
4.3 Linux内核简析 122
4.3.1 Linux源码文件组织结构 122
4.3.2 Linux内核引导与初始化 123
4.3.3 中断处理 125
4.3.4 系统调用 125
4.3.5 进程调度 126
4.3.6 内存管理 128
4.4 Linux的基本命令 130
4.4.1 进入与退出系统 130
4.4.2 文件的复制、删除和
移动命令 131
4.4.3 目录的创建与删除命令 132
4.4.4 Linux文本处理命令 135
4.4.5 Linux备份与压缩命令 136
4.4.6 Linux系统管理命令 138
4.4.7 Linux磁盘管理 139
4.5 嵌入式Linux 141
4.5.1 嵌入式Linux设计过程 142
4.5.2 实时内核设计 143
4.5.3 流行的嵌入式Linux版本 147
4.6 基于C*Core的嵌入式
JARI-Linux 148
4.6.1 C*Core与Intel 80386处理器
体系结构的差别 148
4.6.2 JARI-Linux内核设计 149
4.6.3 JARI-Linux在JARI-EVB3118
开发板上的应用 155
第5章 嵌入式系统接口技术 159
5.1 接口概述 159
5.1.1 接口的基本概念 159
5.1.2 接口的功能 160
5.1.3 接口的组成 161
5.1.4 接口的数据传输方式 162
5.2 串行接口技术 165
5.2.1 基本概念 165
5.2.2 通用异步收发器 166
5.2.3 串行接口RS-232C标准 172
5.2.4 串行接口RS-422标准 174
5.3 并行接口技术 175
5.3.1 并行接口概述 175
5.3.2 可编程并行接口
芯片8255A 176
5.4 网络接口技术 179
5.4.1 网络概述 179
5.4.2 OSI 体系结构 180
5.4.3 以太网技术简介 181
5.4.4 介质访问控制协议
CSMA/CD 182
5.4.5 以太网地址 183
5.4.6 以太网的帧格式 183
5.4.7 网络互连设备 184
5.4.8 网络体系结构 189
5.4.9 解决通信时间不确定性的
几种方法 190
5.4.10 几种容错网络方案 192
5.5 数字/模拟、模拟/数字转换接口
技术 194
5.5.1 数模(D/A)转换器 194
5.5.2 模数(A/D)转换器 195
5.6 串行总线扩展技术 196
5.6.1 USB(通用串行总线) 196
5.6.2 IEEE-1394 197
5.6.3 I2C总线接口 198
第6章 嵌入式软件开发工具的设计 200
6.1 嵌入式软件开发过程及其
基本知识 200
6.1.1 什么是宿主机与目标机 200
6.1.2 早期的嵌入式软件开发
方式 201
6.1.3 现代的嵌入式软件开发方式
——交叉开发 201
6.1.4 交叉开发基本模型 203
6.2 嵌入式IDE开发方案的选择 204
6.3 功能与界面设计要点 206
6.4 基于Windows的IDE如何集成
GCC工具链 209
6.4.1 生成GCC工具链 209
6.4.2 在IDE的输出窗口中实时
显示编译信息 212
6.4.3 在IDE中双击编译信息实现
警告或错误定位 219
6.5 工程管理器的运用 222
6.5.1 功能与界面实现 222
6.5.2 工程管理与Makefile 224
6.5.3 工程管理器的技术实现 230
6.6 联机与程序下载 234
6.6.1 联机 234
6.6.2 程序下载 235
6.7 交叉调试器的实现 236
6.7.1 如何使下载的程序开始
运行 237
6.7.2 怎么在断点处停下来 238
6.7.3 下一步该停在哪儿 240
6.7.4 寄存器、内存和变量的
查看与修改是如何实现的 240
6.7.5 让调试器变得更体贴 243
第7章 基于Linux的编程实例 246
7.1 C*Core多功能开发板简介 246
7.1.1 存储器设计 247
7.1.2 接口设计和引脚说明 248
7.2 JARI-IDE简介 258
7.3 怎样使用仿真器 268
7.3.1 仿真器硬件及配置 268
7.3.2 仿真器的使用方法 268
7.3.3 仿真器调试程序的
具体步骤 269
7.4 中断处理 273
7.4.1 C*Core中断源 273
7.4.2 Linux中断处理 275
7.4.3 中断处理程序示例 276
7.5 看门狗定时器 280
7.5.1 看门狗定时器的操作模式及
寄存器 280
7.5.2 看门狗示例程序 283
7.6 音频输出 286
7.6.1 音频原理和说明 286
7.6.2 音频输出示例程序实验 287
7.7 文件系统应用 288
7.7.1 Linux文件系统特点 288
7.7.2 Yaffs文件系统的
基本原理 289
7.7.3 Linux下的文件系统应用 290
7.8 异步串行端口 290
7.8.1 异步串行I/O原理 290
7.8.2 串口终端函数 291
7.8.3 串行端口应用 292
7.9 SPI接口 294
7.9.1 C*Core SPI接口说明 295
7.9.2 SPI接口处理程序示例 296
7.10 I2C串行接口实验 297
7.10.1 I2C接口电路说明 297
7.10.2 示例程序 301
7.11 PS/2键盘实验 309
7.11.1 键盘按键的工作原理 309
7.11.2 PS/2键盘接口 309
7.11.3 键盘驱动程序流程 310
7.11.4 PS/2键盘应用程序示例 310
7.12 UCI接口实验 311
7.12.1 UCI简介 311
7.12.2 C*Core的UCI接口 312
7.12.3 UCI接口处理示例 312
7.13 矩阵键盘实验 315
7.13.1 矩阵键盘简介 315
7.13.2 键盘按键值的获取 315
7.13.3 矩阵键盘处理示例程序 316
7.14 USB接口实验 318
7.14.1 USB接口的特点 318
7.14.2 USB协议简介 319
7.14.3 USB设备在Linux内核中的
??配置 320
7.14.4 USB接口示例程序 321
7.15 Linux驱动框架 322
7.15.1 Linux系统下的设备驱动
? 程序 323
7.15.2 设备驱动程序设计示例 324
7.16 以太网卡驱动程序 326
7.16.1 8390网卡工作原理 327
7.16.2 网卡驱动程序示例 327
7.17 图形界面设计示例 329
7.17.1 图形界面简介 329
7.17.2 Nano-X的图形显示应用 330
7.17.3 图形界面设计示例 331
第8章 应用案例 339
8.1 零售网络管理信息系统简介 339
8.2 零售信息终端的工作原理及
主要功能 340
8.2.1 主要功能 340
8.2.2 设备组成原理 340
8.3 零售信息终端设计方案 342
8.3.1 硬件设计方案 342
8.3.2 零售信息终端软件方案 347
8.4 应用软件设计 350
8.4.1 初始化代码 350
8.4.2 输入事件处理模块 350
8.4.3 显示处理模块 351
8.4.4 数据处理模块 352
8.4.5 输入处理模块 352
8.4.6 远程数据传输模块的设计 353