首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[10图详解]手把手教您如何将ADS下的程序下载到飞凌S3C2440开发板中运行

[10图详解]手把手教您如何将ADS下的程序下载到飞凌S3C2440开发板中运行

以led 实验在OK2440/FL2440上运行为例。
打开ADS1.2(CodeWarrior for ARM Developer Suite)建立工程文件:
01.jpg

在主菜单FILE-􀃆new….,如下图设置,点击确定

02.jpg

同样在主菜单FILE--􀃆new….如下图设置,点击确定

03.jpg

用同样的方法在建立led.c 文件。
编辑代码,下面代码敲进对应的文件:init.s 汇编文件和led.c:
Init.s //注意此文件的代码不能顶格写
AREA |DATA|,CODE,READONLY
ENTRY
ldr r13, =0x1000
IMPORT ledMain
b ledMain
END

Led.c
/**********************LED实验*********************************/
// 公司名称:飞凌嵌入式技术有限公司
// 描述:LED
// 版权:飞凌嵌入式技术有限公司
// 网址:www.witech.com.cn
/***************************************************************/
/*
本实验接口说明
GPF3 ------ LED0
GPF4 ------ LED1
GPF5 ------ LED2
GPF6 ------ LED3
*/

/*------------------------地址声明---------------------------*/
//地址是s3c2440芯片手册里规定好的,具体说明参考芯片手册GPIO章节
#define GPFCON (*(volatile unsigned *)0x56000050)
#define GPFDAT (*(volatile unsigned *)0x56000054)
#define GPFUP (*(volatile unsigned *)0x56000058)
#define uchar unsigned char
#define uint unsigned int
/*-------------------------------------------------------------
函数名称: ledMain
功能描述: 入口程序
初始化后,进入跑马灯死循环
传参: 无
返回值: int 0
-------------------------------------------------------------*/
int ledMain(void)
{
void Delay();
GPFCON &= 0xffc03f; // GPF3,GPF4,GPF5,GPF6设置为输出
GPFCON |= 0x1540;
GPFDAT = ((1<<3)|(1<<4)|(1<<5)|(1<<6)); //使LED全灭
GPFUP |= 0x78;
while (1) // 死循环
{
GPFDAT = ~(1<<3); //LED0亮
Delay(500);
GPFDAT = ~(1<<4); //LED1亮
Delay(500);
GPFDAT = ~(1<<5); //LED2亮
Delay(500);
GPFDAT = ~(1<<6); //LED3亮
Delay(500);
}
return 0;
}
/*------------------------------------------------------------/

函数名称: Delay
功能描述: 延时函数,该函数只是大概时间,没有具体时间值
传参: int x
返回值: 无
/*********************************************************/
void Delay(int x)
{
int k, j;
while(x)
{
for (k=0;k<=0xff;k++)
for(j=0;j<=0xff;j++);
x--;
}
}

代码编辑完毕之后保存。这时候可以编译一下,看是否有语法错误。选中源文件,点击make。
没问题的话就继续下一步。

04.jpg

代码编译没问题,可能在内存里抛尸没问题的,但是一旦下载到开发板上就不行了。
下面开始讲述下载到开发板上如何进行设置。
在上图中(红色方框)打开DebugRel Setting……

05.jpg

如果你的工程最后没有生成bin 文件,那么你要检查一下上图中Post-linker 是否设置为了
“ARM fromELF”。

06.jpg

我们所用的CPU 内核是ARM920T;

07.jpg

08.jpg

09.jpg

10.jpg

保存退出(其他的使用默认)之后,重新编译,这时的bin 就可以下载到开发板中运行了。
返回列表