ARM s3c2410 中断问题的解决



Similar documents
I

说 明 为 了 反 映 教 运 行 的 基 本 状 态, 为 校 和 院 制 定 相 关 政 策 和 进 行 教 建 设 与 改 革 提 供 据 依 据, 校 从 程 资 源 ( 开 类 别 开 量 规 模 ) 教 师 结 构 程 考 核 等 维 度, 对 2015 年 春 季 期 教 运 行 基

修改版-操作手册.doc

,,,,, :,, (.,, );, (, : ), (.., ;. &., ;.. &.., ;, ;, ),,,,,,, ( ) ( ),,,,.,,,,,, : ;, ;,.,,,,, (., : - ),,,, ( ),,,, (, : ),, :,

何 秋 琳 张 立 春 视 觉 学 习 研 究 进 展 视 觉 注 意 视 觉 感 知

<433A5C446F63756D656E E E67735C41646D696E F725CD7C0C3E65CC2DBCEC4CFB5CDB3CAB9D3C3D6B8C4CFA3A8BCF2BBAFA3A95CCAB9D3C3D6B8C4CF31302D31392E646F63>

¹ º ¹ º 农 业 流 动 人 口 是 指 户 口 性 质 为 农 业 户 口 在 流 入 地 城 市 工 作 生 活 居 住 一 个 月 及 以 上 的 流 动 人 口 非 农 流 动 人 口 是 指 户 口 性 质 为 非 农 户 口 在 流 入 地 城 市 工 作 生 活 居 住 一 个


18 上 报 该 学 期 新 生 数 据 至 阳 光 平 台 第 一 学 期 第 四 周 至 第 六 周 19 督 促 学 习 中 心 提 交 新 增 专 业 申 请 第 一 学 期 第 四 周 至 第 八 周 20 编 制 全 国 网 络 统 考 十 二 月 批 次 考 前 模 拟 题 第 一 学

龚 亚 夫 在 重 新 思 考 基 础 教 育 英 语 教 学 的 理 念 一 文 中 援 引 的 观 点 认 为 当 跳 出 本 族 语 主 义 的 思 维 定 式 后 需 要 重 新 思 考 许 多 相 连 带 的 问 题 比 如 许 多 发 音 的 细 微 区 别 并 不 影 响 理 解 和

《C语言基础入门》课程教学大纲

HSK( 一 级 ) 考 查 考 生 的 日 常 汉 语 应 用 能 力, 它 对 应 于 国 际 汉 语 能 力 标 准 一 级 欧 洲 语 言 共 同 参 考 框 架 (CEF) A1 级 通 过 HSK( 一 级 ) 的 考 生 可 以 理 解 并 使 用 一 些 非 常 简 单 的 汉 语

评 委 : 徐 岩 宇 - 个 人 技 术 标 资 信 标 初 步 审 查 明 细 表 序 号 投 标 单 位 投 标 函 未 按 招 标 文 件 规 定 填 写 漏 填 或 内 容 填 写 错 误 的 ; 不 同 投 标 人 的 投 标 文 件 由 同 一 台 电 脑 或 同 一 家 投 标 单

( ) 信 号 与 系 统 Ⅰ 学 科 基 础 必 修 课 教 周 2016 年 06 月 13 日 (08:00-09:35) ( )

深圳市新亚电子制程股份有限公司

目 录 一 系 统 访 问... 1 二 门 户 首 页 申 报 用 户 审 核 用 户... 2 三 系 统 登 录 用 户 名 密 码 登 录 新 用 户 注 册 用 户 登 录 已 注 册 用

评 委 : 李 炎 斌 - 个 人 技 术 标 资 信 标 初 步 审 查 明 细 表 序 号 投 标 单 位 投 标 函 未 按 招 标 文 件 规 定 填 写 漏 填 或 内 容 填 写 错 误 的 ; 不 同 投 标 人 的 投 标 文 件 由 同 一 台 电 脑 或 同 一 家 投 标 单

随着执业中医师资格考试制度的不断完善,本着为我校中医学专业认证服务的目的,本文通过对我校中医类毕业生参加2012年和2013年的中医执业医师考试成绩及通过率、掌握率进行分析,并与全国的平均水平进行差异比较分析,以此了解我校执业中医师考试的现状,进而反映我校中医类课程总体教学水平,发现考核知识模块教学中存在的不足,反馈给相关学院和教学管理部门,以此提高教学和管理水平。

 编号:

徐天宏:《基因天堂》.doc

目 录 关 于 图 标... 3 登 陆 主 界 面... 3 工 单 管 理... 5 工 单 列 表... 5 搜 索 工 单... 5 工 单 详 情... 6 创 建 工 单... 9 设 备 管 理 巡 检 计 划 查 询 详 情 销 售 管


用节点法和网孔法进行电路分析

第2章 数据类型、常量与变量

<4D F736F F D C3E6CFF2B6D4CFF3A3A8B5DAC8FDD5C220C0E0CCD8D0D4A3A92E646F63>

名 称 生 命 科 学 学 院 环 境 科 学 1 生 物 学 仅 接 收 院 内 调 剂, 初 试 分 数 满 足 我 院 生 物 学 复 试 最 低 分 数 线 生 命 科 学 学 院 生 态 学 5 生 态 学 或 生 物 学 生 命 科 学 学 院


第 一 部 分 MagiCAD for Revit 安 装 流 程

课程类 别

正 规 培 训 达 规 定 标 准 学 时 数, 并 取 得 结 业 证 书 二 级 可 编 程 师 ( 具 备 以 下 条 件 之 一 者 ) (1) 连 续 从 事 本 职 业 工 作 13 年 以 上 (2) 取 得 本 职 业 三 级 职 业 资 格 证 书 后, 连 续 从 事 本 职 业

<4D F736F F D D323630D6D0B9FAD3A6B6D4C6F8BAF2B1E4BBAFB5C4D5FEB2DFD3EBD0D0B6AF C4EAB6C8B1A8B8E6>

( 二 ) 现 行 统 一 高 考 制 度 不 利 于 培 养 人 的 创 新 精 神,,,,,,,,,,,,, [ ],,,,,,,,,,, :, ;,,,,,,? ( 三 ) 现 行 统 一 高 考 制 度 不 利 于 全 体 学 生 都 获 得 全 面 发 展,, [ ],,,,,,,,,,,

Microsoft Word - 第7章 图表反转形态.doc

2006年顺德区高中阶段学校招生录取分数线

抗 战 时 期 国 民 政 府 的 银 行 监 理 体 制 探 析 % # % % % ) % % # # + #, ) +, % % % % % % % %

!!!!!!!!!!

教师上报成绩流程图


4 进 入 交 互 区 设 置 的 组 件 管 理, 在 组 件 管 理 中, 教 师 可 以 选 择 课 程 空 间 中 的 所 有 组 件, 并 通 过 点 击 启 用 或 不 启 用 选 定 组 件 在 课 程 空 间 中 的 显 示 5 进 入 工 作 室 管 理 的 工 作 室 首 页,

Microsoft Word - 文件汇编.doc

公 开 刊 物 须 有 国 内 统 一 刊 (CN), 发 表 文 章 的 刊 物 需 要 在 国 家 新 闻 出 版 广 电 总 局 ( 办 事 服 务 便 民 查 询 新 闻 出 版 机 构 查 询 ) 上 能 够 查 到 刊 凡 在 有 中 国 标 准 书 公 开

<4D F736F F D20B9D8D3DAB0BABBAAA3A8C9CFBAA3A3A9D7D4B6AFBBAFB9A4B3CCB9C9B7DDD3D0CFDEB9ABCBBE C4EAC4EAB6C8B9C9B6ABB4F3BBE1B7A8C2C9D2E2BCFBCAE92E646F6378>

第 期 李 伟 等 用 方 法 对 中 国 历 史 气 温 数 据 插 值 可 行 性 讨 论

<4D F736F F D20BFC9B1E0B3CCD0F2BFD8D6C6CFB5CDB3C9E8BCC6CAA6B9FABCD2D6B0D2B5B1EAD7BC2E646F63>

IntelBook_cn.doc

3 月 30 日 在 中 国 证 券 报 上 海 证 券 报 证 券 时 报 证 券 日 报 和 上 海 证 券 交 易 所 网 站 上 发 出 召 开 本 次 股 东 大 会 公 告, 该 公 告 中 载 明 了 召 开 股 东 大 会 的 日 期 网 络 投 票 的 方 式 时 间 以 及 审

目 录 一 激 活 账 号... 2 二 忘 记 密 码 后 如 何 找 回 密 码?... 3 三 如 何 管 理 学 校 信 息 及 球 队 学 生 教 师 等 信 息... 6 四 如 何 发 布 本 校 校 园 文 化? 五 如 何 向 教 师 发 送 通 知? 六

Your Child is Myopic

3 复 试 如 何 准 备 4 复 试 成 绩 计 算 5 复 试 比 例 6 复 试 类 型 7 怎 么 样 面 对 各 种 复 试 04 05

一 公 共 卫 生 硕 士 专 业 学 位 论 文 的 概 述 学 位 论 文 是 对 研 究 生 进 行 科 学 研 究 或 承 担 专 门 技 术 工 作 的 全 面 训 练, 是 培 养 研 究 生 创 新 能 力, 综 合 运 用 所 学 知 识 发 现 问 题, 分 析 问 题 和 解 决

抗 日 战 争 研 究 % 年 第 期! # # % %

伊 犁 师 范 学 院 611 语 言 学 概 论 全 套 考 研 资 料 <2016 年 最 新 考 研 资 料 > 2-2 语 言 学 纲 要 笔 记, 由 考 取 本 校 本 专 业 高 分 研 究 生 总 结 而 来, 重 点 突 出, 借 助 此 笔 记 可 以 大 大 提 高 复 习 效

目 录 页 1. 欢 迎 使 用 网 上 预 约 面 谈 访 问 系 统 新 用 户 新 用 户 登 入 帐 户 程 序 启 动 网 上 预 约 面 谈 访 问 帐 户 核 对 帐 户 的 地 址 资 料


(Microsoft Word - NCRE\314\345\317\265\265\367\325\37313\324\27221\272\3051.doc)

抗 日 战 争 研 究 年 第 期

中 中 中 中 部 中 岗 位 条 件 历 其 它 历 史 师 地 理 师 生 物 师 体 与 健 康 师 从 事 中 历 史 工 从 事 中 地 理 工 从 事 中 生 物 工 从 事 中 体 与 健 康 工 2. 课 程 与 论 ( 历 史 ); 2. 科 ( 历 史 )

证券代码: 证券简称:长城电脑 公告编号:

0 年 上 半 年 评 价 与 考 核 细 则 序 号 部 门 要 素 值 考 核 内 容 考 核 方 式 考 核 标 准 考 核 ( 扣 原 因 ) 考 评 得 3 安 全 生 产 目 30 无 同 等 责 任 以 上 道 路 交 通 亡 人 事 故 无 轻 伤 责 任 事 故 无 重 大 质 量

黄 金 原 油 总 持 仓 增 长, 同 比 增 幅 分 别 为 4.2% 和 4.1% 而 铜 白 银 以 及 玉 米 则 出 现 减 持, 减 持 同 比 减 少 分 别 为 9.4%,9.4% 以 及 6.5% 大 豆, 豆 粕 结 束 连 续 4 周 总 持 仓 量 增 长, 出 现 小 幅

中 国 软 科 学 年 第 期!!!

西 南 民 族 学 院 学 报 哲 学 社 会 科 学 版 第 卷 资 料 来 源 中 国 统 计 年 鉴 年 年 新 中 国 五 十 年 统 计 资 料 汇 编 中 国 人 口 统 计 年 鉴 年 数 据 资 料 来 源 中 国 统 计 年 鉴 中 国 统 计 出 版 社 年 版 资 料 来 源

思 想 政 治 理 论 经 核 查 无 误 思 想 政 治 理 论 经 核 查 无 误 思 想 政 治 理 论 经 核 查 无 误 思 想

21 业 余 制 -- 高 起 专 (12 级 ) 75 元 / 学 分 网 络 学 院 学 生 沪 教 委 财 (2005)49 号 江 西 化 校 工 科 22 业 余 制 -- 高 起 专 (12 级 ) 70 元 / 学 分 网 络 学 院 学 生 沪 教 委 财 (2005)49 号 吉

目 录 一 基 本 情 况 项 目 介 绍 项 目 结 构... 1 二 具 体 功 能 介 绍 新 闻 发 布 ) 进 入 新 闻 管 理 页 面 ) 进 入 添 加 新 闻 页 面 ) 完 成 新 闻 添 加... 3

<433A5C C6B73625C B746F705CB9FABCCAD6D0D2BDD2A9D7A8D2B5B8DFBCB6BCBCCAF5D6B0B3C6C6C0C9F3C9EAC7EBD6B8C4CFA3A CDA8D3C3B0E6A3A92E646F63>

金 不 少 于 800 万 元, 净 资 产 不 少 于 960 万 元 ; (3) 近 五 年 独 立 承 担 过 单 项 合 同 额 不 少 于 1000 万 元 的 智 能 化 工 程 ( 设 计 或 施 工 或 设 计 施 工 一 体 ) 不 少 于 2 项 ; (4) 近 三 年 每 年

定 位 和 描 述 : 程 序 设 计 / 办 公 软 件 高 级 应 用 级 考 核 内 容 包 括 计 算 机 语 言 与 基 础 程 序 设 计 能 力, 要 求 参 试 者 掌 握 一 门 计 算 机 语 言, 可 选 类 别 有 高 级 语 言 程 序 设 计 类 数 据 库 编 程 类

2009—2010级本科课程教学大纲与课程简介格式

第三章 作业

<443A5C6D B5C30312EB9A4D7F7CEC4B5B55C30322EBACFCDACCEC4B5B55C C30342EC8CBC9E7CCFC5C31332ECFEEC4BFC5E0D1B55C E30385C322EB2D9D7F7CAD6B2E12E646F63>

Template BR_Rec_2005.dot

工 程 勘 察 资 质 标 准 根 据 建 设 工 程 勘 察 设 计 管 理 条 例 和 建 设 工 程 勘 察 设 计 资 质 管 理 规 定, 制 定 本 标 准 一 总 则 ( 一 ) 本 标 准 包 括 工 程 勘 察 相 应 专 业 类 型 主 要 专 业 技 术 人 员 配 备 技 术

导 数 和 微 分 的 概 念 导 数 的 几 何 意 义 和 物 理 意 义 函 数 的 可 导 性 与 连 续 性 之 间 的 关 系 平 面 曲 线 的 切 线 和 法 线 导 数 和 微 分 的 四 则 运 算 基 本 初 等 函 数 的 导 数 复 合 函 数 反 函 数 隐 函 数 以

自 服 务 按 钮 无 法 访 问 新 系 统 的 自 服 务 页 面 因 此 建 议 用 户 从 信 网 中 心 ( 主 页, 右 下 角 位 置 的 常 用 下 载, 或 校 园 网 用 户 自 服 务 ( 首 页

!!!!!

云信Linux SSH认证代理用户手册

三武一宗灭佛研究

untitled


附件1:

类 似 地, 又 可 定 义 变 下 限 的 定 积 分 : ( ). 与 ψ 统 称 为 变 限 积 分. f ( ) d f ( t) dt,, 注 在 变 限 积 分 (1) 与 () 中, 不 可 再 把 积 分 变 量 写 成 的 形 式 ( 例 如 ) 以 免 与 积 分 上 下 限 的

<4D F736F F D C4EAB9A4B3CCCBB6CABFCAFDD1A7D7A8D2B5BFCEBFBCCAD4B4F3B8D9D3EBD2AAC7F3>


一 开 放 性 的 政 策 与 法 规 二 两 岸 共 同 的 文 化 传 承 三 两 岸 高 校 各 自 具 有 专 业 优 势 远 见 杂 志 年 月 日

Transcription:

ARM s3c2410 中 断 问 题 的 解 决 popsonic@126.com QQ:52179095 sonyer 赵 海 涛 一 状 况 7 月 的 某 一 天, 一 时 兴 起 觉 得 ARM 9 应 该 比 较 好 玩 于 是 跑 到 淘 宝 上 去 逛 逛, 搜 了 半 天 发 现 开 发 板 基 本 上 是 44B0 和 2410 2 种 难 道 三 星 的 东 西 最 便 宜? 工 业 级 的 philips 和 atmel 半 个 影 子 都 没 有 看 到 没 有 办 法, 就 买 块 2410 先 玩 着 吧 心 里 想 着 也 应 该 没 有 太 大 的 关 系 就 是 大 家 手 头 可 能 有 的 那 块 mc2410e, 接 口 丰 富 功 能 强 大 说 实 在 的 板 子 挺 好, 成 本 嘛 估 计 也 就 是 350 左 右 吧 问 题 就 此 开 始 了, 以 前 用 的 是 philips 的 21XX 还 有 22XX, 三 星 的 玩 意 一 直 没 有 碰 过 学 ARM 这 东 西 就 是 要 和 底 层 打 交 道 才 会 体 验 到 乐 趣 于 是 到 三 星 的 网 站 找 了 半 天 down 下 了 她 的 数 据 手 册 和 测 试 代 码 TEST2410 其 实 测 试 代 码 在 买 的 时 候 的 那 张 光 盘 里 也 有 解 压, 新 建 工 程 文 件, 添 加 源 文 件 编 译, 运 行 AXD 跑 起 来 了! 但 是 我 测 试 到 59 项 就 是 Timer Interrupt 的 时 候 死 机 了 没 有 任 何 错 误 二 交 涉 出 现 这 个 状 况, 第 一 个 反 应 就 是 板 子 有 问 题 毕 竟 人 家 是 三 星 网 站 上 的 代 码, 专 门 做 这 个 板 子 测 试 的, 当 然 了 官 方 的 班 子 上 还 带 了 红 外 和 gps 等 模 块 不 过 只 要 不 去 测 试 那 些 就 没 有 问 题 打 开 QQ 询 问 猎 人 大 哥, 态 度 是 不 错, 然 后 给 我 个 QQ 号, 说 是 开 发 这 块 板 子 的 那 个 人 的 号 码 其 实 这 块 板 子 我 似 曾 相 识, 后 来 发 现 和 立 宇 泰 的 板 子 很 象 其 实 这 块 板 子 的 技 术 含 量 最 高 的 就 是 那 块 6 层 核 心 板, 因 为 频 率 很 高, 所 以 布 线 的 时 候 都 需 要 等 长 线 来 连 到 flash 和 Ram 布 线 工 具 protel 是 不 行 的, 一 般 用 cadence, 后 来 也 证 实 了 我 的 想 法 跑 题 了, 不 好 意 思 总 之, 我 想 传 达 的 信 息 是 能 做 出 这 快 板 子 的 人, 还 是 很 牛 的! 联 系 到 那 个 牛 人 之 后, 牛 人 告 诉 我 : 我 们 的 板 子, 肯 定 是 没 有 问 题 的, 要 不 然 操 作 系 统 怎 么 跑 起 来 的? 对 啊, 能 跑 linux 啊, 操 作 系 统 能 够 支 持 多 任 务 是 因 为 时 间 片 分 配 的 原 理, 而 时 间 片 是 由 时 间 中 断 支 持 的, 不 然 跑 不 起 来 啊 但 是 其 他 的, 这 位 牛 人 什 么 也 没 有 说 郁 闷 ing.. 三 求 救 剩 下 的 时 间 就 是 跑 论 坛, 去 各 个 群 问 高 手 然 后 得 到 的 答 案, 要 么 是 这 帮 人 就 喜 欢 搞 linux 和 ce. 要 么 就 是 咬 定 我 的 程 序 有 问 题 真 奇 怪, 他 们 玩 linux 和 ce 主 要 玩 的 是 什 么 如 果 只 是 把 arm 上 装 个 linux 然 后 就 每 天 开 开 玩 玩 游 戏 上 上 网, 他 们 为 什 么 不 去 玩 xp? 这 样 要 好 玩 的 多!ce 上 的 嵌 入 我 也 玩 过, 用 的 是 c#.net 写 的 控 制 程 序 做 的 是 车 载 上 面 的 东 西 并 体 会 不 到 什 么 乐 趣 啊 还 有 牛 人 们, 上 论 坛 就 是 谈 USB 驱 动 怎 么 写, 说 实 话 那 个 太 高 深 了! 我 真 的 还 不 知 道 怎 么 写, 不 过 最 简 单 的 东 西 我 还 没 有 搞 定 呢! 足 足 郁 闷 了 2 个 月 后, 我 决 定 自 己 搞 定 它! 四 从 BootLoader 开 始 众 所 周 之,BootLoader 是 开 发 嵌 入 系 统 的 难 点 以 前 用 philips 的 arm 的 时 候 启 动 代 码 使 用 的 是 周 立 功 提 供 的 除 了 改 变 一 下 锁 向 环 的 设 置 来 改 变 主 频, 基 本 上 没 有 用 过 其 他 的 功 能 端 口 的 配 置 一 般 都 是 到 了 main() 函 数 之 后 再 加 一 个 LowlevelInital() 来 初 始 化 端 口, 毕 竟 c 写 起 来 比 那 些 汇 编 要 方 便 的 多! 不 过 要 解 决 现 在 的 问 题 真 的 是 要 看 BootLoader 了

打 开 测 试 程 序 的 2410init.s AREA Init,CODE,READONLY ; 这 个 表 示 只 读 段 的 代 码 区 域 Init 是 这 个 段 的 名 称 ENTRY ; 这 个 表 示 入 口 ;1)The code, which converts to Big-endian, should be in little endian code. ;2)The following little endian code will be compiled in Big-Endian mode. ; The code byte order should be changed as the memory bus width. ;3)The pseudo instruction,dcd can't be used here because the linker generates error. ASSERT :DEF:ENDIAN_CHANGE [ ENDIAN_CHANGE ASSERT :DEF:ENTRY_BUS_WIDTH [ ENTRY_BUS_WIDTH=32 b ChangeBigEndian ;DCD 0xea000007 [ ENTRY_BUS_WIDTH=16 andeq r14,r7,r0,lsl #20 ;DCD 0x0007ea00 [ ENTRY_BUS_WIDTH=8 streq r0,[r0,-r10,ror #1 ;DCD 0x070000ea b ResetHandler b HandlerUndef ;handler for Undefined mode b HandlerSWI ;handler for SWI interrupt b HandlerPabort ;handler for PAbort b HandlerDabort;handler for DAbort b. ;reserved b HandlerIRQ ;handler for IRQ interrupt b HandlerFIQ ;handler for FIQ interrupt 这 个 是 异 常 向 量 表, 注 意 很 多 人 认 为 是 中 断 向 量 表, 其 实 不 是, 是 异 常 向 量 表! 这 个 地 址 是 0x00000000 开 始 的 不 过, 不 一 定 是 物 理 地 址 的 0x0000000 而 是 逻 辑 上 的 0x00000000 用 过 arm7 的 朋 友 应 该 知 道 在 arm7 中 有 一 个 Remap 的 寄 存 器 用 来 将 逻 辑 地 址 映 射 到 地 址 0 因 为 我 们 普 通 调 试 的 时 候, 一 般 都 直 接 在 RAM 里 而 运 行 的 时 候 则 放 到 flash 里 去 让 它 运 行! 当 系 统 重 启 之 后 系 统 会 从 0x00000000 开 始 运 行, 也 就 是 b ResetHandler: ;======= ; ENTRY ;======= ResetHandler

ldr r0,=wtcon ;watch dog disable ldr r1,=0x0 ldr r0,=intmsk ldr r1,=0xffffffff ;all interrupt disable ldr r0,=intsubmsk ldr r1,=0x7ff ;all sub interrupt disable, 2002/04/10 [ {FALSE} ; rgpfdat = (rgpfdat & ~(0xf<<4)) ((~data & 0xf)<<4); ; Led_Display ldr r0,=gpfcon ldr r1,=0x5500 ldr r0,=gpfdat ldr r1,=0x10 ;To reduce PLL lock time, adjust the LOCKTIME register. ldr r0,=locktime ldr r1,=0xffffff [ PLL_ON_START ;Configure MPLL ldr r0,=mpllcon ldr r1,=((m_mdiv<<12)+(m_pdiv<<4)+m_sdiv) ;Fin=12MHz,Fout=50MHz ;Check if the boot is caused by the wake-up from POWER_OFF mode. ldr r1,=gstatus2 ldr r0,[r1 tst r0,#0x2 ;In case of the wake-up from POWER_OFF mode, go to POWER_OFF_WAKEUP handler. bne WAKEUP_POWER_OFF EXPORT StartPointAfterPowerOffWakeUp

StartPointAfterPowerOffWakeUp 0 ;Set memory control registers ldr r0,=smrdata ldr r1,=bwscon ;BWSCON Address add r2, r0, #52 ;End address of SMRDATA ldr r3, [r0, #4 str r3, [r1, #4 cmp r2, r0 bne %B0 bl ;Initialize stacks InitStacks ; Setup IRQ handler ldr r0,=handleirq ldr r1,=isrirq ;This routine is needed ;if there isn't 'subs pc,lr,#4' at 0x18, 0x1c ;Copy and paste RW data/zero initialized data ldr r0, = Image$$RO$$Limit ; Get pointer to ROM data ldr r1, = Image$$RW$$Base ; and RAM copy ldr r3, = Image$$ZI$$Base 1 2 3 ;Zero init base => top of initialised data cmp r0, r1 ; Check that they are different beq %F2 cmp r1, r3 ; Copy init data ldrccr2, [r0, #4 ;--> LDRCC r2, [r0 + ADD r0, r0, #4 strcc r2, [r1, #4 ;--> STRCC r2, [r1 + ADD r1, r1, #4 bcc %B1 ldr r1, = Image$$ZI$$Limit ; Top of zero init segment mov r2, #0 cmp r3, r1 ; Zero init strcc r2, [r3, #4 bcc %B3 [ :LNOT:THUMBCODE

bl Main ;Don't use main() because... b. [ THUMBCODE ;for start-up code for Thumb mode orr lr,pc,#1 bx lr CODE16 bl Main ;Don't use main() because... b. CODE32 这 段 代 码 是 进 行 堆 栈 的 设 置, 然 后 还 有 copy 一 些 数 据 到 RAM 中 去, 这 些 我 们 先 不 说 最 后 bl Main 跳 到 主 函 数 中 去 执 行 你 的 代 码! 0x18 b HandlerIRQ ;handler for IRQ interrupt 当 中 断 发 生 的 时 候 就 会 到 0x18 去 执 行 代 码, 然 后 跳 入 到 中 断 向 量 表 去 判 断 发 生 的 什 么 中 断 最 后 根 据 中 断 号 找 到 中 断 服 务 程 序 的 入 口 地 址, 然 后 执 行 中 断 服 务 程 序, 最 后 再 跳 回 到 原 先 的 地 方 继 续 执 行! 关 于 中 断 的 执 行 过 程 请 参 靠 其 他 书 籍!( 我 这 里 不 太 好 画 图 ) 仔 细 研 究 过 这 些 代 码 后 发 现 没 有 什 么 问 题, 因 为 既 然 程 序 能 够 跑 到 主 函 数 去 说 明 前 面 的 初 始 化 是 对 的 但 是 为 什 么 中 断 执 行 不 了 呢? 五 希 望 我 决 定 打 开 AXD 然 后 去 调 试 看 看 到 底 是 哪 里 出 了 错! 这 个 是 在 AXD 里 的 信 息 可 以 看 到 0x18 出 是 跳 转 到 了 0x2e4 这 个 是 一 个 非 条 件 跳 转! b 0x2e4! 灵 魂 附 体! 怎 么 回 事? 一 个 死 循 环? 这 个 和 我 想 的 可 不 一 样 啊! 怪 不 到 一 进 中 断 就 什 么 反 应 都 没 有 了, 人 家 死 循 环 着 呢! 该 死 的 问 题, 纠 缠 了 我 2 个 月 原 来 是 死 循 环 了 转 身 回 厨 房 泡 了 杯 茶, 点 了 支 烟 在 想 那 里 出 了 问 题 5 分 钟 后, 我 决 定 还 是 看 看 编 译 出 来 的 东 西 Test.bin 是 我 代 码 里 编 译 出 来 的 二 进 制 代 码!

这 个 和 编 译 器 里 的 不 一 样 啊, 难 道 我 编 译 的 东 西 一 直 没 有 在 里 面 运 行? 这 次 我 猜 对 了, 确 实 是 这 样 的 我 前 面 说 过 2410 是 没 有 Remap 机 制 的 我 把 二 进 制 代 码 放 到 了 0x30000000 的 地 方. 但 是 我 原 先 的 想 法 是 既 然 没 有 Remap 机 制, 那 么 肯 定 有 其 他 的 机 制 将 开 头 的 那 个 向 量 表, 放 到 0x00000000 但 是 其 实 我 错 了 那 么 开 始 的 那 段 代 码 是 谁 的 呢? 其 实 是 vivi 的 于 是 我 把 代 码 的 R0 Base 的 值 改 为 0x00000000 想 直 接 放 到 0x00000000 的 地 方 把 原 先 的 改 了 然 后 我 执 行, 这 次 我 乖 了, 先 看 看 内 存 里 面 的 值, 这 次 里 面 的 值 是 对 的 了 于 是 我 再 往 下 执 行, 执 行 到 入 了 main 函 数 之 后 没 有 执 行 几 条 然 后 就 报 错 了 然 后 pc 指 针 就 跑 到 了 一 个 很 奇 怪 的 地 址, 很 后 面! 俗 语 程 序 跑 飞 了! 六 真 相 我 打 开 地 址 然 后 看 内 存 空 间, 发 现 到 了 oxff0 后 面 的 地 址 里 面 的 内 容 是 乱 的, 不, 是 太 一 致 了! 到 了 这 个 份 上 我 算 是 醒 悟 过 来 了, 查 数 据 手 册 啊! 查 了 若 干 资 料 后,( 不 是 数 据 手 册 ) 找

到 了 2410 的 启 动 机 制 原 来 2410 是 有 一 个 4K 的 片 内 RAM, 启 动 之 后 会 将 NAND FLASH 中 前 面 4K 的 内 容 拷 贝 到 这 个 叫 做 stepping stone 的 4k RAM 中 执 行 ( 其 实 你 可 以 发 现 0x00000000 和 0x40000000 的 内 容 是 一 样 的!) 然 后 由 这 4k 的 代 码 copy flash 中 的 代 码 到 RAM 中 去 然 后 把 pc 指 到 RAM 中 的 某 个 开 始 的 地 方 来 运 行! 其 实 超 过 0xff0 后 面 的 数 据 是 乱 的,NAND FLASH 的 内 容 你 是 看 不 到 的! 知 道 了 这 个 原 因 我 就 变 聪 明 了, 写 了 以 下 代 码 : void copy_data(void) { char * p_tag,* p_src; int i=0; p_tag=0; p_src=(char *)0x30000000; for (i=0;i<4096;i++) { *p_tag++=*p_src++; } } 然 后 程 序 就 跑 OK 了!( 代 码 的 作 用 是 把 0x30000000 开 始 的 4k 内 容 放 到 0x00000000 去 ) 但 是 这 个 只 是 个 治 标 不 治 本 的 方 法, 也 只 是 适 合 于 调 试, 我 现 在 知 道 问 题 出 在 vivi 上! 于 是 打 开 vivi vivi\arch\s3c2410\head.s: 在 第 720 行 找 到 了 处 理 中 断 的 代 码 HandleIRQ: #ifdef CONFIG_DEBUG_LL mov r12, r14 ldr r0, STR_IRQ ldr r1, SerBase bl PrintWord bl PrintFaultAddr #endif 1: b 1b @ infinite loop 牛 人 让 中 断 自 己 玩 了! 至 此 想 必 大 家 知 道 如 何 处 理 了! 七 尾 声 现 在 我 已 经 做 在 电 脑 前 面 开 始 写 一 些 比 较 好 玩 点 的 代 码 了 收 获 是 知 道 如 何 去 解 决 这 些 问 题 教 训 是 : 数 据 手 册 啊, 一 定 要 看! 而 且 要 认 真 看!