开发工具:
文件大小: 208kb
下载次数: 0
上传时间: 2019-07-12
详细说明:最简单的arm中的led实验教程
我们想实现控制 LED 的应用程序方法有很多:
¬ 最标准的做法:编写嵌入式 Linux 系统 GPIO 驱动,再编写应用程序控制;
¬ 最基础、入门的方法:编写汇编代码(汇编用的很少),或 C 语言代码实现
那么编写 GPIO 驱动的代码是我们后面课程要重点介绍的,这里暂不做介绍,先以学习
硬件的角度去理解代码即可。
那么编写汇编代码或 C 语言代码可以有多种的实现方式和多种工具选择,也可以在
Windows 系统下开发后再烧写,也可以在 Linux 系统下完成开发再烧写。这里我们选择在
Linux 系统下编辑、编译代码。再
中已经实现了,如下图所小:)
2.2 iROM(BLO) boot-up sequence(Refer 2.3 V210 boot-up diagram)
Disable thle Walchl-Duy llllel
2. nitialize the instruction cache
3. Initialize the stack region (see memory map" on chap 2.5)
4. Initialize the heap region. see memory map" on chap 2.5
5. Initialize the Block Device Capy Function. (see Device Copy Function on chap 2.7)
6. Initialize the FLL and set system clock. (see clock contiguration" on chap 2.113
7. Copy the bl1 ta the internal SRAM region(see " Device Copy Function"on chap 2.7)
8. Verify the checksum of BL1
lI checksulnl rails, IROM wll Lry lie second bool up. SD/MMC clar nel 2)
0. Chock if it is sccurc-boot modc or not
If the security key valle is written in $5Pv21n, It's seclire-hoot mode
If it is secure-boot mode, verify the integrity of Bl1
10. Jump tc the start address of BL1
则灯得语言代码可以写为
闪烁
配置引脚
脚本文件为
说明:
表示要生成
目标文件,需要两个依赖文件和
和
:表示将当前目录卜存在的汇编文件和文件编译成文件,
即
牛成
成
表示目标文件
表小第一个依赖文件或,其中“”表小仅编译不链接。
表示将所有
文件链接成文件
衣示程序的运行地址是
表示所有依赖对象即
的地图如下所示(加载
程序到
中运行,那
的程序前
是校验位
加上校验
正好是
,这里是程序真正的地址)
External
1正8B
Copy Function
IRO
Stack
03000037D80
SyC
1.5KB
stack
4=0003780
Signature
512B
d003了580
Global variable
256B
a0D37480
Vector table
128B
T3T740
RW/Zl region
a3540
Internal
SRAM
96KB
Reserved
BL1
( variable size]
BL1 start address
ELIiEFtiwiE.
0xD0020010
Checksum(BErrie
enven (sno d B2 D
fom
Internal ROM
BL1 623(User sr.
I BLU
Hes der info
Table1. Memory Map
:表示将文件抽
取为可在开发板上运行的文件。(直接由文件生成的文件是无法包含链
接信息和设置的,只有先生成格式再生成格式才可以)
在终端下执行指令编译生成
文件。
烧写
从三星提供的
文档《
以及芯片手册《
》得知,
启动时,会先运行内部
中的固化代码进行一些必要的初始化,执行完后硬件上会自动读取
或卡等
启动设备的前的数据到
中,这数据中的前
中保存了一个叫校验和的
值,拷贝数据时
会统计出待运行的文件中含的个数,然后和校验和做比较,
如果相等则继续运行程序,否则停止运行。所以所有在
上运行的文件都必须
具有一个
的头部,该头部中需包含校验和信息,可以使用工具
源代码由论坛上的网友提供,它的的作用就是用来给原始的文
件添加头部)。过程如下所示,将牛成的
添加
的头部,牛成
文件
将卡通过读卡器插入
系统下,默认情况下在目录下产生卡的设备文
件,通过如下指令查看设备文什的具体名称
如下图所示
I/0 size (minimum/optimal): 512 bytes /512 bytes
Disk identifier: 0x00000000
Device boot
start
End
Blocks Id system
/dev/sdb
819215523839
7757824bw95FAT32
可以看到卡的编号为。采用如下指令将
烧写到卡中
其中:
复制
输入文件
:同步
输出文件
:要复制的文件
:要烧到的块号(从廾始,不允许从廾始)
启动观察现象
将卡插入
中,选择卡启动,然后上电,可以看到以下现象
正常
闪烁,说明于动关闭看门狗成功,同时证明中的固化代码已经设置了栈。
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.