IAR Embedded Workbench快速入门
|
|
- 慕淘 鱼
- 7 years ago
- Views:
Transcription
1 2006 年 2 月 IAR EWARM 快 速 入 门 (V1.0) 0
2 目 录 前 言 1 第 一 章 EWARM 集 成 开 发 环 境 及 配 套 仿 真 器. 2 第 二 章 在 EWARM 中 生 成 一 个 新 项 目 第 三 章 编 译 和 连 接 应 用 程 序 第 四 章 用 C-SPY 调 试 应 用 程 序 第 五 章 EWARM Flash Loader 开 发 指 南
3 编 者 序 IAR Embedded Workbench for ARM 是 IAR Systems 公 司 为 ARM 微 处 理 器 开 发 的 一 个 集 成 开 发 环 境 ( 下 面 简 称 IAR EWARM) 比 较 其 他 的 ARM 开 发 环 境,IAR EWARM 具 有 入 门 容 易 使 用 方 便 和 代 码 紧 凑 等 特 点 故 在 这 里 介 绍 给 打 算 学 习 使 用 或 正 在 使 用 ARM 芯 片 的 朋 友 们 共 同 探 讨 IAR Systems 公 司 目 前 推 出 的 最 新 版 本 是 IAR Embedded Workbench for ARM version 4.31, 并 提 供 一 个 32k 代 码 限 制 但 时 间 限 制 长 达 25 年 的 免 费 评 估 版 有 兴 趣 的 朋 友 可 以 到 IAR 公 司 的 网 站 或 的 网 站 ( 本 地 网 站 ) 去 寻 找 和 下 载 IAR EWARM 中 包 含 一 个 全 软 件 的 模 拟 程 序 (simulator) 用 户 不 需 要 任 何 硬 件 支 持 就 可 以 模 拟 各 种 ARM 内 核 外 部 设 备 甚 至 中 断 的 软 件 运 行 环 境 从 中 可 以 了 解 和 评 估 IAR EWARM 的 功 能 和 使 用 方 法 我 们 编 译 整 理 的 这 本 快 速 用 户 指 南 采 用 评 估 版 软 件 安 装 目 录 C:\Program files\iar System\Embedded workbench 4.0\ARM\tutor 下 的 教 程 为 例, 一 步 一 步 介 绍 IAR EWARM 的 使 用 方 法 该 教 程 采 用 了 两 个 C 语 言 程 序,tutor.c 和 utilities.c 它 们 不 和 任 何 特 定 的 硬 件 关 联, 所 以 介 绍 中 的 全 部 操 作 都 是 用 模 拟 程 序 完 成 的 在 以 后 的 章 节 里, 我 们 将 具 体 介 绍 EWARM 软 件 及 配 套 硬 件 工 具 如 何 使 用 EWARM 集 成 开 发 环 境 以 及 在 EWARM 下 烧 写 Flash 的 方 法 如 果 用 户 希 望 在 真 实 的 目 标 板 上 进 行 代 码 运 行 和 调 试, 请 到 全 国 各 直 销 点 购 买 IAR 的 JTAG 仿 真 器 J-Link 宋 祈 真 2006 年 于 南 京 附 :EWARM 的 学 习 步 骤 1 下 载 安 装 EWARM 32K 学 习 版 软 件 ; 2 进 入 -> Online Demos, 下 载 Flash 格 式 的 软 件 使 用 动 画 演 示 ; 3 以 本 入 门 手 册 结 合 软 件 使 用 的 动 画 演 示, 进 行 软 件 使 用 的 入 门 学 习 ; 4 在 软 件 安 装 目 录...\arm\src\examples 下, 寻 找 感 兴 趣 的 芯 片 例 程 学 习 ; 5 可 选 项 1: 购 买 J-Link 仿 真 器 和 开 发 板, 实 现 在 硬 件 上 的 代 码 运 行 和 调 试 ; 6 可 选 项 2: 购 买 由 北 航 出 版 社 的 IAR EWARM 嵌 入 式 系 统 编 程 与 实 践 一 书, 深 入 学 习 ; 7 学 习 可 选 项 1 或 2 的 随 附 光 盘 中 Converting ADS Projects to EWARM Projects 白 皮 书, 实 践 如 何 移 植 一 个 ADS 工 程 到 EWARM 格 式 的 工 程 1
4 第 一 章 EWARM 集 成 开 发 环 境 及 配 套 仿 真 器 IAR Embedded Workbench for ARM version 4.31 是 一 个 针 对 ARM 处 理 器 的 集 成 开 发 环 境, 包 含 项 目 管 理 器 编 辑 器 编 译 连 接 工 具 和 支 持 RTOS 的 调 试 工 具, 在 该 环 境 下 可 以 使 用 C/C++ 和 汇 编 语 言 方 便 地 开 发 嵌 入 式 应 用 程 序 IAR EWARM 的 主 要 模 块 如 下 : 项 目 管 理 器 功 能 强 大 的 编 辑 器 高 度 优 化 的 IAR ARM C/C++ Compiler IAR ARM Assembler 1 个 通 用 的 IAR XLINK Linker IAR XAR 和 XLIB 建 库 程 序 和 IAR DLIB C/C++ 运 行 库 IAR C-SPY 调 试 器 ( 先 进 的 高 级 语 言 调 试 器 ) 命 令 行 实 用 程 序 以 下 介 绍 一 下 EWARM 4.31 版 本 及 其 相 关 配 套 硬 件 的 一 些 特 点 : 1. IAR EWAM 软 件 的 特 点 1 EWARM 4.31 版 基 本 特 点 完 善 的 ARM 内 核 支 持 - 最 新 支 持 到 ARM11 内 核 (ARM1136J,ARM1136J-S,ARM1136JF,ARM1136JF-S) - 早 已 支 持 的 其 他 ARM 内 核 ARM7(ARM7TDMI,ARM7TDMI-S,ARM720T) ARM9(ARM9TDMI,ARM920T,ARM922T,ARM940T,ARM9E,ARM9E-S, ARM926EJ-S,ARM946E-S,ARM966E-S,ARM968E-S) ARM10(ARM10E,ARM1020E,ARM1022E,ARM1026EJ-S) XScale(XScale,XScale-IR7) 更 加 客 户 化 地 提 供 芯 片 级 的 支 持 - 完 备 的 各 厂 商 ARM 处 理 器 的 C/C++ 和 汇 编 语 言 外 设 寄 存 器 定 义 文 件 支 持 的 芯 片 厂 商 有 Analog Devices ARM Atmel Cirrus Logic Freescale Intel NetSilicon OKI Philips Samsung Sharp ST 和 TI - 支 持 Analog Devices Atmel Freescale OKI Philips ST 和 TI 等 厂 商 的 ARM 处 理 器 的 Flash Loader 程 序 - 软 件 集 成 了 200 余 个 代 码 例 程, 对 应 于 各 种 不 同 的 芯 片, 位 于...\arm\src\examples 目 录 下 进 一 步 改 进 了 编 译 器 速 度 优 化, 重 写 了 的 浮 点 运 算 库 2
5 对 更 多 嵌 入 式 操 作 系 统 的 支 持 - 新 增 支 持 OSEK 类 操 作 系 统 的 OSEK Run-Time Interface (ORTI) - 新 增 支 持 OSE Epsilon RTOS 的 Kernel Awareness 调 试 - 新 增 支 持 embos SMX NORTi 等 的 支 持 调 试 器 的 增 强 功 能 - 对 堆 栈 运 行 的 监 测 功 能 - 配 合 IAR J-Link 仿 真 器 的 新 增 功 能 J-Link TCP/IP 服 务 器 调 试 器 和 IAR J-Link 仿 真 器 协 同 配 合, 实 现 对 ARM 处 理 器 的 多 核 调 试 - 对 IAR J-Trace 仿 真 器 提 供 全 面 的 支 持 - 在 C-SPY 模 拟 器 中 可 执 行 Trace 的 模 拟 - 支 持 同 一 芯 片 上 多 颗 Flash 的 Flash Loader 程 序, 以 及 通 用 的 Flash Loader 开 发 指 南 2 EWARM 软 件 在 芯 片 级 支 持 方 面 的 特 色 完 备 的 各 厂 商 ARM 处 理 器 的 C/C++ 和 汇 编 语 言 外 设 寄 存 器 定 义 文 件 大 量 适 合 于 嵌 入 式 代 码 的 编 程 语 言 扩 展 特 性, 包 括 存 储 器 关 键 字, 本 征 函 数, 中 断 函 数, 存 储 器 映 射 I/O 等 针 对 评 估 板 的 例 程, 包 含 IAR Analog Devices Aiji System ARM Atmel Cirrus Logic Freescale Keil OKI Olimex Pasat Philips Phytec ST 和 TI 等 厂 家 的 开 发 板 支 持 ARM 或 Thumb 模 式 下 大 至 4G 字 节 的 应 用 程 序 每 个 函 数 都 能 选 择 在 ARM 或 Thumb 模 式 下 编 译 可 生 成 VFP 向 量 浮 点 协 处 理 器 代 码 支 持 Analog Devices Atmel Freescale OKI Philips ST 和 TI 等 厂 商 的 ARM 处 理 器 的 Flash Loader 程 序 支 持 ARM Angel Debug monitor 3 EWARM 编 译 器 的 软 件 特 色 先 进 的 通 用 编 译 器 优 化 和 针 对 特 定 处 理 器 的 速 度 优 化 及 存 储 器 优 化 功 能 轻 量 运 行 库, 用 户 可 以 根 据 需 要 自 行 配 置, 提 供 全 部 源 代 码 灵 活 的 存 储 器 控 制, 允 许 详 细 地 为 代 码 和 数 据 分 配 地 址 去 除 不 需 要 的 函 数 和 变 量 C/C++ 变 量 和 函 数 连 接 时 全 局 类 型 检 查 可 选 的 校 验 和 生 成 功 能, 用 于 运 行 时 映 象 校 验 自 动 将 代 码 和 数 据 放 置 到 非 连 续 的 存 储 器 区 域 强 大 的 可 重 定 位 宏 汇 编 器, 支 持 丰 富 的 命 令 集 和 操 作 符 3
6 4 EWARM 调 试 器 的 软 件 特 色 完 全 集 成 的 源 代 码 和 反 汇 编 程 序 调 试 器 非 常 细 化 的 执 行 控 制 ( 函 数 调 用 级 步 进 ) 复 杂 的 代 码 和 数 据 断 点 丰 富 的 数 据 监 视 功 能 Locals,Watch,Auto,Live Watch 和 Quick Watch 等 变 量 查 看 窗 口 寄 存 器 和 存 储 器 查 看 窗 口 支 持 STL 容 器 C/C++ 调 用 栈 窗 口, 同 时 还 可 以 显 示 将 要 进 入 的 函 数 双 击 调 用 链 上 的 任 何 函 数 将 更 新 编 辑 器 局 部 变 量 寄 存 器 变 量 查 看 和 反 汇 编 窗 口, 以 显 示 在 该 函 数 调 用 时 的 状 态 跟 踪 功 能, 可 以 检 查 执 行 的 历 史 记 录 在 跟 踪 窗 口 中 移 动 时 将 更 新 编 辑 器 和 反 汇 编 窗 口 以 显 示 合 适 的 位 置 控 制 台 I/O 仿 真 中 断 和 I/O 模 拟 仿 真 类 似 C 语 言 的 宏 系 统, 可 扩 充 调 试 器 的 功 能 由 主 机 执 行 的 应 用 程 序 系 统 调 用 仿 真 代 码 覆 盖 率 和 执 行 时 间 分 析 工 具 通 用 的 Flash Loader 程 序 及 开 发 指 南 同 时 支 持 多 颗 Flash 的 Flash Loader 程 序 支 持 OSEK Run-Time Interface (ORTI) 提 供 为 调 试 器 扩 充 第 三 方 功 能 的 软 件 开 发 包, 如 RTOS 调 试 扩 充 和 仿 真 器 驱 动 扩 充 命 令 行 调 试 工 具 5 IAR C-SPY 支 持 的 调 试 方 法 IAR J-Link JTAG 接 口 ( 支 持 所 有 ARM7 和 ARM9 核, 通 过 USB 或 TCP/IP 连 接 ) IAR J-Trace JTAG 接 口 ( 支 持 所 有 ARM7 和 ARM9 核, 通 过 USB 或 TCP/IP 连 接 ) RDI 接 口 类 的 第 三 方 仿 真 器 (Abatron BDI1000 & BDI2000, EPI Majic, Ashling Opella, Aiji OpenICE, Signum JTAGjet, ARM Multi-ICE 等 ) Macraigor Wiggler, Raven, mpdemon 和 USBdemon 等 调 试 接 口 EPI Jeeni 仿 真 器 支 持 IAR 的 ROM-Monitor ARM 公 司 的 Angel ROM-Monitor( 用 于 Atmel 和 Cirrus Logic 的 评 估 板 ) 6 IAR 对 嵌 入 式 实 时 操 作 系 统 的 Kernel Awareness 调 试 支 持 4
7 操 作 系 统 CMA-RX CMX-Tiny + uc/os-ii ThreadX RTXC Quadros Fusion RTOS OSEK(ORTI) ENEA OSE Epsilon MiSPO NORTi Micro Digital SMX Segger embos IAR EWARM 内 置 的 插 件 X X X X X X 由 第 三 方 RTOS 厂 商 提 供 的 插 件 X X X X X 每 种 RTOS 插 件 都 会 在 C-SPY 中 安 装 一 批 新 的 窗 口, 其 中 最 重 要 的 是 任 务 或 线 程 列 表 窗 口, 在 此 窗 口 中 可 以 在 指 定 的 任 务 上 设 置 断 点 和 执 行 程 序 其 它 不 同 的 监 测 窗 口 可 以 显 示 RTOS 内 部 数 据 结 构 的 内 容, 例 如 定 时 器 队 列 信 号 量 资 源 和 邮 箱 等 7 EWARM 图 形 化 的 集 成 开 发 环 境 的 界 面 特 色 分 层 次 的 工 程 组 织 同 一 工 作 空 间 中 允 许 存 放 多 个 工 程 可 停 靠 的 窗 口 和 多 视 图 源 代 码 浏 览 创 建 和 维 护 库 的 工 具 可 以 和 源 代 码 控 制 系 统 相 集 成 文 本 编 辑 器 - 支 持 多 字 节 字 符 ( 汉 字 ) - 上 下 文 相 关 的 帮 助 系 统 - 根 据 句 法 着 色 - 无 限 制 的 undo/redo - 搜 寻 替 换 和 增 量 搜 寻 - Go to - 书 签 - 错 误 标 签 : 查 阅 前 一 个 / 下 一 个 5
8 - 自 动 括 号 配 对 - 智 能 缩 排 - 类 似 网 页 浏 览 器 的 前 向 / 后 向 源 码 查 阅 - 代 码 断 点 的 设 置 / 清 除 / 使 能 / 禁 止 命 令 行 编 译 连 接 工 具 8 EWARM 的 编 程 语 言 和 标 准 遵 循 ISO/ANSI C94( 带 有 一 些 从 C99 标 准 中 挑 选 的 特 性 ) 标 准 的 C 编 程 语 言 嵌 入 式 C++ 扩 展, 支 持 模 板 多 重 继 承 和 虚 拟 继 承 名 字 空 间 以 及 其 它 不 增 加 执 行 时 间 或 存 储 器 开 销 的 C++ 特 性 完 整 的 嵌 入 式 C++ 库 还 包 含 字 符 串 流 等 特 性, 以 及 标 准 模 板 库 (STL) IEEE-754 浮 点 运 算 规 则 MISRA C 检 查 器 支 持 大 量 工 业 标 准 的 调 试 和 映 象 文 件 格 式 ( 如 ELF/DWARF), 与 大 多 数 常 见 的 调 试 器 和 仿 真 器 兼 容 9 用 户 帮 助 完 备 的 例 程 和 工 程 模 板 上 下 文 相 关 的 联 机 帮 助 系 统, 带 有 库 函 数 查 阅 功 能 印 刷 好 的 用 户 指 南, 带 有 详 细 的 step-by-step 教 程 友 好 详 尽 和 精 确 的 错 误 信 息 和 警 告 信 息 2.IAR J-Link 仿 真 器 简 介 IAR J-Link 是 IAR 为 支 持 仿 真 ARM 内 核 芯 片 推 出 的 JTAG 方 式 仿 真 器 配 合 IAR EWARM 集 成 开 发 环 境 支 持 所 有 ARM7/ARM9 内 核 芯 片 的 仿 真, 无 需 安 装 任 何 驱 动 程 序 与 EWARM 集 成 开 发 环 境 无 缝 连 接, 操 作 方 便 连 接 方 便 简 单 易 学 是 学 习 开 发 ARM 最 好 最 实 用 的 开 发 工 具 同 时, 最 近 的 有 关 权 威 测 试 显 示,J-Link 目 前 是 同 类 产 品 中 下 载 调 试 速 度 最 快 的 J-Tag 仿 真 器 : 公 司 产 品 通 讯 接 口 支 持 内 核 下 载 速 度 对 开 发 板 供 电 功 能 备 注 Macraigor Wiggler LPT ARM7/9 16 KB/ 秒 无 即 并 口 仿 真 头 Keil U-Link USB ARM7 28 KB/ 秒 无 IAR J-Link USB 2.0 ARM7/9 600 KB/ 秒 有 1 J-Link ARM 主 要 特 点 IAR EWARM 集 成 开 发 环 境 无 缝 连 接 的 JTAG 仿 真 器 支 持 所 有 ARM7/ARM9 内 核 的 芯 片, 包 括 Thumb 模 式 6
9 下 载 速 度 高 达 600 kb/s 最 高 JTAG 速 度 12 MHz 目 标 板 电 压 范 围 1.2V 3.3V 自 动 速 度 识 别 功 能 监 测 所 有 JTAG 信 号 和 目 标 板 电 压 完 全 即 插 即 用 使 用 USB 电 源 带 USB 连 接 线 和 20 芯 扁 平 电 缆 支 持 多 JTAG 器 件 串 行 连 接 标 准 20 芯 JTAG 仿 真 插 头 选 配 14 芯 JTAG 仿 真 插 头 选 配 用 于 5V 目 标 板 的 适 配 器 带 J-Link TCP/IP server, 允 许 通 过 TCP/ IP 网 络 使 用 J-Link 2 IAR J-Link 的 物 理 连 接 J-LINK 一 端 通 过 USB 口 与 PC 连 接, 另 一 端 通 过 标 准 20 芯 JTAG 插 头 与 目 标 板 连 接 建 议 首 先 连 接 J-LINK 到 PC, 再 连 接 J-LINK 到 目 标 系 统, 最 后 给 目 标 系 统 供 电 ( 如 果 目 标 系 统 为 独 立 供 电 而 非 由 J-TAG 口 供 电 的 情 况 ) 3 IAR J-Link 主 要 技 术 指 标 功 耗 吸 取 USB 供 电 电 力 < 50 ma 通 讯 方 式 USB 2.0 全 速 目 标 板 接 口 20 芯 JTAG 口 (14 芯 JTAG 口 选 件 ) J-Link 和 ARM 间 串 行 传 输 速 率 最 高 12 MHz 支 持 目 标 电 压 V (5V 适 配 头 选 件 ) 工 作 温 度 +5 C C 储 存 温 度 -20 C C 相 对 湿 度 ( 无 冷 凝 水 ) < 90% RH 体 积 100mm x 53mm x 27mm 重 量 ( 不 含 电 缆 ) 70 克 电 磁 兼 容 性 (EMC) EN 55022,EN 目 标 板 5V 电 源 适 配 器 选 件 当 目 标 系 统 为 5V 电 源 系 统 时, 必 须 使 用 J-LINK 提 供 的 5V 电 源 适 配 器 选 件 对 于 1.2V~3.3V 电 源 系 统, 可 以 直 接 使 用 J-Link 使 用 时 将 适 配 器 的 20 芯 IDC 插 头 插 进 J-Link 的 20 芯 插 座, 再 将 连 接 目 标 的 20 芯 扁 平 电 缆 插 进 适 配 器 的 插 座 5V 适 配 器 选 件 由 目 标 供 电 (3.3V~ 5V), 电 流 <20mA, 有 一 个 LED 指 示 电 源 状 态 7
10 5 JTAG 插 头 定 义 J-Link 的 JTAG 20 芯 的 IDC 插 头 与 ARM 公 司 的 仿 真 器 插 头 定 义 兼 容, 有 关 定 义 如 下 : 引 脚 名 称 方 向 功 能 描 述 1 VTref Input 目 标 系 统 参 考 电 压 用 于 检 查 目 标 系 统 是 否 供 电, 并 产 生 一 个 逻 辑 电 平 送 给 J-Link 内 部 比 较 器 检 测 结 果 用 来 控 制 输 出 给 目 标 的 逻 辑 电 平 幅 度 此 引 脚 通 常 与 目 标 的 Vdd 联, 中 间 不 允 许 串 接 电 阻 2 Vsupply NC J-Link 不 用 此 引 脚, 在 目 标 系 统 中 连 接 到 Vdd 或 开 路 3 ntrst Output JTAG 复 位,J-Link 输 出 给 目 标 的 Reset 信 号 通 常 连 接 到 目 标 CPU 的 ntrst 引 脚 目 标 板 上 应 将 此 脚 上 拉 到 高 电 位, 避 免 意 外 复 位 4 GND - 公 共 地 5 TDI Output J-Link 输 出 给 目 标 CPU 的 JTAG 数 据 通 常 与 目 标 CPU 的 TDI 引 脚 相 连 建 议 在 目 标 板 上 将 此 脚 上 拉 到 Vdd 6 GND - 公 共 地 7 TMS Output J-Link 输 出 给 目 标 CPU 的 JTAG 模 式 设 置 信 号 通 常 与 目 标 CPU 的 TMS 引 脚 相 连 建 议 在 目 标 板 上 将 此 脚 上 拉 8 GND - 公 共 地 9 TCK Output J-Link 输 出 给 目 标 CPU 的 JTAG 时 钟 信 号 通 常 与 目 标 CPU 的 TCK 引 脚 相 连 建 议 在 目 标 板 上 将 此 脚 上 拉 10 GND - 公 共 地 11 RTCK Intput 目 标 CPU 提 供 给 J-Link 的 测 试 时 钟 信 号 有 些 目 标 要 求 JTAG 的 输 入 与 其 内 部 时 钟 同 步 J-Link 利 用 此 引 脚 的 输 入 可 动 态 地 控 制 自 己 的 TCK 速 率 若 不 使 用 此 功 能, 在 目 标 板 上 将 此 脚 接 地 12 GND - 公 共 地 13 TDO Intput 目 标 CPU 返 回 给 J-Link 的 数 据 信 号 通 常 与 目 标 CPU 的 TDO 引 脚 相 连 14 GND - 公 共 地 15 RESET I/O 目 标 CPU Reset 信 号 16 GND - 公 共 地 17 DBGRQ NC J-Link 不 用 此 引 脚, 在 目 标 系 统 中 将 此 引 脚 开 路 18 GND 公 共 地 19 Vdd Output +3.3V 电 源 输 出 20 GND 公 共 地 8
11 6 JTAG 速 度 J-Link 有 两 种 速 度 设 定, 即 固 定 JTAG 速 度 自 动 JTAG 速 度, 该 功 能 选 项 位 于 Project Options -> Debugger -> J-Link 设 置 页 面 中 固 定 JTAG 速 度 目 标 被 锁 定 在 固 定 时 钟 速 度 目 标 能 执 行 的 最 大 JTAG 速 度 取 决 于 目 标 自 身 一 般 来 讲, 不 带 JTAG 同 步 逻 辑 的 ARM 内 核 ( 如 ARM7-TDMI) 能 执 行 与 CPU 速 度 相 当 的 JTAG 速 度 而 带 JTAG 同 步 逻 辑 的 ARM 内 核 ( 例 如 ARM7-TDMI-S,ARM946E-S,ARM966EJ-S) 能 执 行 相 当 CPU 速 度 1/6 的 JTAG 速 度 JTAG 速 度 不 应 超 过 10 MHz 自 动 JTAG 速 度 由 TAP 控 制 器 选 择 最 大 的 JTAG 速 度 要 注 意, 不 带 同 步 逻 辑 的 ARM 内 核 可 能 会 工 作 不 稳 定 因 为 CPU 内 核 时 钟 可 能 慢 于 最 大 JTAG 速 度 附 :J-Link 全 国 分 销 点 地 区 销 售 点 地 址 电 话 华 北 北 京 万 利 北 京 海 淀 区 知 春 路 118 号 知 春 电 子 城 B193 柜 / 天 津 万 利 天 津 南 开 区 鞍 山 西 道 323 号 增 1 号 / 华 南 深 圳 万 利 深 圳 深 南 中 路 赛 格 电 子 市 场 3 楼 3B35 柜 / 深 圳 深 南 中 路 华 强 电 子 世 界 一 楼 20A257 柜 / 广 州 万 利 广 州 天 河 区 天 河 路 龙 苑 大 厦 3 栋 506 室 / 华 东 上 海 万 利 上 海 北 京 东 路 赛 格 电 子 市 场 2A19-2A20 柜 / 上 海 太 平 洋 电 脑 城 三 楼 347 室 / 南 京 万 利 南 京 珠 江 路 雄 狮 电 子 商 城 A529 柜 / 南 京 中 山 东 路 110 号 华 龙 电 子 商 城 二 楼 96# 柜 / 杭 州 万 利 杭 州 登 云 路 639 号 杭 州 电 子 市 场 1C205 柜 西 北 西 安 万 利 西 安 西 部 电 子 商 城 2 楼 C 区 2C / 东 北 沈 阳 万 利 沈 阳 三 好 街 90 号 甲 百 脑 汇 科 技 广 场 B 区 -W / 华 中 武 汉 万 利 武 汉 武 昌 珞 瑜 路 158 号 华 中 数 码 城 3098 室 长 沙 万 利 长 沙 人 民 路 9 号 百 脑 汇 商 城 二 楼 H / 香 港 香 港 万 利 香 港 九 龙 上 海 街 67 号 10 楼
12 第 二 章 在 EWARM 中 生 成 一 个 新 项 目 EWARM 是 按 项 目 进 行 管 理 的, 它 提 供 了 应 用 程 序 和 库 程 序 的 项 目 模 板 项 目 下 面 可 以 分 级 或 分 类 管 理 源 文 件 允 许 为 每 个 项 目 定 义 一 个 或 多 个 编 译 连 接 (build) 配 置 在 生 成 新 项 目 之 前, 必 须 建 立 一 个 新 的 工 作 区 (Workspace) 一 个 工 作 区 中 允 许 存 放 一 个 或 多 个 项 目 另 外 用 户 最 好 建 立 一 个 专 用 的 目 录 存 放 自 己 的 项 目 文 件 例 如 在 本 指 南 中 我 们 生 成 一 个 C:\Program files\iar System\My project 目 录 现 在 双 击 桌 面 上 的 IAR Embedded Workbench 图 标, 出 现 IAR EWARM 开 发 环 境 窗 口 1. 生 成 新 的 工 作 区 (Workspace) 选 择 主 菜 单 File > New > Workspace 生 成 新 工 作 区 2. 生 成 新 项 目 1 选 择 主 菜 单 Project > Create New Project, 弹 出 生 成 新 项 目 窗 口, 见 图 1 本 例 选 择 项 目 模 板 (Project template) 中 的 Empty project 图 1. 生 成 新 项 目 窗 口 2 在 Tool chain 栏 中 选 择 ARM, 然 后 点 击 OK 按 钮 3 在 弹 出 的 另 存 为 窗 口 中 浏 览 和 选 择 新 建 的 My projects 目 录, 输 入 文 件 名 project1, 然 后 保 存 这 时 在 屏 幕 左 边 的 Workspace 窗 口 中 将 显 示 新 建 的 项 目 名 见 图 2 所 示 : 10
13 图 2. Workspace 窗 口 IAR EWARM 提 供 两 种 缺 省 的 项 目 生 成 配 置, 即 Debug 和 Release 本 例 在 Workspace 窗 口 顶 部 的 下 拉 菜 单 中 选 取 Debug 现 在 My projects 目 录 下 已 生 成 一 个 project1.ewp 文 件 该 文 件 中 包 含 与 project1 项 目 设 置 有 关 的 信 息, 如 build 选 件 等 项 目 名 后 缀 上 的 * 号 表 示 该 工 作 区 有 改 变 但 还 没 有 被 保 存 本 例 调 用 printf 库 函 数, 这 是 在 C-SPY 模 拟 器 中 的 一 个 低 级 write 函 数 如 果 用 户 希 望 在 真 实 硬 件 上 以 release 配 置 运 行 例 子, 就 必 须 提 供 与 硬 件 相 适 配 的 write 函 数 4 保 存 工 作 区 先 选 择 主 菜 单 File > Save Workspace, 浏 览 并 选 择 My projects 目 录 然 将 工 作 区 取 名 为 tutorials 输 进 File name 输 入 框, 按 保 存 按 钮 退 出 这 时 在 My projects 目 录 下 将 生 成 一 个 tutorials.eww 文 件, 该 文 件 中 保 存 了 用 户 添 加 到 tutorials 工 作 区 中 的 所 有 项 目 窗 口 和 断 点 放 置 等 与 当 前 操 作 有 关 的 其 他 信 息 则 被 存 储 在 My projects\ settings 目 录 下 的 文 件 中 3. 给 项 目 添 加 文 件 本 例 我 们 将 采 用 arm\tutor 目 录 下 的 两 个 源 文 件,Tutor.c 和 Utilities.c Tutor.c 是 一 个 只 用 到 标 准 C 语 言 的 简 单 程 序 它 用 Fibonacci 数 列 的 前 十 个 数 初 始 化 一 个 数 组, 并 把 结 果 打 印 到 stdout;utilities.c 包 含 计 算 Fibonacci 数 列 的 实 用 程 序 IAR EWARM 允 许 生 成 若 干 个 源 文 件 组 用 户 可 以 根 据 项 目 需 要 来 组 织 自 己 的 源 文 件 但 在 本 例 中 没 有 必 要 1 在 Workspace 中 选 择 希 望 添 加 文 件 的 目 的 地, 可 以 是 项 目 或 源 文 件 组 本 例 直 接 选 project1 11
14 2 选 择 主 菜 单 Project > Add Files 打 开 标 准 浏 览 窗 口, 见 图 3 选 择 安 装 目 录 ARM\tutor 下 的 上 述 2 个 文 件, 点 击 打 开 按 钮, 把 它 们 添 加 到 Project1 目 录 下 图 3. 添 加 文 件 窗 口 4. 设 置 项 目 选 件 生 成 新 项 目 和 添 加 文 件 后 就 应 该 为 项 目 设 置 选 件 IAR EWARM 允 许 为 任 何 一 级 目 录 和 文 件 单 独 设 置 选 件, 但 是 用 户 必 须 为 整 个 项 目 设 置 通 用 的 编 译 连 接 (build) 选 件 1 选 择 通 用 选 件 选 中 Workspace 中 的 project1 Debug, 然 后 选 择 主 菜 单 Project > Options 也 可 以 先 选 择 project1 Debug, 然 后 选 择 鼠 标 右 键 命 令 中 的 Options 图 4. 项 目 通 用 选 件 窗 口 在 打 开 的 Options 窗 口 左 边 的 Category 中 选 择 General Options 然 后 分 别 在 : 12
15 - Target 页 面 /Core 条 目 下 选 择 ARM7TDMI-S - Output 页 面 中,Output file 条 目 下 选 择 Executable - Library Configuration 页 面 中,Library 条 目 下 选 择 Normal 2 选 择 编 译 器 选 件 在 Options 窗 口 的 Category 中 选 择 C/C++ Compiler, 见 图 5 图 5. C/C++ Compiler 选 件 窗 口 然 后 在 : - Language 页 面 中, 选 择 C,Allow IAR extensions 等 - Optimization 页 面 中, 选 择 Generate debug information - Output 页 面 中, 选 择 Output list file 和 Assemble mnemonics - List 页 面 中, 选 择 Output list file 并 选 择 Assembler mnemonics 和 Diagnostics - 点 击 OK 按 钮, 确 认 选 择 的 选 件 在 设 置 项 目 选 件 窗 口 中 有 许 多 其 他 信 息 由 于 本 例 比 较 简 单, 所 以 不 涉 及 这 些 内 容 13
16 第 三 章 编 译 和 连 接 应 用 程 序 这 一 步 编 译 和 连 接 (build) 项 目 程 序, 同 时 生 成 一 个 编 译 器 列 表 文 件 (compiler list file) 和 一 个 连 接 器 存 储 器 分 配 文 件 (linker map file) 1. 编 译 源 文 件 1 选 中 workspace 中 utilities.c 文 件 2 选 择 主 菜 单 Project > Compile, 或 工 具 条 中 的 Compile 按 钮, 或 按 右 键 后 选 择 Compile 命 令 编 译 结 束 后 在 消 息 窗 口 中 出 现 如 图 6 中 的 信 息 图 6. Build 窗 口 中 的 编 译 处 理 消 息 3 用 同 样 的 方 法 编 译 tutor.c 编 译 完 成 后 在 My projects 目 录 下 将 生 成 一 批 新 子 目 录 因 为 我 们 在 建 立 新 项 目 时 选 择 Debug 配 置, 所 以 在 My projects 目 录 下 自 动 生 成 一 个 Debug 子 目 录 Debug 子 目 录 下 又 包 含 另 3 个 子 目 录, 名 字 分 别 为 List Obj Exe 它 们 的 用 途 如 下 : List 目 录 存 下 放 列 表 文 件, 列 表 文 件 的 后 缀 是 lst; Obj 目 录 下 存 放 Compiler 和 Assembler 生 成 的 目 标 文 件, 这 些 文 件 的 后 缀 为 r79, 可 以 用 作 IAR XLINK 连 接 器 的 输 入 文 件 ; Exe 目 录 下 存 放 可 执 行 文 件, 这 些 文 件 的 后 缀 为 d79, 可 以 用 作 IAR C-SPY 调 试 器 的 输 入 文 件, 注 意 在 执 行 连 接 处 理 之 前 这 个 目 录 是 空 的 点 击 project1 Debug 前 面 的 + 号 将 目 录 展 开 你 可 以 从 自 动 生 成 的 Output 目 录 中 看 到 所 有 生 成 的 输 出 文 件 名 以 及 反 映 相 互 依 赖 关 系 的 的 头 文 件 名 14
17 图 7. 编 译 处 理 后 的 文 件 结 构 2. 查 看 编 译 器 列 表 文 件 现 在 我 们 通 过 改 变 编 译 器 选 件 中 的 优 化 级 别 (Optimization) 来 观 察 list 文 件 是 如 何 自 动 更 新 生 成 的 代 码 量 的 1 list 文 件 的 结 构 双 击 Workspace 窗 口 中 的 Utilities.lst, 打 开 list 文 件, 它 包 含 以 下 信 息 : 文 件 头 显 示 编 译 器 的 版 本 信 息, 列 表 文 件 生 成 时 间,source 文 件 list 文 件 和 object 文 件 的 名 字 和 路 径, 编 译 命 令 行 及 选 件 等 信 息 文 件 体 显 示 为 每 条 源 语 句 生 成 的 汇 编 代 码 和 二 进 制 代 码, 以 及 变 量 如 何 被 分 配 到 不 同 的 段 文 件 尾 显 示 所 需 的 堆 栈 程 序 代 码 以 及 数 据 存 储 器 的 总 量, 同 时 报 告 错 误 和 警 告 信 息 2 选 择 主 菜 单 Tools > Options 弹 出 IDE Options 对 话 窗 口, 选 择 Editor 页 面 选 择 Scan for Change Files 选 件 此 选 件 将 自 动 打 开 编 辑 窗 口 中 的 文 件, 目 前 是 Utilities.lst 文 件 按 OK 按 钮 15
18 图 8. IDE Option 窗 口 3 选 中 Workspace 窗 口 中 的 Utilities.c, 按 鼠 标 右 键 选 择 弹 出 框 中 的 Options 从 弹 出 的 对 话 框 左 边 的 Category 中 选 择 C/C++ Compiler 并 确 定 Override inherited settings 打 开 Optimization 页 面, 把 优 化 级 别 从 None 改 定 为 High 然 后 按 OK 按 钮 4 重 新 编 译 Utilities.c, 请 注 意 这 时 编 辑 窗 口 中 的 Utilities.lst 文 件 已 经 自 动 被 刷 新 文 件 尾 显 示 的 代 码 大 小 已 经 因 优 化 级 别 的 升 高 而 减 小 5 对 本 例 而 言,Optimization 应 选 择 None 所 以 在 连 接 处 理 前 应 该 将 优 化 级 别 恢 复 到 原 来 的 设 置 这 时 应 选 中 Utilities.c, 按 鼠 标 右 键 选 择 弹 出 框 中 的 Options 选 择 C/C++ Compiler 并 取 消 Override inherited settings 然 后 重 新 编 译 Utilities.c 3. 连 接 应 用 程 序 1 先 选 中 Workspace 窗 口 中 的 Project1 Debug, 然 后 选 择 主 菜 单 Project > Options, 弹 出 Options 对 话 窗 口, 见 图 9 在 左 边 的 Category 中 选 择 Linker, 显 示 IAR XLINK 的 各 选 件 页 面 16
19 图 9. XLINK 参 数 选 件 窗 口 本 例 全 部 采 用 缺 省 的 连 接 处 理 选 件 但 是 仍 需 要 强 调 一 下 输 出 文 件 格 式 和 Linker 命 令 行 文 件 的 选 择 方 法 : 输 出 格 式 选 择 合 适 的 输 出 格 式 十 分 重 要 你 可 能 需 要 将 输 出 文 件 送 给 一 个 调 试 器 进 行 调 试, 这 时 就 要 求 输 出 格 式 带 有 调 试 信 息 本 例 采 用 适 合 C-SPY 调 试 器 的 缺 省 输 出 选 件, 它 们 是 Debug information for C-SPY With runtime control modules 和 With I/O emulation modules 指 示 需 要 连 接 将 stdin 和 stdout 指 向 C-SPY 的 I/O 窗 口 的 低 级 例 程 如 果 用 户 希 望 把 应 用 下 载 到 一 个 PROM 编 程 器 时, 则 其 输 出 格 式 不 需 要 带 调 试 信 息, 如 Intel-hex 或 Motorola S-records 在 list 页 面 中 选 择 Generate Linker listing 和 Segment map( 见 图 10) 允 许 生 成 存 储 器 分 配 MAP 文 件 注 ) 本 例 连 接 器 命 令 文 件 中 的 定 义 不 与 任 何 特 定 的 硬 件 相 关 联 EWARM 提 供 的 连 接 器 命 令 文 件 模 板 都 可 以 在 模 拟 器 (simulator) 中 使 用 但 是 如 果 要 把 它 们 用 于 目 标 系 统 时 必 须 与 实 际 的 硬 件 存 储 器 分 布 相 适 配 用 户 可 以 从 src\ examples 目 录 中 找 到 与 评 估 板 相 关 的 连 接 器 命 令 17
20 文 件 连 接 器 命 令 文 件 在 连 接 器 命 令 文 件 中, 用 于 段 (segment) 控 制 的 XLINK 命 令 行 是 用 来 放 置 段 的 熟 悉 连 接 器 命 令 文 件 和 段 的 放 置 十 分 重 要 用 户 可 以 从 ARM IAR C/C++ Compiler Reference Guide 中 了 解 更 多 信 息 本 例 使 用 缺 省 的 连 接 器 命 令 文 件, 请 见 图 9 或 图 10 中 的 Config 页 面 用 户 如 果 要 检 查 连 接 器 命 令 文 件, 需 用 合 适 的 文 本 编 辑 器, 例 如 IAR EWARM 的 编 辑 器 也 可 以 打 印 出 来, 检 查 各 项 定 义 是 否 符 合 要 求 2 点 击 OK 按 钮 保 存 IAR XLINK 选 件 3 选 择 主 菜 单 Project > Make 或 鼠 标 右 键 Make 命 令, 连 接 目 标 文 件, 生 成 可 执 行 代 码 Build 消 息 窗 口 中 将 显 示 连 接 处 理 的 消 息 连 接 的 结 果 将 生 成 一 个 带 调 试 信 息 的 代 码 文 件 project1.d79 和 一 个 存 储 器 分 配 (MAP) 文 件 project1.map 图 10. XLINK 选 件 中 的 list 页 面 4. 查 看 MAP 文 件 双 击 Workspace 中 的 project1.map 文 件 名, 编 辑 器 窗 口 中 将 显 示 该 MAP 文 件 从 MAP 文 件 中 我 们 可 以 了 解 以 下 内 容 : - 文 件 头 中 显 示 连 接 器 版 本, 输 出 文 件 名 以 及 连 接 命 令 使 用 的 选 件 18
21 - CROSS REFERENCE 段 显 示 程 序 入 口 地 址 - RUNTIME MODEL 段 显 示 使 用 的 运 行 时 模 块 的 属 性 - MODULE MAP 段 显 示 所 有 被 连 接 的 文 件 每 个 文 件 中, 作 为 应 用 程 序 一 部 分 加 载 的 有 关 模 块 的 信 息, 包 括 各 段 和 每 个 段 中 声 明 的 全 局 符 号 都 列 出 来 - SEGMENTS IN ADDRESS ORDER 段 列 出 了 组 成 应 用 程 序 的 所 有 段 的 起 始 地 址 和 结 束 地 址, 字 节 数, 类 型 和 对 齐 标 准 等 - END OF CROSS REFERENCE 段 落 显 示 总 的 代 码 和 数 据 字 节 数 到 此 为 止, 已 经 生 成 project1.d79 应 用 程 序 并 可 以 用 于 在 IAR C-SPY 中 调 试 新 闻 : 成 为 IAR 公 司 8051 开 发 工 具 代 理 商 2 月 23 日, 中 国 上 海 IAR 公 司 今 天 宣 布 万 利 电 子 成 为 其 8051 开 发 工 具 代 理 商, 并 在 其 最 新 发 布 的 7.20c 版 的 EW8051 集 成 开 发 环 境 中, 无 缝 集 成 了 万 利 Insight 仿 真 器 的 系 列 驱 动 双 方 在 软 硬 件 技 术 上 的 互 补 能 力, 使 得 该 工 具 包 比 同 类 竞 争 产 品 代 码 效 率 提 高 15%-20%, 并 实 现 完 全 实 时 的 在 线 调 试 双 方 同 时 联 合 宣 布 在 中 国 发 布 一 套 市 场 售 价 为 人 民 币 2,900 元 的 8051 开 发 工 具 包, 其 中 包 含 : - 1 套 8k 代 码 限 制 版 的 IAR EW8051 集 成 开 发 软 件 - 1 个 Insight 8051 仿 真 器 ( 用 户 可 从 万 利 8051 系 列 仿 真 器 中 选 配 1 款, 以 适 用 不 同 的 8051 芯 片 ) 该 工 具 包 即 日 起 于 万 利 电 子 全 国 13 个 直 销 点 上 柜 销 售 双 方 在 技 术 上 将 紧 密 配 合, 进 一 步 为 国 内 外 8051 芯 片 厂 商 提 供 工 具 链 定 制 的 服 务 新 闻 :IAR 公 司 宣 布 支 持 ARM Cortex M3 2 月 28 日, 瑞 典 乌 普 萨 拉 IAR 公 司 今 天 宣 布 了 在 集 成 开 发 环 境 EWARM 中 支 持 新 的 ARM Cortex M3(CM3) 架 构, 这 在 ARM 第 三 方 工 具 合 作 伙 伴 中, 首 个 宣 布 支 持 该 架 构 新 的 EWARM 集 成 开 发 环 境 中 将 会 包 含 一 个 高 度 优 化 Thumb2 指 令 的 C/C++ 编 译 器 4 月 份,IAR 将 在 一 些 选 定 的 合 作 伙 伴 中 进 行 该 编 译 器 的 β 版 测 试, 同 时 还 将 发 布 新 版 的 USB 接 口 的 J-Link JTAG 仿 真 器, 无 缝 支 持 Cortex M3 新 处 理 器 的 调 试 和 flash 烧 写 功 能 19
22 第 四 章 用 C-SPY 调 试 应 用 程 序 本 例 使 用 C-SPY 的 模 拟 器 (Simulator) 来 展 现 IAR C-SPY 调 试 器 的 基 本 特 点 前 面 各 节 生 成 的 project1.d79 应 用 程 序 已 经 可 以 用 C-SPY 调 试 器 进 行 调 试 用 户 利 用 调 试 器 可 以 查 看 变 量 设 置 断 点 观 察 反 汇 编 代 码 监 视 寄 存 器 和 存 储 器 在 Terminal I/O 窗 口 打 印 输 出 1. 开 始 调 试 在 开 始 调 试 之 前 必 须 设 置 几 个 C-SPY 选 件 具 体 操 作 如 下 : 1 选 择 主 菜 单 Project > Option, 选 择 Category 中 的 Debugger 在 Setup 页 面, 在 Driver 的 下 拉 菜 单 中 选 择 Simulator, 同 时 选 择 Run to main, 点 击 OK 如 果 用 户 已 经 购 买 了 IAR 的 JTAG 仿 真 器, 请 选 择 J-Link 2 选 择 主 菜 单 Project > Debug 或 工 具 条 上 的 Debugger 按 钮 IAR C-SPY 将 开 始 装 载 project1.d79 除 了 已 经 打 开 的 窗 口 外, 将 显 示 一 组 C-SPY 专 用 窗 口 2. 组 织 窗 口 在 EWARM 中 可 以 固 定 窗 口 ( 所 谓 dock), 也 可 以 组 织 成 书 签 形 式, 也 可 以 让 它 们 浮 动 改 变 浮 动 窗 口 的 大 小 时 其 他 窗 口 不 受 影 响 注 意 EWARM IDE 窗 口 最 底 部 的 状 态 条 中 包 含 如 何 安 排 窗 口 的 有 用 信 息 详 细 信 息 请 参 见 77 页 Organizing the windows on screen 在 开 始 调 试 前 请 确 认 如 图 11 所 示 的 各 窗 口 和 内 容 已 经 显 示 在 屏 幕 上 在 编 辑 器 窗 口 应 能 看 到 源 文 件 Tutor.c 和 Utilities.c 以 及 Debug Log 消 息 窗 口 3. 检 查 源 语 句 1 检 查 源 语 句, 双 击 Workspace 中 的 Tutor.c; 2 在 编 辑 器 显 示 文 件 Tutor.c 后, 用 Debug > Step Over 命 令 ( 或 F10), 步 进 到 init_fib 函 数 调 用 语 句 ; 3 用 Debug > Step Into 命 令 ( 或 F11) 进 入 函 数 init_fib; 注 )Step Over 命 令 用 来 执 行 源 程 序 中 的 一 条 语 句 或 一 条 指 令, 即 使 这 条 语 句 是 一 函 数 调 用 语 句 20
23 而 Step Into 命 令 则 进 入 到 函 数 或 子 程 序 调 用 内 部 当 执 行 Step Into 后, 活 跃 窗 口 已 经 切 换 到 Utilities.c, 因 为 init_fib 在 这 个 文 件 里 4 继 续 用 Step Into 命 令 直 到 for 循 环 语 句 ; 5 再 用 Step Over 命 令 回 到 for 循 环 的 头 请 注 意, 现 在 是 在 函 数 调 用 级 上 而 不 是 语 句 级 步 进 注 ) 还 有 一 种 语 句 级 步 进 的 命 令,Debug > Next statement 或 工 具 条 上 的 Next statement 按 钮 这 条 命 令 与 Step Into 和 Step over 不 同 图 11. C-SPY 调 试 窗 口 4. 检 查 变 量 C-SPY 允 许 在 源 程 序 上 查 看 变 量 或 表 达 式, 所 以 可 以 在 执 行 程 序 过 程 中 跟 踪 它 们 的 值 的 变 化 查 看 变 量 的 方 法 有 几 种, 在 源 码 窗 口 用 鼠 标 双 击 变 量 名 然 后 打 开 Locals Live Watch 或 Auto 窗 口 如 何 检 查 变 量 的 更 详 细 信 息 请 看 章 节 Working with variables and expressions 注 ) 当 采 用 None 优 化 级 时, 所 有 的 非 静 态 变 量 在 它 们 的 活 动 范 围 内 都 是 活 跃 的, 所 以 这 些 变 量 是 完 全 能 够 调 试 的 但 如 果 使 用 更 高 级 别 的 优 化, 变 量 可 能 不 能 完 全 调 试 1 利 用 Auto 窗 口 查 看 变 量 选 择 View > Auto 打 开 Auto 窗 口 Auto 窗 口 显 示 最 近 修 改 过 的 表 达 式 的 当 前 值, 单 步 执 行 程 序 观 察 变 量 如 何 变 化 21
24 图 12. Auto 窗 口 中 检 查 变 量 2 设 置 一 个 Watchpoint, 利 用 Watch 窗 口 查 看 变 量 选 择 View > Watch 打 开 Watch 窗 口 请 注 意 Watch 窗 口 和 Auto 窗 口 按 书 签 形 式 显 示 按 以 下 步 骤 在 变 量 i 上 设 置 一 个 Watchpoint - 点 击 Watch 窗 口 中 的 虚 线 框, 当 输 入 区 出 现 时 输 入 i, 然 后 按 Enter 键 也 可 以 从 编 辑 器 窗 口 拖 一 个 变 量 到 Watch 窗 口 - 双 击 init_fib 函 数 中 的 root 数 组 名, 将 其 拖 到 Watch 窗 口 Watch 窗 口 将 显 示 i 和 root 的 值 将 root 展 开 观 察 每 个 元 素 的 值 图 13. Watch 窗 口 - 继 续 执 行 单 步, 观 察 i 和 root 值 的 变 化 - 从 Watch 窗 口 中 除 去 一 个 变 量 时, 只 需 选 择 它 然 后 删 除 5. 设 置 和 监 视 断 点 IAR C-SPY 具 有 强 大 的 断 点 功 能 详 细 请 见 手 册 131 页 The breakpoint system 设 置 断 点 最 简 单 的 方 法 是 将 光 标 定 位 到 某 条 语 句, 然 后 按 鼠 标 右 键 选 择 Toggle Breakpoint 命 令 实 验 22
25 方 法 如 下 : 1 设 置 断 点 用 下 面 方 法 在 get_fib(i) 语 句 上 设 置 断 点 在 编 辑 器 窗 口 显 示 utilities.c 点 击 要 设 置 断 点 的 语 句, 选 择 主 菜 单 Edit > Toggle Breakpoint 也 可 以 按 工 具 条 上 的 Toggle Breakpoint 按 钮 这 时 该 语 句 上 将 出 现 断 点 标 记 如 果 要 查 看 刚 定 义 的 断 点, 选 择 主 菜 单 View > Breakpoint 打 开 Breakpoint 窗 口 在 Debug Log 窗 口 也 显 示 有 关 断 点 执 行 的 信 息 图 14. 设 置 断 点 2 执 行 到 断 点 选 择 主 菜 单 Debug > Go 或 者 工 具 条 上 的 Go 按 钮 都 可 以 让 程 序 执 行 到 断 点 Watch 窗 口 将 显 示 root 表 达 式 的 值 Debug Log 窗 口 将 显 示 关 于 断 点 的 信 息 3 消 除 断 点 可 用 主 菜 单 Edit > Toggle Breakpoint 或 按 鼠 标 右 键 选 择 Toggle Breakpoint 6. 在 反 汇 编 窗 口 上 调 试 通 常, 在 C\C++ 程 序 上 调 试 应 该 更 快 速 和 更 直 接 但 是 如 果 用 户 希 望 在 反 汇 编 程 序 上 调 试,C-SPY 也 提 供 了 这 种 功 能, 而 且 C-SPY 允 许 方 便 地 在 两 种 方 式 上 切 换 反 汇 编 程 序 的 调 试 方 法 如 下 : 1 按 Reset 按 钮 复 位 应 用 程 序 2 调 试 时 反 汇 编 窗 口 通 常 是 打 开 的 如 果 还 没 打 开 可 以 选 择 主 菜 单 View > Disassembly 打 开 反 汇 编 窗 口 23
26 图 15. 反 汇 编 窗 口 反 汇 编 窗 口 如 图 15 所 示 可 以 看 到 汇 编 代 码 与 C 语 句 一 一 对 应 用 上 面 介 绍 的 几 种 单 步 命 令 执 行 程 序 观 察 结 果 7. 监 视 寄 存 器 寄 存 器 窗 口 允 许 用 户 监 视 和 修 改 CPU 寄 存 器 的 内 容 具 体 方 法 如 下 : 1 选 择 主 菜 单 View > Register 打 开 寄 存 器 窗 口, 见 图 16 图 16. 寄 存 器 窗 口 2 用 Step Over 命 令 执 行 下 一 条 指 令, 观 察 寄 存 器 窗 口 中 的 数 据 如 何 变 化 3 关 闭 寄 存 器 窗 口 24
27 8. 查 看 存 储 器 用 户 可 以 在 存 储 器 窗 口 监 视 所 选 择 的 存 储 器 区 域 下 面 是 检 查 与 变 量 root 有 关 的 存 储 器 内 容 1 选 择 主 菜 单 View >Memory 打 开 存 储 器 窗 口, 见 图 17( 用 8-bit 显 示 数 据 ) 2 激 活 Utilities.c 窗 口 并 双 击 变 量 root 用 鼠 标 将 其 拖 到 存 储 器 窗 口 3 如 果 希 望 以 16-bit 显 示 数 据, 在 存 储 器 窗 口 定 部 的 下 拉 菜 单 中 选 择 2x Units 命 令 如 果 C 应 用 程 序 的 init_fib 函 数 没 有 初 始 化 所 有 的 存 储 器 单 元, 继 续 执 行 单 步, 同 时 观 察 存 储 器 的 内 容 是 如 何 修 改 的 用 户 可 以 在 存 储 器 窗 口 修 改 存 储 单 元 的 内 容 只 需 把 插 入 点 放 在 希 望 修 改 的 地 方, 然 后 输 入 新 值 就 可 以 了 4 关 闭 存 储 器 窗 口 图 bit 模 式 显 示 存 储 器 窗 口 图 bit 模 式 显 示 存 储 器 窗 口 9. 观 察 Terminal I/O 用 户 有 时 可 能 希 望 调 试 应 用 程 序 中 的 stdin 和 stdout 结 构, 但 是 又 没 有 实 际 的 硬 件 支 持,C-SPY 允 许 用 户 使 用 Terminal I/O 模 拟 stdin 和 stdout 注 )Terminal I/O 只 有 在 使 用 了 连 接 输 出 文 件 选 件 With I/O emulation module 时 才 可 用 也 就 是 说, 某 些 把 stdin 和 stdout 指 向 Terminal I/O 的 低 级 例 程 将 被 连 接 进 应 用 程 序 25
28 1 选 择 主 菜 单 View > Terminal I/O 显 示 I/O 操 作 的 输 出, 见 图 19 Terminal I/O 窗 口 显 示 的 内 容 取 决 于 应 用 程 序 执 行 了 多 远 图 19. Terminal I/O 窗 口 10. 执 行 程 序 到 结 束 1 选 择 主 菜 单 Debug > Go 或 工 具 条 上 的 Go 按 钮 因 为 只 有 一 个 断 点, 所 以 程 序 一 直 执 行 到 结 束 同 时 在 Debug Log 窗 口 显 示 已 经 到 达 程 序 exit 的 消 息, 见 图 20 图 20. Debug Log 窗 口 2 如 果 要 求 复 位 应 用 程 序, 选 择 主 菜 单 Debug > Reset 或 工 具 条 上 的 Reset 按 钮 3 如 果 要 退 出 C-SPY, 选 择 Debug > Stop Debugging, 或 工 具 条 上 的 Stop Debugging 按 钮 C-SPY 还 提 供 许 多 其 他 的 调 试 功 能, 如 宏 和 中 断 模 拟 等, 将 在 指 南 的 其 他 章 节 讨 论 有 关 如 何 使 用 Debug 功 能 的 详 细 介 绍 请 见 手 册 Part 4 C-SPY 的 特 点 介 绍 请 见 手 册 Part 7 以 及 联 机 帮 助 信 息 26
29 新 闻 :IAR 公 司 发 布 首 款 ARM Trace 仿 真 器 2 月 14 日, 德 国 纽 伦 堡 IAR 公 司 今 天 发 布 了 其 ARM 系 列 调 试 工 具 中 的 新 一 代 产 品 : 硬 件 调 试 设 备 IAR J-Trace 它 支 持 所 有 带 ETM (Embedded Trace Macrocell) 的 ARM7 和 ARM9 处 理 器, 通 过 全 速 USB 2.0 接 口 与 主 机 连 接, 并 提 供 2M 字 节 的 Trace 缓 存,IAR 公 司 新 版 EWARM 能 够 完 全 支 持 J-Trace 该 Trace 仿 真 器 零 售 价 仅 为 1195 美 元, 由 于 还 带 有 标 准 JTAG 接 口,IAR J-Trace 对 于 绝 大 多 数 开 发 者 而 言 都 可 以 是 唯 一 需 要 的 ARM 硬 件 调 试 设 备 技 术 细 节 Trace 规 格 USB 驱 动 的 JTAG 和 Trace (38-pin Mictor) 接 口 ; Trace 支 持 最 高 200 MHz 全 速 时 钟 和 100 MHz 支 持 所 有 ARM7 和 ARM9 处 理 器 ; 半 速 时 钟 无 需 电 源, 通 过 USB 接 口 供 电 ; 也 带 有 外 接 电 源 插 口 ; Trace 功 能 基 于 ARM ETM (Embedded Trace 集 成 在 IAR Embedded Workbench for ARM 中, 易 于 Macrocell) 设 置 和 使 用 Trace 支 持 带 有 内 置 Trace 端 口 的 设 备 2M 字 节 Trace 缓 存 基 本 性 能 体 积 紧 凑, 易 于 放 置 在 桌 面 JTAG 速 率 12 MHz 安 静, 无 风 扇 设 计 自 动 速 率 识 别 支 持 cycle accurate 和 compressed tracing USB 2.0 全 速 (12Mbit/sec) 支 持 4 位 / 8 位 / 16 位 的 Trace 端 口, 每 种 端 基 于 RTCK JTAG 信 号 的 自 适 应 时 钟 口 均 支 持 全 速 时 钟 和 半 速 时 钟 所 有 信 号 均 可 监 控 ; 目 标 电 压 可 测 量 集 成 在 IAR Embedded Workbench for ARM 中, 20-pin 标 准 JTAG 接 口,38-pin 标 准 Trace Mictor 接 口 易 于 设 置 和 使 用 含 USB 电 缆,20-pin 扁 平 电 缆 和 38-pin Trace 电 缆 Trace 窗 口 与 Source 和 Disassembly 窗 口 同 步 支 持 的 主 机 操 作 系 统 :Windows 2000 和 Windows XP Function Trace 能 够 分 层 次 地 显 示 被 调 用 的 函 数 与 C-SPY 调 试 器 全 面 集 成 ; 进 阶 的 调 试 功 能 都 可 以 在 C-SPY 中 使 用 IAR J-Trace 使 得 IAR Systems 为 ARM 开 发 者 提 供 的 工 具 链 更 为 完 整,IAR 公 司 如 今 能 够 为 我 们 所 有 不 同 种 类 的 STR ARM 微 控 制 器 用 户 提 供 完 美 的 服 务 Mr.Dominique Jugnon, 意 法 半 导 体 微 控 制 器 开 发 工 具 经 理 IAR J-Trace 对 于 我 们 的 汽 车 客 户 来 说 将 会 极 有 价 值 在 这 一 价 位 提 供 的 功 能 允 许 大 多 数 开 发 者 方 便 地 使 用 先 进 的 Trace 调 试 方 案, 提 高 开 发 质 量 Mr. Gualtiero Bagnuoli,Micronas 的 汽 车 产 品 应 用 经 理 毫 无 疑 问, 该 产 品 的 发 布 将 给 ARM 硬 件 调 试 工 具 市 场 带 来 改 变 他 总 结 道 : 内 嵌 一 定 容 量 Flash Memory 的 ARM 处 理 器 的 使 用 者 现 在 有 了 一 个 完 整 的 高 端 开 发 工 具 解 决 方 案 :IAR Embedded Workbench for ARM BaseLine 版 本, 一 块 开 发 板 以 及 IAR J-Trace 调 试 工 具, 总 价 低 于 4000 美 元! Mr. Mike Skrtic,IAR 公 司 的 开 发 套 件 经 理 27
30 第 五 章 EWARM Flash Loader 开 发 指 南 本 章 包 含 以 下 内 容 : 如 何 将 应 用 程 序 下 载 到 RAM 中 如 何 将 应 用 程 序 下 载 到 Flash 中 从 框 架 程 序 和 驱 动 程 序 两 个 部 份 分 别 介 绍 Flash Loader 本 文 还 介 绍 了 如 何 编 写 和 调 试 自 己 的 Flash Loader, 最 后, 详 细 描 述 了 Flash Loader 框 架 API 函 数 注 ) 本 文 中 的 xx 表 示 2 个 数 字, 用 于 识 别 所 用 的 处 理 器 1. 将 应 用 程 序 下 载 到 RAM 中 将 应 用 程 序 下 载 到 RAM 发 生 在 C-SPY 启 动 期 间, 由 C-SPY 自 己 控 制 执 行 所 谓 下 载 就 是 通 过 JTAG 接 口 把 数 据 写 进 目 标 系 统 当 C-SPY 启 动 时, 它 执 行 以 下 步 骤 : 从 application.dxx 文 件 中 读 取 应 用 程 序 的 二 进 制 映 象 和 调 试 信 息 ; 通 过 JTAG 接 口 将 二 进 制 映 象 传 输 到 目 标 系 统 的 RAM 中 ; 将 程 序 计 数 器 (PC) 指 向 RAM 中 的 应 用 程 序 入 口 点 此 时 RAM 中 的 应 用 程 序 已 经 准 备 好 可 以 运 行 28
31 2. 将 应 用 程 序 下 载 到 Flash 中 将 应 用 程 序 下 载 到 Flash 也 发 生 在 C-SPY 启 动 期 间, 但 不 是 由 C-SPY 执 行, 而 是 由 一 个 叫 做 Flash Loader 的 专 用 程 序 执 行 Flash Loader 先 被 装 入 到 RAM 并 运 行, 再 将 应 用 程 序 写 进 Flash 链 接 器 (linker) 生 成 两 个 输 出 文 件, 第 一 个 是 常 规 的 UBROF 格 式 目 标 文 件 ( 扩 展 名 为 dxx), 另 一 个 是 简 单 二 进 制 格 式 目 标 文 件 (simple-code, 扩 展 名 为 sim) Simple-code 格 式 十 分 简 洁 而 且 容 易 拆 包, 这 是 Flash Loader 得 以 在 目 标 硬 件 中 执 行 的 重 要 条 件 Flash Loader 是 一 个 常 规 的 IAR Embedded Workbench 应 用 程 序, 可 以 在 IAR Embedded Workbench 环 境 中 开 发 和 调 试 29
32 当 C-SPY 启 动 时, 它 执 行 以 下 步 骤 : 从 flashloader.dxx 文 件 中 读 取 Flash Loader 的 二 进 制 映 象 ; 通 过 JTAG 接 口 将 该 二 进 制 映 象 写 进 目 标 系 统 的 RAM; 将 程 序 计 数 器 (PC-1) 指 向 Flash Loader 在 RAM 中 的 入 口 点, 并 开 始 运 行 ; 通 过 文 件 I/O,Flash Loader 经 由 JTAG 接 口 把 application.sim 文 件 中 的 应 用 程 序 二 进 制 映 象 读 入 目 标 系 统 并 写 进 Flash 存 储 器 ; C-SPY 从 application.dxx 文 件 中 读 取 调 试 信 息, 并 将 程 序 计 数 器 (PC-2) 指 向 Flash 中 的 应 用 程 序 入 口 点 ; 此 时 Flash 中 的 应 用 程 序 已 经 准 备 好 可 以 运 行 3.Flash Loader 介 绍 Flash Loader 是 用 IAR Embedded Workbench 开 发 的 本 地 应 用 程 序 其 任 务 是 通 过 文 件 I/O 从 主 机 读 取 应 用 程 序 的 二 进 制 映 象, 将 映 象 拆 包, 并 写 进 Flash 存 储 器 Flash Loader 可 以 分 成 两 个 部 分 一 是 所 有 Flash Loader 所 共 用 的 框 架 部 分, 其 源 代 码 由 IAR Systems 提 供 并 包 含 在 IAR Embedded Workbench 中 ; 二 是 驱 动 部 份, 它 是 一 小 段 用 于 实 际 烧 写 Flash 存 储 器 的 小 程 序 在 IAR Embedded Workbench 中 已 经 包 含 了 一 组 用 于 各 种 芯 片 的 Flash Loader 驱 动 程 序 由 于 Flash Loader 驱 动 程 序 很 简 单, 所 以 用 户 可 以 自 行 编 写 IAR Systems 尚 未 支 持 的 芯 片 驱 动 程 序 Flash Loader 框 架 程 序 实 现 了 所 有 Flash Loader 都 具 备 的 公 共 功 能, 包 含 从 调 试 器 读 取 二 进 制 映 象, 把 用 户 变 量 ( 选 件 ) 传 递 给 Flash Loader 的 机 制, 以 及 为 了 与 用 户 交 互 而 创 建 GUI 元 素 GUI 元 素 包 括 消 息 窗 口 消 息 记 录 和 进 度 条 等 缺 省 情 况 下, 进 度 条 由 Flash Loader 框 架 程 序 所 控 制 Flash Loader 必 须 遵 循 Flash<device>.dxx 的 命 名 约 定 例 如 假 设 某 器 件 名 叫 IAR X99, 则 它 的 Flash 30
33 Loader 应 命 名 为 FlashIarX99.dxx IAR 公 司 提 供 的 Flash Loader 源 代 码 位 于 下 列 目 录 : arm\src\flashloader\framework Flash Loader 框 架 程 序 源 代 码, 含 API 头 文 件 arm\src\flashloader\<vendor>\lash<device> 各 Flash Loader 驱 动 程 序 源 代 码, 含 工 程 文 件 IAR 公 司 提 供 的 可 执 行 的 Flash Loader 位 于 下 列 目 录 : arm\config\flashloader\<vendor>\lash<device>.dxx 对 应 于 各 驱 动 程 序 的 Flash Loader 可 执 行 文 件 arm\config\flashloader\<vendor>\lash<device>.mac 可 选 的 C-SPY 宏 文 件 如 果 宏 文 件 的 名 字 和 Flash Loader 可 执 行 文 件 相 同, 该 宏 文 件 将 先 于 同 名 Flash Loader 被 装 进 RAM 并 运 行 有 些 芯 片 需 要 对 一 些 I/O 寄 存 器 进 行 初 始 化 之 后 RAM 才 能 正 常 工 作, 这 时 此 项 功 能 就 很 有 用 4. 可 选 的 Flash Loader C-SPY 宏 文 件 在 将 Flash Loader 装 入 RAM 之 前 可 能 需 要 执 行 一 个 C-SPY 宏 来 设 置 目 标 系 统 例 如, 某 些 芯 片 在 复 位 后 RAM 还 不 能 正 常 工 作, 就 需 要 用 一 个 宏 来 初 始 化 必 要 的 寄 存 器, 以 便 让 RAM 正 常 工 作 在 将 Flash Loader 装 入 RAM 之 前 所 执 行 的 宏 应 满 足 以 下 规 定 : 宏 文 件 应 存 放 在 同 名 Flash Loader 的 目 录 下 ; 宏 文 件 的 扩 展 名 应 为 mac; 宏 文 件 名 应 与 其 关 联 的 Flash Loader 名 相 同 ; 宏 文 件 中 必 须 定 义 execuserflashinit() 宏 函 数 C-SPY 将 在 把 Flash Loader 装 进 RAM 之 前 调 用 该 宏 函 数 请 注 意 在 调 试 阶 段, 当 Flash Loader 作 为 一 个 应 用 程 序 运 行 时, 必 须 用 execuserpreload() 替 代 execuserflashinit() 必 要 的 话, 在 Flash Loader 运 行 结 束 之 后, 可 以 用 宏 函 数 execuserflashexit() 来 恢 复 目 标 系 统 的 初 始 设 置 31
34 5. 与 Flash Loader 框 架 程 序 的 接 口 Flash Loader 框 架 程 序 将 首 先 初 始 化 Flash Loader 驱 动 程 序 此 时, 驱 动 程 序 可 以 执 行 各 种 初 始 化 工 作, 但 至 少 要 向 框 架 程 序 注 册 它 的 写 函 数 在 初 始 化 之 后, 框 架 程 序 将 通 过 驱 动 程 序 的 写 函 数, 一 次 传 输 一 个 字 节 给 Flash Loader 根 据 所 用 的 Flash 算 法, 有 可 能 需 要 在 驱 动 程 序 中 缓 冲 多 个 字 节, 以 便 在 将 一 个 扇 区 写 入 Flash 存 储 器 之 前 填 满 整 个 扇 区 空 间 从 框 架 程 序 向 驱 动 程 序 的 最 后 一 次 写 操 作 将 被 视 为 清 空 请 求, 允 许 驱 动 程 序 清 空 扇 区 缓 冲 中 的 任 何 剩 余 数 据 如 果 Flash Loader 驱 动 程 序 没 有 缓 冲 任 何 数 据, 清 空 请 求 可 以 被 忽 略 驱 动 程 序 不 返 回 任 何 错 误 状 态 给 框 架 程 序 一 旦 驱 动 程 序 中 发 生 错 误, 驱 动 程 序 应 通 过 调 用 FlIMessageBox()API 函 数 向 用 户 报 告 错 误, 然 后 调 用 FlErrorExit() 函 数 退 出 Flash Loader 6.Flash Loader 驱 动 程 序 实 例 本 例 展 示 如 何 为 一 种 芯 片 编 写 Flash Loader 驱 动 程 序 为 简 单 起 见, 假 设 该 芯 片 中 有 一 块 很 容 易 编 程 的 Flash; 可 以 用 一 个 简 单 的 Flash 算 法, 在 一 次 操 作 中 将 一 个 字 节 写 入 Flash 存 储 器 本 例 还 展 示 了 如 何 读 取 用 户 指 定 的 选 件, 该 选 件 说 明 了 芯 片 运 行 的 时 钟 频 率 关 于 怎 样 实 现 一 个 带 扇 区 缓 冲 的 Flash Loader, 请 参 考 IAR Embedded Workbench 所 安 装 的 Flash Loader 驱 动 程 序 源 代 码 // Flash loader driver example. #include <stdio> #include <stdlib.h> 32
35 #include Interface.h // The flash loader framework API declaration. // The CPU clock speed, the default value 4000 khz is used if no clock // is found. static int clock = 4000; // Write one byte to flash at addr. // If byte == -1 the flash loader framework signals a flush operation // at the end of the input file. static void FlashWriteByte(unsigned long addr, int byte) { unsigned char* ptr = (usigned char*)addr; if (byte == -1) return; // Simple return when the flush operation is requested. // Insert device specific instructions here to enable write // access to the flash device. *ptr = byte; // Write data byte to flash. // If some error occurs when writing to flash, this can be // communicated to the user by using code like // if (ret!= STATUS_CMD_SUCCESS) // { // FlMessageBox( CMD_ERASE_SECTORS failed. ); // FlERrrorExit(); // } // A message box will be displayed by C-SPY and downloading // will terminate after the user has clicked the OK button. } void FlashDriverInitialize(int argc, char const* argv[]) { const char* str; // Register the flash write function. FlRegisterWriteFunction(FlashWriteByte); 33
36 // See if user has passed a clock speed option. // If not, the default CCLK value is used. str = FlFindOption( - clock, 1, argc, argv); if (str) { clock = strtoul(str, 0, 0); } } 7. 编 译 链 接 Flash Loader 1 拷 贝 一 个 现 有 的 Flash Loader, 例 如 arm\src\flashloader\philips\flashphilipslpc210x; 2 确 认 编 译 器 所 用 的 文 件 包 含 路 径 包 括 了 Flash Loader 框 架 程 序 目 录 arm\src\flashloader\framework 和 Flash Loader 驱 动 程 序 目 录 ; 3 修 改 FlashPhilipsLPC210x.c 和 FlashPhilpsLPC210x.h 这 两 个 文 件 的 名 称, 使 之 与 所 用 的 芯 片 相 符 合 ; 4 链 接 器 控 制 文 件 也 应 该 设 置 为 与 所 用 的 芯 片 相 符 合 拷 贝 FlashPhilipsLPC210x.xcl, 并 修 改 其 中 的 地 址 定 义 行 : DMEMSTART= DMEMEND=40003FDF 实 际 使 用 的 地 址 必 须 能 够 映 射 到 目 标 硬 件 上 请 注 意 Flash Loader 的 代 码 和 数 据 都 是 下 载 到 RAM 中 的, 这 就 是 为 什 么 ROM 段 和 RAM 段 都 映 射 到 同 一 段 存 储 空 间 栈 和 堆 都 应 该 保 持 在 最 小 框 架 程 序 大 约 需 要 300 字 节 的 栈 空 间 请 注 意 下 面 xcl 文 件 中 的 数 字 都 是 十 六 进 制 的 : D_CSTAK_SIZE=180 D_IRQ_STACK_SIZE=40 D_HEAP_SIZE=0 Flash Loader 框 架 程 序 将 使 用 堆 (heap) 和 RAMEND( 在 链 接 器 控 制 文 件 中 声 明 ) 之 间 的 内 存 作 为 读 缓 冲 区 这 就 保 证 了 读 缓 冲 区 能 够 利 用 所 有 剩 余 的 内 存 读 缓 冲 区 应 当 尽 可 能 的 大, 以 提 高 下 载 性 能 每 次 JTAG 传 输 的 数 据 字 节 越 多, 性 能 就 越 高 如 果 剩 余 的 读 缓 冲 区 少 于 256 字 节, 框 架 程 序 将 会 报 错, 因 为 少 于 256 字 节 将 严 重 影 响 性 能 在 编 译 链 接 Flash Loader 程 序 之 前, 链 接 选 项 With I/O emulation modules 必 须 被 打 开 得 到 的 输 出 文 件 将 以 dxx 为 文 件 扩 展 名 34
37 Flash Loader 已 经 可 以 用 于 把 应 用 程 序 下 载 到 Flash 在 Embedded Workbench 中, 打 开 应 用 程 序 工 程, 再 打 开 Debugger download option 对 话 框 使 能 Flash download 选 项, 并 选 择 Override default flash loader 选 项, 指 定 你 生 成 的 Flash Loader 输 出 文 件 任 何 需 要 传 递 给 Flash Loader 的 参 数 都 可 以 写 进 Flash Loader arguments 文 本 域 现 在 启 动 调 试 器, 就 可 以 用 你 自 己 的 Flash Loader 将 应 用 程 序 下 载 到 Flash 8. 调 试 Flash Loader 调 试 Flash Loader 的 方 法 和 调 试 普 通 的 应 用 程 序 一 样 需 要 指 出 的 是,Flash Loader 程 序 在 作 为 Flash Loader 被 装 入 调 试 器 时 是 不 能 调 试 的 只 有 当 Flash Loader 本 身 就 是 IAR Embedded Workbench 中 当 前 打 开 的 工 程 时, 它 才 能 被 调 试 在 Flash Loader 框 架 程 序 中 有 一 个 调 试 环 境 该 环 境 受 头 文 件 DriverConfig.h 中 定 义 的 C 预 处 理 器 宏 变 量 控 制, 而 DriverConfig.h 被 包 含 在 框 架 程 序 的 头 文 件 Congig.h 中 在 Congig.h 文 件 中, 你 可 以 看 到 哪 些 变 量 允 许 在 DriverConfig.h 中 被 覆 盖 在 调 试 器 中 以 一 个 独 立 的 应 用 程 序 运 行 Flash Loader 时 有 几 点 不 同 要 启 动 框 架 程 序 的 调 试 环 境, 必 须 设 置 调 试 宏 变 量 DEBUG 要 写 入 Flash 的 文 件 也 必 须 用 宏 变 量 DEBUG_FILE 显 式 说 明 在 独 立 调 试 时,argc/argv 参 数 传 递 机 制 是 不 工 作 的, 参 数 必 须 用 C 预 处 理 器 宏 变 量 DEBUG_ARGS 硬 性 编 码 9.Flash Loader 框 架 程 序 的 API 本 节 介 绍 Flash Loader 框 架 程 序 所 提 供 的 API 对 于 大 多 数 Flash Loader 来 说, 很 多 API 函 数 都 是 用 不 到 的, 把 它 们 罗 列 在 此 只 是 为 了 内 容 的 完 整 性 而 已 所 有 函 数 都 标 出 了 它 们 的 用 途 Mandatory 表 示 Flash Loader 驱 动 程 序 必 须 实 现 此 函 数 Optional 表 示 Flash Loader 驱 动 程 序 可 以 根 据 需 要 选 择 性 地 实 现 此 函 数 Framework 表 示 该 函 数 只 会 被 Flash Loader 框 架 程 序 调 用, 而 通 常 不 应 该 被 Flash Loader 驱 动 程 序 调 用 所 有 API 函 数 的 原 型 都 定 义 在 头 文 件 arm\src\flashloader\framework\interface.h 之 中 初 始 化 函 数 void FlashDriverInitialize (int argc, char const* argv); 用 途 :Mandatory 35
38 Flash Loader 驱 动 程 序 必 须 定 义 此 函 数 Flash Loader 框 架 程 序 用 它 来 初 始 化 Flash Loader 驱 动 程 序 argc 传 递 Flash 变 量 的 数 目 ;argv 传 递 Flash 变 量 Flash 变 量 允 许 通 过 C-SPY 的 Flash 选 项 对 话 框 将 参 数 传 递 给 Flash Loader 此 函 数 的 一 个 典 型 用 例 是 将 CPU 的 时 钟 速 率 传 递 给 Flash Loader 驱 动 程 序 void FlRegisteWriteFunction (WriteFunctionType write_func); 用 途 :Mandatory Flash Loader 驱 动 程 序 调 用 此 函 数 向 Flash Loader 框 架 程 序 注 册 写 函 数 变 量 write_func 是 指 向 写 函 数 的 指 针 Flash Loader 框 架 程 序 将 为 每 个 要 写 进 Flash 的 字 节 调 用 这 个 写 函 数, 并 将 字 节 和 要 写 的 地 址 作 为 参 数 传 递 地 址 的 顺 序 应 确 保 是 递 增 的, 但 不 一 定 连 续 ( 即 允 许 有 间 隙 ) Flash Loader 驱 动 程 序 必 须 从 FlashDriverInitialize() 中 调 用 此 函 数 typedef void (*WriteFunctionType) (unsigned long address, int byte); 此 类 型 声 明 定 义 了 写 函 数 的 函 数 指 针 类 型 该 写 函 数 必 须 在 Flash Loader 驱 动 程 序 中 定 义 unsigned long FlGetBaseAddress (); 这 是 一 个 可 选 函 数, 用 于 获 得 用 户 在 IDE 中 设 置 的 Flash 基 地 址 如 果 用 户 没 有 设 置 Flash 基 地 址, 该 函 数 返 回 0xffffffff 例 如,AMD 兼 容 的 Flash 器 件 在 进 行 编 程 和 擦 除 时 不 依 赖 于 任 何 控 制 寄 存 器, 而 是 对 以 Flash 基 地 址 为 基 准 的 多 个 偏 移 地 址 进 行 一 系 列 总 线 写 操 作 此 时 就 有 必 要 知 道 Flash 的 基 地 址, 以 便 执 行 可 能 的 Flash 地 址 重 映 射 变 量 传 递 函 数 const char* FlFindOption (char* option, int with_value, int argc, char const* argv[]); 用 途 :optional 此 函 数 用 于 在 变 量 数 组 argv 中 寻 找 指 定 的 选 件 with_value 参 数 说 明 了 该 函 数 是 用 于 检 argv 中 是 否 存 在 某 个 选 件, 或 者 是 否 需 要 返 回 该 选 件 的 值 该 选 件 的 值 是 在 argv 中 找 到 匹 配 变 量 后 的 下 一 个 变 量 如 果 要 检 查 一 个 flag 选 件, 例 如 --smallram, 赋 with_value 为 0 如 果 要 检 查 一 个 带 值 的 选 件, 例 如 -speed 14600, 则 赋 with_value 为 1 argc 参 数 是 argv 数 组 中 的 变 量 个 数,argv 参 数 是 字 符 串 指 针 数 组 当 调 用 此 函 数 时, 可 以 直 接 使 用 FlashDriverInitialize() 函 数 中 的 argc/argv 参 数 如 果 在 argv 中 没 有 找 到 指 定 的 选 件, 函 数 返 回 一 个 空 指 针 如 果 with_value 设 为 1, 函 数 返 回 指 向 匹 配 选 件 后 面 的 那 个 变 量 的 指 针 如 果 with_value 设 为 0, 函 数 返 回 指 向 匹 配 选 件 在 argv 中 入 口 的 指 针 int FlMakeArgs (char* args, char const* argv[]); 36
39 用 途 :framework 取 一 个 用 space/tab 分 隔 的 字 符 串, 并 生 成 一 个 argv 字 符 串 数 组, 每 个 数 组 元 素 对 应 于 一 个 选 件 argv 字 符 指 针 数 组 必 须 足 够 大, 以 便 容 纳 args 字 符 串 中 的 所 有 选 件 函 数 返 回 argv 数 组 中 的 字 符 串 数 目 ( 变 量 数 ) C-SPY 用 户 接 口 函 数 void FlMessageBox (char* msg); 用 途 :optional C-SPY 将 显 示 一 个 消 息 窗 口, 其 中 显 示 msg 参 数 给 出 的 文 本 消 息 字 符 串 中 的 文 本 可 以 用 换 行 符 (\n) 分 割 成 多 行 Flash Loader 将 停 止 执 行, 直 到 按 下 消 息 窗 口 中 的 OK 按 钮 为 止 void FlMesagaLog (char* msg); 用 途 :optional C-SPY 将 在 调 试 器 的 log 窗 口 显 示 一 个 由 msg 给 出 的 log 消 息 消 息 字 符 串 中 的 文 本 可 以 用 换 行 符 (\n) 分 割 成 多 行 void FlProgressBarCreate (char* title); 用 途 :optional C-SPY 将 生 成 一 个 进 度 条 窗 口 Title 参 数 字 符 串 显 示 在 进 度 条 窗 口 的 上 方 void FlProgressBarDestroy (); 用 途 :optional C-SPY 将 关 闭 进 度 条 窗 口 void FlProgressBarUpdate (int progress); 用 途 :optional C-SPY 将 更 新 进 度 条, 以 反 映 progess 参 数 的 值 progess 参 数 的 有 效 范 围 是 0 至 100 此 函 数 只 有 在 进 度 条 已 经 生 成 的 前 提 下 才 有 效 调 用 FlProgressBarValue() 的 次 数 应 尽 可 能 少 (<10), 目 的 是 为 了 减 少 JTAG 总 线 上 的 ( 慢 ) 传 输 次 数 void FlOverrideProgressBar (); 用 途 :optional 重 载 由 Flash Loader 框 架 程 序 实 现 的 缺 省 进 度 条 大 多 数 情 况 下,Flash Loader 驱 动 程 序 不 需 要 操 纵 进 度 条, 因 为 这 是 由 框 架 程 序 中 的 输 入 文 件 读 取 例 程 来 控 制 的 如 果 Flash Loader 驱 动 程 序 实 现 了 它 自 己 的 进 度 条, 就 必 须 调 用 此 函 数 来 禁 止 缺 省 的 进 度 条 37
40 void FlErrorExit (); 用 途 :optional 终 止 Flash Loader, 并 通 知 C-SPY 调 试 器 :Flash 下 载 已 经 失 败 文 件 函 数 int FlFileOpen (char* name); 用 途 :framework 此 函 数 打 开 一 个 文 件 用 于 二 进 制 读 如 果 打 开 成 功 返 回 一 个 文 件 句 柄 ; 如 果 打 开 失 败 返 回 -1 int FlFileReadByte (int fd); 用 途 :framework 从 与 文 件 句 柄 fd 相 关 联 的 已 打 开 文 件 中 读 取 一 个 字 节 该 函 数 返 回 读 到 的 字 节 ; 当 已 读 到 文 件 末 尾 时 返 回 -1 void FlFileClose (int fd); 用 途 :framework 关 闭 与 文 件 句 柄 fd 相 关 联 的 已 打 开 文 件 IAR EWARM 嵌 入 式 系 统 编 程 与 实 践 作 者 : 徐 爱 钧 首 本 以 IAR 开 发 工 具 为 主 题 的 参 考 书 IAR EWARM 嵌 入 式 系 统 编 程 与 实 践,06 年 2 月 27 日 由 北 航 出 版 社 正 式 出 版 发 行 本 书 以 IAR 公 司 4.30A 版 本 的 EWARM 为 核 心, 详 细 介 绍 了 IAR 嵌 入 式 C 编 译 器 和 集 成 开 发 环 境 的 使 用 方 法, 并 提 供 了 Philips Atmel ST 等 世 界 著 名 半 导 体 公 司 多 种 ARM 核 嵌 入 式 处 理 器 编 程 实 例 随 书 附 送 光 盘, 包 括 免 费 学 习 软 件 和 动 画 的 软 件 使 用 演 示, 以 及 ADS 项 目 移 植 指 南 等 丰 富 技 术 文 档, 全 国 各 地 主 要 新 华 书 店 柜 台 都 有 出 售 38
EK-STM32F
STMEVKIT-STM32F10xx8 软 件 开 发 入 门 指 南 目 录 1 EWARM 安 装... 1 1.1 第 一 步 : 在 线 注 册... 1 1.2 第 二 步 : 下 载 软 件... 2 1.3 第 三 步 : 安 装 EWARM... 3 2 基 于 STMEVKIT-STM32F10xx8 的 示 例 代 码 运 行... 6 2.1 GPIO Demo... 6 2.2
More informationuntitled
http://www.embedded-soc.com/ J-LINK J-Link Rev2.1 http://www.embedded-soc.com/ 2007-11-11 http://www.embedded-soc.com/ J-LINK J-Link ARM JTAG J-LINK J-LINKJLINK J-FLASH ARM F.A.Q jlink GDBserver J-Flash
More informationARM JTAG实时仿真器安装使用指南
ARM JTAG Version 1.31 2003. 11. 12 ARM JTAG ARM JTAG.3 ARM 2.1.4 2.2.4 ARM JTAG 3.1 18 3.2 18 3.2.1 Multi-ICE Server.18 3.2.2 ADS..21 ARM JTAG 4.1 Multi-ICE Server 33 4.1.1 Multi-ICE Server..... 33 4.1.2
More information目 录
1 Quick51...1 1.1 SmartSOPC Quick51...1 1.2 Quick51...1 1.3 Quick51...2 2 Keil C51 Quick51...4 2.1 Keil C51...4 2.2 Keil C51...4 2.3 1 Keil C51...4 2.4 Flash Magic...9 2.5 ISP...9 2.6...10 2.7 Keil C51...12
More informationepub83-1
C++Builder 1 C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r 1.1 1.1.1 1-1 1. 1-1 1 2. 1-1 2 A c c e s s P a r a d o x Visual FoxPro 3. / C / S 2 C + + B u i l d e r / C
More information言1.PDF
MSP430 WINDOWS WORKBENCH MSP430 Flash Green MCU Flash Flash MCU MSP430 16 RISC 27 125ns 1.8V~3.6V A/D 6 s MSP430 10 ESD MSP430 MSP430 10 MSP430 2001 MSP430 Windows Workbench Interface Guide Windows Workbench
More information51 C 51 isp 10 C PCB C C C C KEIL
http://wwwispdowncom 51 C " + + " 51 AT89S51 In-System-Programming ISP 10 io 244 CPLD ATMEL PIC CPLD/FPGA ARM9 ISP http://wwwispdowncom/showoneproductasp?productid=15 51 C C C C C ispdown http://wwwispdowncom
More information(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor
1 4.1.1.1 (Load) 14 1.1 1 4.1.1.2 (Save) 14 1.1.1 1 4.1.2 (Buffer) 16 1.1.2 1 4.1.3 (Device) 16 1.1.3 1 4.1.3.1 (Select Device) 16 2 4.1.3.2 (Device Info) 16 2.1 2 4.1.3.3 (Adapter) 17 2.1.1 CD-ROM 2 4.1.4
More information1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F B. 1(VCC/GND) SH79F6431 C. VDDIO SH79F6431 P4 P5 P0.6 P0.7 VDDIO VDDIO=5V D. 2 V 1.0
SH79F6431 1. SH79F6431 1T 8051 FLASH SH79F JET51 Keil µ vision JTAG 1.1. SH79F6431 LQFP64 1.2. (Target Board) SH79F6431 1 V 1.0 1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F6431 1 2 1 B. 1(VCC/GND)
More informationOracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE "Project Properties" IDE makefile 1.
Oracle Solaris Studio 12.2 IDE 2010 9 2 8 9 10 11 13 20 26 28 30 32 33 Oracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE "Project Properties" IDE makefile 1. "File" > "New
More informationNEXT SDT2.51 C:\ARM251 SDT2.51 ARM SDT 2.51 ARM PROJECT MANAGER SDT 2
S3C44B0 SDT DRAGNBOY MICROSTAR ARM 51 ARM S3C44B0 ARM SDT2.51 IAR ADS SDT2.51 S3C44B0 LEDTEST SDT ARM 1 2 SDT embed.8800.org SDT2.51 SDT2.51 ARM ARM CPU ARM SDT ADS ADS MULTI-ICE SDT JTAG JTAG SDT SDT2.51
More information1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File
51 C 51 51 C C C C C C * 2003-3-30 pnzwzw@163.com C C C C KEIL uvision2 MCS51 PLM C VC++ 51 KEIL51 KEIL51 KEIL51 KEIL 2K DEMO C KEIL KEIL51 P 1 1 1 1-1 - 1 Project New Project 1 2 Windows 1 3 N C test
More informationIAR Embedded Workbench用户指南
IAR Embedded Workbench 用户指南 IAR Embedded Workbench for ARM 是 IAR Systems 公司为 ARM 微处理器开发的一个集成开发环境 ( 下面简称 IAR EWARM) 比较其他的 ARM 开发环境,IAR EWARM 具有入门容易 使用方便和代码紧凑等特点 故在这里介绍给打算学习使用或正在使用 ARM 芯片的朋友们共同探讨 IAR Systems
More informationICD ICD ICD ICD ICD
MPLAB ICD2 MPLAB ICD2 PIC MPLAB-IDE V6.0 ICD2 usb PC RS232 MPLAB IDE PC PC 2.0 5.5V LED EEDATA MPLAB ICD2 Microchip MPLAB-IDE v6.0 Windows 95/98 Windows NT Windows 2000 www.elc-mcu.com 1 ICD2...4 1.1 ICD2...4
More informationSmart2.doc
Smart-ICE ARM RealView Developer Suite, ARM http://www.armzone.com 1 Smart-ICE Part 1.... 5 1.1... 5 1.1.1... 5 1.1.2... 6 1.1.3... 7 1.2 Smart-ICE... 7 1.2.1... 7 1.2.2... 8 1.3... 9 1.3.1... 9 1.3.2...
More informationuntitled
niosii H:\DB2005\project\niosDK\Example\NiosSmall QuartusII4.2 File -> New Project Wizard Diectory,Name,Top-Level Entity Add Files EDA Tools Setting Finish, OK H:\DB2005\project\niosDK\Example\NiosSmall
More informationIAR visualSTATE Workshop
优 秀 工 具 助 力 嵌 入 式 应 用 的 开 发 效 率 盛 磊 东 亚 区 高 级 工 程 师 IAR 上 海 办 事 处 2005-07 07-0909 Tel: 021-6267 0236 IAR 公 司 概 要 成 立 于 1983 年 总 部 位 于 瑞 典 第 四 大 城 市 乌 普 萨 拉 于 1986 年 推 出 世 界 上 首 个 嵌 入 式 C 编 译 器 是 一 家 世
More informationOracle Oracle Solaris Studio IDE makefile C C++ Fortran makefile IDE Solaris Linux C/C++/Fortran Oracle IDE "P
Oracle Solaris Studio 12.3 IDE 2011 12 E26461-01 2 7 8 9 9 Oracle 10 12 14 21 26 27 29 31 32 33 Oracle Solaris Studio IDE makefile C C++ Fortran makefile IDE Solaris Linux C/C++/Fortran Oracle IDE "Project
More informationAbstract arm linux tool-chain root NET-Start! 2
Lab III - Embedding Linux 1 Abstract arm linux tool-chain root NET-Start! 2 Part 1.4 Step1. tool-chain 4 Step2. PATH 4 Part 2 kernel 5 Step1. 5 Step2... 6 Step3...8 Part 3 root. 8 Step1. 8 Step2. 8 Part
More informationmvc
Build an application Tutor : Michael Pan Application Source codes - - Frameworks Xib files - - Resources - ( ) info.plist - UIKit Framework UIApplication Event status bar, icon... delegation [UIApplication
More informationPTS7_Manual.PDF
User Manual Soliton Technologies CO., LTD www.soliton.com.tw - PCI V2.2. - PCI 32-bit / 33MHz * 2 - Zero Skew CLK Signal Generator. - (each Slot). -. - PCI. - Hot-Swap - DOS, Windows 98/2000/XP, Linux
More informationKL DSC DEMO 使用说明
:0755-82556825 83239613 : (0755)83239613 : http://www.kingbirdnet.com EMAIL Good989@163.com 1 1 KB3000 DTU... 3 1.1... 3 1.2... 3 1.3... 3 1.4... 3 2... 4 2.1 GSM/GPRS... 4 2.2... 4 2.3... 5 2.4... 6 2.5...
More informationAL-MX200 Series
PostScript Level3 Compatible NPD4760-00 TC Seiko Epson Corporation Seiko Epson Corporation ( ) Seiko Epson Corporation Seiko Epson Corporation Epson Seiko Epson Corporation Apple Bonjour ColorSync Macintosh
More informationIP505SM_manual_cn.doc
IP505SM 1 Introduction 1...4...4...4...5 LAN...5...5...6...6...7 LED...7...7 2...9...9...9 3...11...11...12...12...12...14...18 LAN...19 DHCP...20...21 4 PC...22...22 Windows...22 TCP/IP -...22 TCP/IP
More informationUSB解决方案.ppt
USB USB? RS232 USB USB HID U modem ADSL cable modem IrDA Silabs USB CP210x USB UART USB RS-232 USB MCU 15 USB 12 FLASH MCU 3 USB MCU USB MCU C8051F32x 10 ADC 1.5%, Vref CPU 25MIPS 8051 16KB Flash -AMUX
More informationuntitled
XILINX Platform Cbale USB www.hseda.com ...... Platform Cable USB Compatible.................. impact.........1 platform Cable USB Compatible.........1...1...1...1...1...1 Platform Cable USB Compatible
More informationC/C++ - 文件IO
C/C++ IO Table of contents 1. 2. 3. 4. 1 C ASCII ASCII ASCII 2 10000 00100111 00010000 31H, 30H, 30H, 30H, 30H 1, 0, 0, 0, 0 ASCII 3 4 5 UNIX ANSI C 5 FILE FILE 6 stdio.h typedef struct { int level ;
More informationWindows RTEMS 1 Danilliu MMI TCP/IP QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos eco
Windows RTEMS 1 Danilliu MMI TCP/IP 80486 QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos ecos Email www.rtems.com RTEMS ecos RTEMS RTEMS Windows
More informationChapter 2
2 (Setup) ETAP PowerStation ETAP ETAP PowerStation PowerStation PowerPlot ODBC SQL Server Oracle SQL Server Oracle Windows SQL Server Oracle PowerStation PowerStation PowerStation PowerStation ETAP PowerStation
More informationAL-M200 Series
NPD4754-00 TC ( ) Windows 7 1. [Start ( )] [Control Panel ()] [Network and Internet ( )] 2. [Network and Sharing Center ( )] 3. [Change adapter settings ( )] 4. 3 Windows XP 1. [Start ( )] [Control Panel
More informationMicrosoft Word - InoTouch Editor编程软件手册2012.2.10.doc
目 录 第 一 章 关 于 InoTouch Editor 编 程 软 件 的 安 装... - 6-1.1 InoTouch 系 列 HMI 和 InoTouch Editor 软 件 的 简 介... - 6-1.2 安 装 InoTouch Editor 编 程 软 件... - 10-1.3 系 统 连 接 图... - 12-1.4 InoTouch 系 列 人 机 界 面 的 系 统 设
More informationJTAG ICE PC JTAG ICE JTAG ISP... 5 IDE AVR STUDIO JTAGICE JTAGICE... 12
... 3... 3... 3... 3... 4 1JTAG ICE PC... 4 2JTAG ICE... 4 3... 4 4... 4 5JTAG... 5 6ISP... 5 IDE... 6 1 AVR STUDIO... 6 2 JTAGICE... 6 3JTAGICE... 12 4.... 16 5.... 17 6. JTAG ICE... 19 ISP... 20 1PonyProg2000...
More informationuntitled
ATARM AT91SAM7S ARM Team Mcuzone http://www.mcuzone.com Rev1.0a 2006-11 Rev1.0a: 2006-11 QQ 8204136 13957118045 MSN hdapple_2000@hotmail.com 1 ARM 2 AT91 3 ARM KEIL,IAR,ADS,RV,WINARM 4 ARM WIGGLER,MULTI-ICE,XLINK,ULINK
More information2/80 2
2/80 2 3/80 3 DSP2400 is a high performance Digital Signal Processor (DSP) designed and developed by author s laboratory. It is designed for multimedia and wireless application. To develop application
More informationC PICC C++ C++ C C #include<pic.h> C static volatile unsigned char 0x01; static volatile unsigned char 0x02; static volatile unsigned cha
CYPOK CYPOK 1 UltraEdit Project-->Install Language Tool: Language Suite----->hi-tech picc Tool Name ---->PICC Compiler Executable ---->c:hi-picinpicc.exe ( Command-line Project-->New Project-->File Name--->myc
More informationebook140-9
9 VPN VPN Novell BorderManager Windows NT PPTP V P N L A V P N V N P I n t e r n e t V P N 9.1 V P N Windows 98 Windows PPTP VPN Novell BorderManager T M I P s e c Wi n d o w s I n t e r n e t I S P I
More informationaudiogram3 Owners Manual
USB AUDIO INTERFACE ZH 2 AUDIOGRAM 3 ( ) * Yamaha USB Yamaha USB ( ) ( ) USB Yamaha (5)-10 1/2 AUDIOGRAM 3 3 MIC / INST (XLR ) (IEC60268 ): 1 2 (+) 3 (-) 2 1 3 Yamaha USB Yamaha Yamaha Steinberg Media
More informationCh03_嵌入式作業系統建置_01
Chapter 3 CPU Motorola DragonBall ( Palm PDA) MIPS ( CPU) Hitachi SH (Sega DreamCast CPU) ARM StrongARM CPU CPU RISC (reduced instruction set computer ) CISC (complex instruction set computer ) DSP(digital
More information2 Keil µ vision 2.1 1) Keil µ vision2 V2.34 µ vision3 2) Sino_Keil.exe Keil c:\keil\ 3) JET51 USB PC C:\Keil\ USB PC 4) S-L
1 SH88F516 8051 64K FLASH 1024 EEPROM SH88F516 JET51 S-Lab Keil µ vision ISP51 Keil µ vision ISP51 ISP51 PC RS232 MCU SH88F516 SH88F516 1.1 SH88F516 1.1 SH88F516 SH88Fxx: QFP44, DIP40 RAM Flash E2 ADC
More informationC C C The Most Beautiful Language and Most Dangerous Language in the Programming World! C 2 C C C 4 C 40 30 10 Project 30 C Project 3 60 Project 40
C C trio@seu.edu.cn C C C C The Most Beautiful Language and Most Dangerous Language in the Programming World! C 2 C C C 4 C 40 30 10 Project 30 C Project 3 60 Project 40 Week3 C Week5 Week5 Memory & Pointer
More informationuntitled
MPICH anzhulin@sohu.com 1 MPICH for Microsoft Windows 1.1 MPICH for Microsoft Windows Windows NT4/2000/XP Professional Server Windows 95/98 TCP/IP MPICH MS VC++ 6.x MS VC++.NET Compaq Visual Fortran 6.x
More informationBus Hound 5
Bus Hound 5.0 ( 1.0) 21IC 2007 7 BusHound perisoft PC hound Bus Hound 6.0 5.0 5.0 Bus Hound, IDE SCSI USB 1394 DVD Windows9X,WindowsMe,NT4.0,2000,2003,XP XP IRP Html ZIP SCSI sense USB Bus Hound 1 Bus
More information目 錄 版 次 變 更 記 錄... 2 原 始 程 式 碼 類 型 之 使 用 手 冊... 3 一 安 裝 軟 體 套 件 事 前 準 備... 3 二 編 譯 流 程 說 明... 25 1
科 技 部 自 由 軟 體 專 案 原 始 程 式 碼 使 用 手 冊 Source Code Manual of NSC Open Source Project 可 信 賴 的 App 安 全 應 用 框 架 -App 應 用 服 務 可 移 轉 性 驗 證 Trusted App Framework -Transferability Verification on App MOST 102-2218-E-011-012
More information典型自编教材
河 南 科 技 大 学 计 算 机 实 验 教 学 中 心 1. 计 算 机 文 化 基 础 实 验 指 导 书 2. 数 据 结 构 实 验 指 导 书 3. 操 作 系 统 实 验 指 导 书 4. 面 向 对 象 程 序 设 计 实 验 指 导 书 5. 数 据 库 原 理 实 验 指 导 书 6. 编 译 原 理 实 验 指 导 书 7. JAVA 程 序 设 计 实 验 指 导 书 8.
More informationMicrosoft Word - 11.doc
除 錯 技 巧 您 將 於 本 章 學 到 以 下 各 項 : 如 何 在 Visual C++ 2010 的 除 錯 工 具 控 制 下 執 行 程 式? 如 何 逐 步 地 執 行 程 式 的 敘 述? 如 何 監 看 或 改 變 程 式 中 的 變 數 值? 如 何 監 看 程 式 中 計 算 式 的 值? 何 謂 Call Stack? 何 謂 診 斷 器 (assertion)? 如 何
More informationSymantec™ Sygate Enterprise Protection 防护代理安装使用指南
Symantec Sygate Enterprise Protection 防 护 代 理 安 装 使 用 指 南 5.1 版 版 权 信 息 Copyright 2005 Symantec Corporation. 2005 年 Symantec Corporation 版 权 所 有 All rights reserved. 保 留 所 有 权 利 Symantec Symantec 徽 标 Sygate
More information68369 (ppp quickstart guide)
Printed in USA 04/02 P/N 68369 rev. B PresencePLUS Pro PC PresencePLUS Pro PresencePLUS Pro CD Pass/Fails page 2 1 1. C-PPCAM 2. PPC.. PPCAMPPCTL 3. DB9D.. STPX.. STP.. 01 Trigger Ready Power 02 03 TRIGGER
More informationCC213
: (Ken-Yi Lee), E-mail: feis.tw@gmail.com 9 [P.11] : Dev C++ [P.12] : http://c.feis.tw [P.13] [P.14] [P.15] [P.17] [P.23] Dev C++ [P.24] [P.27] [P.34] C / C++ [P.35] 10 C / C++ C C++ C C++ C++ C ( ) C++
More informationSTM32 STM3232ARM Cortex-M3 Cortex-M3 STM32Thumb-2 STM32MCU Cortex-M3ARM MCU STM32ARM 32 ARMCortex-M3 32 STM32 Cortex-M3 ARM Cortex-M3 ARM ARM
STM32 ARM Cortex -M3 32 www.st.com/mcu www.stmicroelectronics.com.cn/mcu STM32 STM3232ARM Cortex-M3 Cortex-M3 STM32Thumb-2 STM32MCU 32 1632 Cortex-M3ARM MCU STM32ARM 32 ARMCortex-M3 32 STM32 Cortex-M3
More informationrz_Newsletter2016_en_160111.indd
2016 Android AUTOSAR Linux AUTOSARAU Reverse ging Target Communication Framework ARM CoreSight TM Requirements Analysis Nexus Timing Tools Intel Trace Hub GDB Infineon MCDS Unit Testing PIL Simulation
More informationKT-SOPCx开发套件简明教程
V2.03 2005-9-1 FPGA SOC FPGA/SOPC IT QuartusII NiosII IDE FPGA/SOPC FPGA/SOPC FPGA/SOPC CT-SOPCx FPGA/SOPC CPLD/FPGA www.fpga.com.cn CPLD/FPGA FPGA QuartusII NiosII CPU SOPC SOPC Builder NiosII IDE 1 www.21control.com
More informationVIDEOJET connect 7000 VJC-7000-90 zh- CHS Operation Manual VIDEOJET connect 7000 zh-chs 3 目 录 1 浏 览 器 连 接 7 1.1 系 统 要 求 7 1.2 建 立 连 接 7 1.2.1 摄 像 机 中 的 密 码 保 护 7 1.3 受 保 护 的 网 络 7 2 系 统 概 述 8 2.1 实 况
More informationARM Cortex-M3 (STM32F) STMicroelectronics ( ST) STM32F103 Core: ARM 32-bit Cortex -M3 CPU 72 MHz, 90 DMIPS with 1.25 DMIPS/MHz Single-cycle multiplica
CP Chip Power ARM Cortex-M3 (STM32F) ARM Cortex-M3 (STM32F) STMicroelectronics ( ST) STM32F103 Core: ARM 32-bit Cortex -M3 CPU 72 MHz, 90 DMIPS with 1.25 DMIPS/MHz Single-cycle multiplication and hardware
More information,,, PCB, AR M VxWorks DSP,,,,,,,,,,, (CIP) /,,.:,2005 ISBN TP36 CIP (2005) : ( 10 ) : : (010 ) : (010)
,,, PCB, AR M VxWorks DSP,,,,,,,,,,, (CIP) /,,.:,2005 ISBN 7-5635-1099-0...............TP36 CIP (2005)076733 : ( 10 ) :100876 : (010 )62282185 : (010)62283578 : publish@bupt.edu.cn : : : 787 mm960 mm 1/
More informationSST SPAC SST SoftICE SST89C5x/SST89x554RC /564RD /SST89x516/5xRD / SoftICE SoftICE MCU SoftICE SS
SST SoftICE SST89C5x/SST89x554RC /564RD /SST89x516/5xRD2 1...2 1.1...2 1.2...2 1.3 /...2 2 SoftICE...2 3 SoftICE MCU...2 4 SoftICE...3 4.1 SST BootLoader SOFTICE...3 4.2 SoftICE SST MCU...6 5 SoftICE...7
More informationebook140-8
8 Microsoft VPN Windows NT 4 V P N Windows 98 Client 7 Vintage Air V P N 7 Wi n d o w s NT V P N 7 VPN ( ) 7 Novell NetWare VPN 8.1 PPTP NT4 VPN Q 154091 M i c r o s o f t Windows NT RAS [ ] Windows NT4
More information目次
軟 體 工 程 期 末 報 告 網 路 麻 將 91703014 資 科 三 黃 偉 嘉 91703024 資 科 三 丘 祐 瑋 91703030 資 科 三 江 致 廣 1 目 次 壹 前 言 (Preface) P.4 貳 計 畫 簡 述 及 預 期 效 益 (Project Description and Expected Results) P.4 參 系 統 開 發 需 求 (System
More informationAXIS P7224 Video Encoder Blade – Installation Guide
安 装 指 南 AXIS P7224 刀 片 视 频 编 码 器 中 文 法 律 考 虑 事 项 视 频 和 音 频 监 视 可 能 会 受 法 律 限 制, 各 个 国 家 / 地 区 的 法 律 会 有 所 不 同 如 将 本 产 品 用 于 监 控 目 的, 需 要 先 检 查 是 否 符 合 你 所 在 区 域 内 的 法 律 规 定 本 产 品 包 括 四 个 (4) H.264 解 码
More informationf2.eps
前 言, 目 录 产 品 概 况 1 SICAM PAS SICAM 电 力 自 动 化 系 统 配 置 和 使 用 说 明 配 置 2 操 作 3 实 时 数 据 4 人 机 界 面 5 SINAUT LSA 转 换 器 6 状 态 与 控 制 信 息 A 版 本 号 : 08.03.05 附 录, 索 引 安 全 标 识 由 于 对 设 备 的 特 殊 操 作 往 往 需 要 一 些 特 殊 的
More information一个开放源码的嵌入式仿真环境 ― SkyEye
SkyEye SkyEye http://hpclab.cs.tsinghua.edu.cn/~skyeye/ I hear and I forget, I see and I remember, I do and I understand. SkyEye SkyEye SkyEye SkyEye SkyEye 1. SkyEye PC pervasive computing PC I O PDA
More informationuntitled
\ \ \ DOP11B 06/2011 16929837 / ZH SEW-EURODRIVE Driving the world 1 5 1.1 5 1.2 5 1.3 6 1.4 6 1.5 6 1.6 6 1.7 6 2 7 2.1 7 2.2 7 2.3 8 2.4 8 2.5 8 2.6 9 2.7 / 11 2.8 11 2.9 11 2.10 11 2.11 12 3 (DOP11B-10
More informationP4VM800_BIOS_CN.p65
1 Main H/W Monitor Boot Security Exit System Overview System Time System Date [ 17:00:09] [Fri 02/25/2005] BIOS Version : P4VM800 BIOS P1.00 Processor Type : Intel (R) Pentium (R) 4 CPU 2.40 GHz Processor
More information行业
PCI-1727U 快 速 安 装 使 用 手 册 PCI-1727U 快 速 安 装 使 用 手 册... 1 第 一 章 产 品 介 绍... 2 1.1 概 述...2 1.1.1 即 插 即 用 功 能...2 1.1.2 灵 活 的 电 压 输 出 范 围...2 1.1.3 板 卡 ID...2 1.2 特 点 :...2 1.3 选 型 指 导...2 第 二 章 安 装 与 测 试...
More informationCC213
: (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,
More informationsolutions guide
solutions guide Tridium 01 Table of Contents Tridium... 1 Frameworks... 4 Niagara AX Framework... 5 Sedona Framework... 6.... 7 NPM... 8 Sedona Chip... 9 AX Supervisor... 10 AX SoftJACE...11...12. JACE
More informationPROFIBUS3.doc
PLC PLC ProfiBus 3. PROFIBUS-DP PROFIBUS-DP PROFIBUS-DP PROFIBUS S7 STEP7 SIMATIC NET S5 COM PROFIBUS COM5431 PROFIBUS-DP GSD GSD *.GSD *. GSE GSD S7 STEP7 PROFIBUS DP S7-400 CPU416-2DP S7-200 PROFIBUS
More informationPCM-3386用户手册.doc
PCM-3386 BBPC-4x86 10/100M PC/104 (Lanry technology Co. Ltd. Zhuhai) 38 1012836 (Address: Room 1012,Linhai Building,No. 38,west of Shihua Road,Zhuhai City,Guangdong Province,China) (post code)519015 (phone)0756-3366659
More informationThis page left blank intentionally
Network Guide Guide Réseau Netzwerkbetrieb Guía de red Guida alla rete Netwerkhandleiding Guia de Rede Nätverksguide Руководство по работе в сети Regulatory models: W60, W61 010-0756-00 DISPERINDAG No.
More informationApplication Note Format
USB 說 2 - AD PWM Office: 6F, No. 12, Innovation 1st. RD., Science-Based Industrial Park, Hsin-Chu City, Taiwan, R.O.C Tel: +886-3-6661766 ext.1672 Fax: +886-3-6661765 Etoms Electronics Corp. Publication
More informationPPBSalesDB.doc
Pocket PowerBuilder SalesDB Pocket PowerBuilder PDA Pocket PowerBuilder Mobile Solution Pocket PowerBuilder Pocket PowerBuilder C:\Program Files\Sybase\Pocket PowerBuilder 1.0 %PPB% ASA 8.0.2 ASA 9 ASA
More information.------------------------------------------------------------------1. DSP --------------------------------2. ----------------3 3.1 -------------------
ICETEK-5100PP ICETEK-5100USB1.1/2.0 DSP 118 A 1004 010-82671912/13/14/15 E-mailwelcome@realtimedsp.com.cn 100086 010-82671916 www.realtimedsp.com.cn .------------------------------------------------------------------1.
More informationuntitled
8086/8088 CIP /. 2004.8 ISBN 7-03-014239-X.... TP313 CIP 2004 086019 16 100717 http://www.sciencep.com * 2004 8 2004 8 1 5 500 787 1092 1/16 16 1/2 391 000 1 2 ii 1 2 CAI CAI 3 To the teacher To the student
More informationP4V88+_BIOS_CN.p65
1 Main H/W Monitor Boot Security Exit System Overview System Time System Date [ 17:00:09] [Wed 12/22/2004] BIOS Version : P4V88+ BIOS P1.00 Processor Type : Intel (R) Pentium (R) 4 CPU 2.40 GHz Processor
More information图 片 展 示 : 资 源 简 介 : FPGA Altera CycloneII EP2C5T144C8 (4608 个 LE) 2 路 有 源 晶 振 (50M,25M) AS & JTAG 标 准 接 口 VGA 接 口 UART 接 口 蜂 鸣 器 8bit 并 行 DAC 8 路 按 键
官 方 淘 宝 地 址 :http://metech.taobao.com/ MeTech verilog 典 型 例 程 讲 解 V1.0 笔 者 :MeTech 小 芯 技 术 支 持 QQ : 417765928 1026690567 技 术 支 持 QQ 群 :207186911 China AET 讨 论 组 http://group.chinaaet.com/293 笔 者 博 客 :http://blog.csdn.net/ywhfdl
More informationP4Dual-915GL_BIOS_CN.p65
1 Main H/W Monitor Boot Security Exit System Overview System Time System Date Total Memory DIMM 1 DIMM 2 [ 14:00:09] [Wed 01/05/2005] BIOS Version : P4Dual-915GL BIOS P1.00 Processor Type : Intel (R) Pentium
More information775i65PE_BIOS_CN.p65
1 Main H/W Monitor Boot Security Exit System Overview System Time System Date [ 14:00:09] [Wed 10/20/2004] BIOS Version : 775i65PE BIOS P1.00 Processor Type : Intel (R) CPU 3.20 GHz Processor Speed : 3200
More informationImportant Notice SUNPLUS TECHNOLOGY CO. reserves the right to change this documentation without prior notice. Information provided by SUNPLUS TECHNOLO
Car DVD New GUI IR Flow User Manual V0.1 Jan 25, 2008 19, Innovation First Road Science Park Hsin-Chu Taiwan 300 R.O.C. Tel: 886-3-578-6005 Fax: 886-3-578-4418 Web: www.sunplus.com Important Notice SUNPLUS
More informationMICROCHIP EVM Board : APP APP001 PICmicro Microchip APP001 40pin PDIP PICmicro Design Tips Character LCM Temperature Sensor Application I/O Pi
MICROCHIP EVM Board : APP001 1-1. APP001 PICmicro Microchip APP001 40pin PDIP PICmicro Design Tips Character LCM Temperature Sensor Application I/O Pin 16 I/O Extension Interface 1-2. APP001 Block_A Block_B
More informationWindows XP
Windows XP What is Windows XP Windows is an Operating System An Operating System is the program that controls the hardware of your computer, and gives you an interface that allows you and other programs
More informationMicrosoft Word - 正文.doc
1 2 1 2 3 4 5 6 7 8 9 10 3 1 150 2 150 1 1 1.1 1.1.1 1.2 1.2.1 1.2.2 1.2.3 1.3 1.3.1 1.3.2 1.4 1.4.1 CPU 1.4.2 I/O 1.4.3 I/O 1.5 1.5.1 CISC RISC 1.5.2 1.5.3 1.6 1.6.1 1.6.2 N 1.6.3 2 2.1 2.1.1 2.1.2 2.1.3
More information目录
ALTERA_CPLD... 3 11SY_03091... 3 12SY_03091...4....5 21 5 22...8 23..10 24..12 25..13..17 3 1EPM7128SLC.......17 3 2EPM7032SLC.......18 33HT46R47......19..20 41..20 42. 43..26..27 5151DEMO I/O...27 52A/D89C51...28
More information如何使用MyNSLab(MNSL)完成老師指派的作業(學生篇)
Section Page 1. 2. MNSL A.. MyNorthStarLab 老. 行 曆 12. 1. G. 說 H. 1 STUDENT'S QUICK START GUIDE STEP 1: Before You Register STEP 1 Browser Tune-up Check and System Requirements Go to www.mynorthstarlab.com
More information基于UML建模的管理管理信息系统项目案例导航——VB篇
PowerBuilder 8.0 PowerBuilder 8.0 12 PowerBuilder 8.0 PowerScript PowerBuilder CIP PowerBuilder 8.0 /. 2004 21 ISBN 7-03-014600-X.P.. -,PowerBuilder 8.0 - -.TP311.56 CIP 2004 117494 / / 16 100717 http://www.sciencep.com
More information02
Thinking in C++: Volume One: Introduction to Standard C++, Second Edition & Volume Two: Practical Programming C++ C C++ C++ 3 3 C C class C++ C++ C++ C++ string vector 2.1 interpreter compiler 2.1.1 BASIC
More information2 2 3 DLight CPU I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AM
Oracle Solaris Studio 12.2 DLight 2010 9 2 2 3 DLight 3 3 6 13 CPU 16 18 21 I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AMP Apache MySQL
More informationP4i45GL_GV-R50-CN.p65
1 Main Advanced Security Power Boot Exit System Date System Time Floppy Drives IDE Devices BIOS Version Processor Type Processor Speed Cache Size Microcode Update Total Memory DDR1 DDR2 Dec 18 2003 Thu
More informationuntitled
1 5 IBM Intel 1. IBM 第 1/175 页 第 2/175 页 第 3/175 页 80 第 4/175 页 2. IBM 第 5/175 页 3. (1) 第 6/175 页 第 7/175 页 第 8/175 页 = = 第 9/175 页 = = = = = 第 10/175 页 = = = = = = = = 3. (2) 第 11/175 页 第 12/175 页 第 13/175
More informationCadence SPB 15.2 VOICE Cadence SPB 15.2 PC Cadence 3 (1) CD1 1of 2 (2) CD2 2of 2 (3) CD3 Concept HDL 1of 1
Cadence SPB 15.2 VOICE 2005-05-07 Cadence SPB 15.2 PC Cadence 3 (1) CD1 1of 2 (2) CD2 2of 2 (3) CD3 Concept HDL 1of 1 1 1.1 Cadence SPB 15.2 2 Microsoft 1.1.1 Windows 2000 1.1.2 Windows XP Pro Windows
More informationPROTEUS VSM
Proteus VSM-- 1/1 PROTEUS VSM Proteus VSM ISIS Prospice VSM Proteus PROSPICE ARM7 PIC AVR HC11 8051 CPU LCD RS232 LED IAR Keil Hitech C make 6000 SPICE SPICE DLL SPICE3F5 14 FM PROTEUS PCB LED/LCD / 300
More informationuntitled
EDM12864-GR 1 24 1. ----------------------------------------------------3 2. ----------------------------------------------------3 3. ----------------------------------------------------3 4. -------------------------------------------------------6
More informationGuide to Install SATA Hard Disks
SATA RAID 1. SATA. 2 1.1 SATA. 2 1.2 SATA 2 2. RAID (RAID 0 / RAID 1 / JBOD).. 4 2.1 RAID. 4 2.2 RAID 5 2.3 RAID 0 6 2.4 RAID 1.. 10 2.5 JBOD.. 16 3. Windows 2000 / Windows XP 20 1. SATA 1.1 SATA Serial
More informationuntitled
Interactivity Kit 020-100989-03 2014 Christie Digital Systems USA Inc. ISO 9001 14001 a. b. c. d. DVD e. internet f. g. / h. i. j. LCD LCD LCD 5 8 k. l. LCD m. / (i) / (ii) FCC 15 A CAN ICES-3 (A) / NMB-3
More informationSerial ATA ( Silicon Image SiI3114)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 5 (4) S A T A... 8 (5) S A T A... 10
Serial ATA ( Silicon Image SiI3114)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 5 (4) S A T A... 8 (5) S A T A... 10 Ác Åé å Serial ATA ( Silicon Image SiI3114) S A T A (1) SATA (2)
More informationIP TCP/IP PC OS µclinux MPEG4 Blackfin DSP MPEG4 IP UDP Winsock I/O DirectShow Filter DirectShow MPEG4 µclinux TCP/IP IP COM, DirectShow I
2004 5 IP TCP/IP PC OS µclinux MPEG4 Blackfin DSP MPEG4 IP UDP Winsock I/O DirectShow Filter DirectShow MPEG4 µclinux TCP/IP IP COM, DirectShow I Abstract The techniques of digital video processing, transferring
More informationJava 1 Java String Date
JAVA SCJP Java 1 Java String Date 1Java 01 Java Java 1995 Java Java 21 Java Java 5 1-1 Java Java 1990 12 Patrick Naughton C++ C (Application Programming Interface API Library) Patrick Naughton NeXT Stealth
More informationC语言的应用.PDF
AVR C 9 1 AVR C IAR C, *.HEX, C,,! C, > 9.1 AVR C MCU,, AVR?! IAR AVR / IAR 32 ALU 1KBytes - 8MBytes (SPM ) 16 MBytes C C *var1, *var2; *var1++ = *--var2; AVR C 9 2 LD R16,-X ST Z+,R16 Auto (local
More informationIC-900W Wireless Pan & Tilt Wireless Pan & Tilt Remote Control / Night Vision FCC ID:RUJ-LR802UWG
IC-900W Wireless Pan & Tilt Wireless Pan & Tilt Remote Control / Night Vision FCC ID:RUJ-LR802UWG --------------------------------------------TABLE OF CONTENTS------------------------------------------
More informationLearning Java
Java Introduction to Java Programming (Third Edition) Prentice-Hall,Inc. Y.Daniel Liang 2001 Java 2002.2 Java2 2001.10 Java2 Philip Heller & Simon Roberts 1999.4 Java2 2001.3 Java2 21 2002.4 Java UML 2002.10
More information