Microsoft Word - Copy of end-4.doc

Similar documents
1 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

目 录

NEXT SDT2.51 C:\ARM251 SDT2.51 ARM SDT 2.51 ARM PROJECT MANAGER SDT 2

untitled

ATC MCU AC781x 开发板说明手册 Version 1.0.5( )

目 录

EK-STM32F

ARM JTAG实时仿真器安装使用指南

1-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

SST SPAC SST SoftICE SST89C5x/SST89x554RC /564RD /SST89x516/5xRD / SoftICE SoftICE MCU SoftICE SS

正式发文

51 C 51 isp 10 C PCB C C C C KEIL

如何生成库文件 (MDK 和 IAR) 问题 : 该问题由某客户提出, 主要是想自己做一个库给第三方, 但是又不想让别人得到源代码, 不知道如何去做, 尝试了几种办法, 发现都会有些问题. 调研 : 目前 ST 已经提供了各种开源的库文件 ( 如 USB/Ethernet 等等 ), 但是部分客户依

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc

保母人員丙級應檢資料第二部份 doc

第 十 一 期 2015 年 2 月 关 于 车 辆 购 置 税 征 收 管 理 有 关 问 题 的 公 告 ( 点 击 跳 转 至 全 文 ) 国 家 税 务 总 局 公 告 2015 年 第 4 号 关 于 电 池 涂 料 消 费 税 征 收 管 理 有 关 问 题 的 公 告 ( 点 击 跳

DVK530/531扩展板

Microsoft Word - 在VMWare-5.5+RedHat-9下建立本机QTopia-2.1.1虚拟平台a.doc

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

mvc

河 南 蓝 皮 书 文 化 (2008) 网 络 文 学 主 要 是 指 在 网 上 原 创 的 文 学 作 品 作 为 网 络 文 化 的 主 力 部 分, 网 络 文 学 的 发 展 在 近 年 来 势 不 可 挡 作 为 凭 借 新 兴 媒 介 兴 起 的 文 学, 网 络 文 学 与 传 统

《將進酒》

21 flash

Microsoft Word - AVR32 UC3 isp下载.doc

嵌入式系统实验报告之一

ebook50-15

Using STM32 Software Library

2/14 Buffer I12, /* x=2, buffer = I 1 2 */ Buffer I243, /* x=34, buffer = I 2 43 */ x=56, buffer = I243 Buffer I243I265 code_int(int x, char *buffer)

2012/07/01 陈 春 华 老 师 参 加 国 家 级 青 年 教 师 企 业 实 践 2012/07/03 20 名 教 师 前 往 12 家 企 事 业 单 位 短 期 实 践 2012/07/16 全 国 示 范 校 内 涵 建 设 暨 专 业 建 设 培 训 交 流 会 2012/07

untitled

Microsoft Word - IAR-LED.doc

(➂)11. 炎 炎 夏 日, 即 使 下 起 滂 沱 大 雨, 都 消 除 不 了 令 人 心 煩 的 暑 氣 這 句 話 主 要 想 表 達 什 麼? ➀ 夏 日 裡 經 常 下 著 滂 沱 大 雨, 令 人 心 煩 ➁ 下 著 滂 沱 大 雨 的 日 子, 可 以 消 除 暑 氣 ➂ 夏 日

範本檔

高雄市立五福國民中學九十四學年度第一學期第三次段考二年級本國語文學習領域試題卷

人 物 春 秋 杨 永 泰 将 其 削 藩 策 略 概 括 为 : 以 经 济 方 法 瓦 解 冯 玉 祥 的 第 二 集 团 军, 以 政 治 方 法 解 决 阎 锡 山 的 第 3 集 团 军, 以 军 事 方 法 解 决 李 宗 仁 的 第 四 集 团 军, 以 外 交 方 法 对 付 张 学

台北老爺校外實地參訪結案報告


糖尿病食譜




Microsoft Word 養生與保健_中山大學_講義


萬里社區老人健康照護手冊

Microsoft Word - 強制汽車責任保險承保及理賠作業處理辦法 doc

Microsoft Word - 06.Understanding of Pregnancy and Birth.doc

附 件 一 : 办 理 集 中 式 银 期 转 账 业 务 网 点 名 单 序 号 地 区 网 点 名 称 地 址 联 系 人 电 话 23 工 商 银 行 安 徽 省 铜 陵 百 大 支 行 铜 陵 市 长 江 东 路 50 号 鲁 桂 珍 工 商 银 行 安 徽

2. 二 年 級 吳 毓 秀 老 師 : 感 謝 午 餐 公 司 平 時 均 能 準 時 送 餐, 但 希 望 能 不 要 使 用 加 工 品, 且 學 生 反 映 希 望 能 多 加 蛋 品 的 食 物 3. 三 年 級 柯 阿 青 老 師 : 雞 肉 有 血 水 味, 請 午 餐 公 司 能 調

,,,,,,, (,, ),,,,,,,,,,,,,,, ,,, 4 11,, ( ),,,, ( ), :, ( ),,, 1995, 66 ; ( ),, 1996, , 3-4,,

2002 4,,, 1941,,,,,,,,,,,,,,,,,, : ;:, 1991,

今天 年春季号 总 92 期

*

( ) / / / / / / /

(Microsoft Word - 8\244T\244\362\277\337\272]\244W\265L\246W.doc)

Microsoft Word - 專家本色 doc


但, 你 应 该 听 过 我 们 走 在 大 路 上 这 首 歌, 或 许 还 知 道 革 命 人 永 远 是 年 轻 那 支 歌 ; 并 且, 几 乎 可 以 肯 定, 你 在 戴 红 领 巾 的 那 阵, 必 然 唱 过 牛 儿 还 在 山 坡 吃 草, 放 牛 的 却 不 知 道 哪 儿 去

2 临 终 助 念 答 问 序 临 终 关 怀, 由 佛 门 净 宗 古 来 祖 师 大 德 提 倡 助 念 往 生, 现 今 已 渐 为 社 会 大 众 所 重 视, 在 台 湾, 台 大 长 庚 等 各 大 医 院, 也 都 设 有 助 念 室 ; 大 陆 上 许 多 道 场, 也 有 专 为

校园之星

Microsoft Word - 澎湖田調報告-宏達組9804.doc

<4D F736F F F696E74202D FA8BEA861B8EAB7BDBEE3A658BB50C0B3A5CE28B773A6CBA5AB29>

之 原 則 及 國 防 部 訂 頒 國 軍 列 管 國 有 不 動 產 提 供 非 軍 方 單 位 使 用 處 理 原 則 規 定 不 符, 仍 應 以 出 租 方 式 辦 理 惟 可 就 偏 遠 地 區 提 供 官 兵 金 融 水 電 服 務 使 用 部 分, 研 議 降 低 租 金 標 準, 報

chineseall

釋禪波羅蜜次第法門

证券代码: 证券简称:锦江股份 公告编号:【】

1700 装 卸 搬 运 7645 装 卸 搬 运 服 务 2100 建 筑 7410 工 程 服 务 11% 装 卸 搬 运 服 务, 是 指 使 用 装 卸 搬 运 工 具 或 者 人 力 畜 力 将 货 物 在 运 输 工 具 之 间 装 卸 现 场 之 间 或 者 运 输 工 具 与 装 卸

前 言 教 育 无 小 事, 它 成 就 着 学 生 的 未 来 作 为 教 师, 他 们 无 时 无 刻 不 在 关 注 着 学 生 的 成 长 学 生 的 未 来 学 生 就 像 一 朵 含 苞 待 放 的 花 朵, 需 要 老 师 们 的 细 心 呵 护, 给 学 生 需 要 的 东 西, 而

《盗墓笔记》 南派三叔/著

平 凡 足 迹 李 本 川 作 者 为 中 国 科 学 院 海 洋 研 究 所 研 究 员,1935 年 生, 山 东 荣 成 人 我 今 年 63 岁 了 大 前 年 丈 夫 和 儿 子 在 一 个 月 内 先 后 离 开 了 人 世, 女 儿 又 已 出 嫁, 现 在 是 孑 然 一 身 我 是

<CFFBB7D1D5DFD0D0CEAAD1A72E6D7073>

独立学院建设与发展



专业特色、实施过程和效果说明

Microsoft Word - 梁斌言:2016年度全省职业教育工作会议总结讲话提纲.doc

中 共 广 元 市 食 品 药 品 监 督 管 理 局 党 组 2016 年 机 关 党 的 工 作 要 点 2016 年 是 实 施 十 三 五 规 划 的 开 局 之 年, 是 推 进 全 面 从 严 治 党 的 深 化 之 年, 是 决 胜 脱 贫 攻 坚 的 关 键 之 年 机 关 党 的

“秦火火”玩“火”自焚

简 讯 : 庐 江 县 气 象 监 测 预 警 中 心 主 体 结 构 顺 利 封 顶 肥 西 县 政 府 出 台 乡 镇 气 象 工 作 目 标 管 理 考 核 细 则 庐 江 县 组 织 召 开 乡 镇 气 象 灾 害 防 御 工 作 会 议 长 丰 县 局 积 极 组 织 开 展 无 偿 献

2013年全国农村妇女科学素质网络竞赛活动总结

目 录 第 1 章 毕 业 生 就 业 基 本 情 况 沈 阳 化 工 大 学 科 亚 学 院 概 况 毕 业 生 规 模 毕 业 生 结 构 毕 业 生 院 系 分 布 毕 业 生 专 业 分 布

0卷首语.FIT)

版块一 研究生学长对《自然地理学》科目的总结

北 京 化 工 大 学 2014 年 毕 业 生 就 业 质 量 年 度 报 告 高 校 毕 业 生 就 业 工 作 是 教 育 领 域 重 要 的 民 生 工 程, 涉 及 人 民 群 众 切 身 利 益, 关 乎 社 会 和 谐 稳 定 北 京 化 工 大 学 高 度 重 视 毕 业 生 就 业

2014年9月月讯

( 一 ) 毕 业 生 规 模 和 就 业 率 浙 江 警 察 学 院 2014 届 毕 业 生 共 计 542 人, 均 为 本 科 毕 业 生, 其 中 浙 江 省 内 生 源 毕 业 生 516 人, 西 藏 自 治 区 生 源 毕 业 生 26 人 截 至 2014 年 12 月 10 日,

1

就业质量报告工作方案

内 蒙 古 大 学 创 建 于 1957 年, 是 新 中 国 成 立 后 党 和 国 家 在 少 数 民 族 地 区 创 建 最 早 的 综 合 大 学 学 校 1962 年 招 收 研 究 生,1978 年 被 确 定 为 全 国 重 点 大 学,1984 年 获 博 士 学 位 授 权,199

目 录 学 校 概 况... 1 报 告 说 明... 1 第 一 章 毕 业 生 就 业 基 本 情 况... 2 一 毕 业 生 的 觃 模 和 结 构... 2 ( 一 ) 毕 业 生 的 觃 模... 2 ( 二 ) 毕 业 生 结 构... 2 二 就 业 率... 4 ( 一 ) 总 体

目 录 学 校 概 况... 1 报 告 说 明... 1 第 一 章 毕 业 生 就 业 基 本 情 况... 3 一 毕 业 生 的 规 模 和 结 构... 3 ( 一 ) 毕 业 生 的 规 模... 3 ( 二 ) 毕 业 生 结 构... 4 二 就 业 率... 5 ( 一 ) 总 体

南昌职~1

的 通 知 (30) 安 阳 市 人 民 政 府 办 公 室 关 于 印 发 代 市 长 王 新 伟 在 市 长 办 公 会 议 上 讲 话 的 通 知 (33) 大 事 记 安 阳 市 人 民 政 府 大 事 记 (2015 年 11 月 ) (38) 安 阳 市 人 民 政 府 大 事 记 (2

关于成立化学化工学院石油炼制系和应用化学系的通知

<4D F736F F D C4EAD6D0BFBCD3EFCEC4C6C0BCDBD6B8C4CFA3A8B6A8B8E5A3A92E646F63>

中机质协[2016]2

前 言 厦 门 南 洋 职 业 学 院 是 经 福 建 省 人 民 政 府 批 准 正 式 设 立 国 家 教 育 部 备 案 具 有 独 立 颁 发 国 家 承 认 学 历 文 凭 资 格 的 全 日 制 综 合 性 普 通 高 等 院 校, 由 海 内 外 热 心 教 育 的 十 五 位 学 者

目 录

Microsoft Word 职业规划与就业指导正文.doc

Microsoft Word - 会行党_2016_3号.doc

和 工 作 格 局 遵 循 公 正 公 开 便 民 原 则, 建 立 完 善 了 信 息 公 开 的 工 作 制 度 和 工 作 规 范 : 制 订 出 台 了 青 岛 农 业 大 学 信 息 公 开 实 施 细 则 ( 试 行 ), 明 确 了 信 息 公 开 的 内 容 公 开 途 径 和 要

Transcription:

在 Keil MDK 中调试 AT91SAM9260... 2 一 初识 Keil MDK... 2 二 在内部 RAM 中调试... 3 三 在片外的 SDRAM 中调试... 7 四 从 Norflash 启动运行... 8 五 从 Norflash 启动, 最终运行在 SDRAM 中... 10

在 Keil MDK 中调试 AT91SAM9260 我们板子的配置是 at91sam9260+norflash+sram, 而一般 9260 外扩的都是 SDRAM, 所以后来我又写了个 SDRAM 的例程, 运行在我们的开发板上 所以我们的硬件环境是 : 编译工具 :Keil MDK3.22a; ARM:at91sam9260; Norflash:sst39vf1601,2Mbytes, 地址 :0X10000000~0X101FFFFF; SDRAM:Hy57V561620*2,64Mbytes, 地址 :0X20000000~0X23FFFFFF; 一 初识 Keil MDK 使用 Keil 开发过 51 的肯定对 Keil 不陌生, 而且很多资料上都介绍了怎么新建一个项目, 所以我就不多说了, 主要说一下 Keil 中对 ARM 开发很方便的一个地方 :Components Environment Books, 新建一个 project 后, 点击 Project/Manage, 再点击 Components Environment Books, 或者直接点击工具栏中的三种颜色的品字形标志 图 1-1 打开 Components Environment Books 打开之后是图 1-2 所示, 我们主要使用第一项 Project Components 由于 ARM 启动方式多种多样, 还可以在片内或片外 RAM 调试, 而不同的方式对应的 target/options 选项也不同, 所以我们可以根据调试环境的不同, 建立不同的 Target 图 1-2 Project Components 我们 At91sam9260 的板子, 既可以在内部 RAM 调试, 也可以在外部 SDRAM

调试, 既可以从 Norflash 启动运行在 Flash 中, 也可以从 Norflash 启动并将代码拷贝到 SDRAM 中运行, 所以我们可以通过图 1-1 所示的编辑工具, 建立四个 Target, 如图 1-3 所示 : 图 1-3 建立 Target 然后在 Keil 的工具栏中就可以通过点击下拉框来选择不同的 Target, 如图 1-4 所示 : 图 1-4 选择 Target 这几种不同的 Target, 使用的文件都是一样的, 只是每个 Target 的 Options 不同, 这样我们就可以在同一个 Keil 工程下实现 ARM 的各种调试环境 下面我们将分别介绍各个 Target 中 Options 的设置, 从而实现不同的运行环境 二 在内部 RAM 中调试 首先点击图 1-4 中的 SAM9260 Int RAM, 然后在 Workspace 中右键点击 SAM9260 Int RAM, 打开 Options 对话框, 如图 2-1 所示 : 图 2-1 打开 Options 打开 Options 后, 如图 2-2 所示 :

图 2-2 Options 在 Target 页面主要设置存储器的配置, 在内部 RAM 调试的话,ROM 的地址和 RAM 的地址都要设为内部 RAM 的地址, 而当 BMS 接高时,REMAP 后, 内部 RAM 的 SRAM0 被映射为 0 地址, 所以此时 ROM 地址填 0x0 和 0X200000 都是一样的, 此时访问到的都是内部的 SRAM0 Output 和 Listing 用来设置调试信息和输出文件的存放目录, 可在项目目录下新建一个文件夹, 命名为 Int RAM User 对话框用来设置编译前后要运行的命令行, 比如说将 AXF 格式文件转化为 Bin 格式文件, 在 RAM 中调试使用默认输出的 AXF 文件, 所以此时不用设置 C/C++ 和 ASM 对话框分别用来设置 C 程序和汇编程序中的调试定义, 以及所包含的头文件目录 如图 2-3 所示,Define 行定义了 NOFPUT, 这是因为我们使用的 Dbgu.C 中有如下语句 : #ifndef NOFPUT #include <stdio.h> #endif //#ifndef NOFPUT 其中是自定义 Printf() 所需的一些函数, 而我们使用的 Printf() 是通过在 Retarget.C 中自定义 sendchar() 实现, 所以不编译其中的语句 另外, 在下面的 Include paths 中, 要添加 C 程序所有头文件即所有.H 文件的路径 也可通过点击浏览, 然后添加

图 2-3 C/C++ 图 2-4 Linker 对话框中, 我们直接选择 Use Memory Layout Target Dialog, 意思就是

直接使用 Target 对话框定义的存储器配置 当选择此项时, 系统会自动生成一个分散加载文件, 就不再自己写分散加载文件了, 否则要添加自己的分散加载文件 Debug 对话框主要是设置仿真器 添加仿真初始化文件 我们使用 DB 的 Jlink, 所以首先点击右侧的 Use 硬件仿真器, 选择 RDI Interface Driver, 然后点击 Setting, 添加 Jlink 的配置文件 如图 2-5 所示 : 图 2-5 Jlink 然后添加初始化文件, 初始化文件的作用就是初始化时钟 RAM, 为硬件建立一个启动环境, 很多程序在 RAM 中调试正常, 而直接跑在 Flash 就不对, 此时就要检查初始化文件所做的工作, 在实际的程序中又没有做, 我遇到了几次这样的毛病, 最后都检查出是实际的启动文件中忘记配置了什么东西 一般初始化文件不用自己来写, 改改例程中的就可以用了, 需要注意的两个地方 : 1. 入口地址 : 在内部 RAM 调试时,Entry = 0x00000000; 在外部 SDRAM 调试时,Entry = 0x20000000; 2. 下载 AXF 文件时, 路径和名字要修改, 例如 : FUNC void Download (void) { if (Setup & 0x20) { // <s0.80> Command for Loading exec("load Int_RAM\\Blinky.axf INCREMENTAL"); } Int_RAM\\Blinky.axf 要相应地修改为 Output 对话框定义的输出路径和名字 至此, 这个 Target 的设置就完成了, 点击 Build Target, 编译 Target, 如果没有

错误, 如图 2-6, 就可以将板子上电调试了 图 2-6 Build OK 然后上电, 点击工具栏上的 Debug 按钮, 进入仿真环境, 如图 2-7 所示, 程序运行在 SRAM0 地址中 接下来如何调试, 单步或者全速与 51 没啥区别, 就不再说了 图 2-7 Int RAM 三 在片外的 SDRAM 中调试 在片外的 SDRAM 调试与片内 RAM 调试差别不大, 主要是存储器地址范围设置和调试初始化文件的区别 : 图 3-1 SDRAM-Target

在 SDRAM 中调试, 所以 ROM 和 RAM 的地址都要设置为 SDRAM 的地址 如上图 3-1 所示 初始化文件也要相应地改为外部 SDRAM 调试的初始化文件, 如图 3-2 所示, 这个初始化文件与在内部 RAM 调试的初始化文件相比, 多了外部 SDRAM 的初始化, 另外入口地址也要变为 SDRAM 的地址 图 3-2 SDRAM Debug 其他的都跟在内部 RAM 中调试的一样设置, 同样 Build, 进入调试环境, 发现程序运行在 SDRAM 地址中, 如图 3-3 所示 : 四 从 Norflash 启动运行 图 3-3 SDRAM 这里是指 ARM 从 Norflash 启动, 程序一直运行在 Norflash 中 首先要保证你的启动代码没有问题, 因为前面在 RAM 中调试, 系统的启动都是靠初始化文件建立的, 而这里要靠正确的启动代码 同样需要修改的地方还是 Options, 首先 Target 处,ROM 地址填 Norflash 的地址,RAM 处填 SDRAM 的地址, 启动代码中一定要有 SDRAM 的初始化部分 然后 User 处添加转为 Bin 文件的命令

图 4-1 Norflash Target 图 4-2 Norflash User 另外 ASM 处, 添加启动代码中一些定义,RAM_INTVEC REMAP 将中断

向量复制到内部 RAM, 并将内部 RAM 映射为 0x0 地址 Linker 处还是选择 Use Memory Layout Form Target Dialog 图 4-3 Norflash ASM 接着,Build Target, 无错误的话, 打开生成的 Map 文件, 会看到代码段都被放置到 Norflash 地址中, 如图 4-4 所示 : 图 4-4 Norflash Map 然后将生成的 Bin 文件用 Jflash 或 h-flasher 下载到 Norflash 中, 然后将 BMS 接低, 上电后执行 五 从 Norflash 启动, 最终运行在 SDRAM 中 将程序从 Norflash 拷贝至 SDRAM 执行, 本来可以在启动代码中添加代码拷贝部分或者写两个程序实现, 但是在 Keil 中, 有两种更容易实现的方式, 编译器自动将所需的代码段拷贝至 RAM 区, 一是通过自定义的分散加载文件, 二就是接下来我们介绍的只点击鼠标的方式 第一种方法一直没能搞成功, 还请搞过的牛人指点 这个 Target 与前面运行在 Norflash 中的 Options 完全一样, 然后右键点击

Source Code, 打开其 Options, 如图 5-1 所示 : 图 5-1 Source Options 然后在 properties/memory Assignment 中将其 Code/Const 定位于 SDRAM 中, 如图 5-2 所示 : 图 5-2 CODE SDRAM

同理, 再将其他需要放置到 SDRAM 执行的程序, 进行同样的操作, 然后, Build Target, 无错误的话, 查看生成的 Map 文件, 发现这些代码段被放置在 SDRAM 空间内了, 如图 5-3 所示 : 图 5-3 SDRAM Map 至于使用分散加载文件的方式, 我还没有试验出来, 也请知道的大虾指点指点, 谢谢 至此, 使用 Keil 四种方式调试 at91sam9260 的方法都介 绍完了, 授之鱼不如授之渔, 我主要说的是方法步骤, 并没 有提供程序, 自己从中摸索确实能学到很多东西, 但是不要 像我走火入魔就行了 本人也是第一次学习 ARM, 以上如有不对的地方还请多 多指教 风子 (ch2003_23) 2009-3-24 于深圳 QQ:277565600 MSN:ch2003_23@hotmail.com