博客首页 注册 建议与交流 排行榜 加入友情链接         宝宝相册的专门空间
推荐 投诉 搜索: 帮助

愿逝者安息 让生者前行 深切哀悼5.12遇难同胞

愿逝者安息 让生者前行 深切哀悼5.12遇难同胞
creatory.cublog.cn


SkyEye应用手记
SkyEye应用手记
1.下载如下软件包:arm-elf-tools-20030314.sh

                  skyeye-0.9.8.tar.bz2

                  uClinux-dist-20020927.tar.gz

                  skyeye-binary-testutils-1.0.7.tar.gz

                  ucosii4skyeye-v1.8.3.tgz
并把所有软件包放在/opt目录下。

 

2.arm-elf-tools-20030314.sh、skyeye-0.9.8.tar.bz2、uClinux-dist-20020927.tar.gz的安装:

打开终端,输入如下命令:

cd /opt

./arm-elf-tools-20030314.sh

tar xvjf skyeye-0.9.8.tar.bz2

cd skyeye

./configure --target=arm-elf --prefix=/usr/local

make

make install

cd ..

tar xvfz uClinux-dist-20020927.tar.gz

cd uClinux-dist

make xconfig

在Target Platform Selection选项卡中选择:

Vendor/Product: GDB/ARMulator

Kernel Version: linux-2.4.x

Libc Version: uC-libc

然后选择save and exit

make dep

make

此时在/opt/uClinux-dist/linux-2.4.x目录下会生成可执行文件linux

在/opt/uClinux-dist/images/会生成romfs.img等文件

在uClinux-dist目录下建立仿真AT91的skyeye配置文件skyeye.conf,内容如下:

cpu: arm7tdmi

mach: at91

mem_bank: map=M, type=RW, addr=0x00000000, size=0x00004000

mem_bank: map=M, type=RW, addr=0x01000000, size=0x00400000

mem_bank: map=M, type=R, addr=0x01400000, size=0x00400000, file=images/romfs.img

mem_bank: map=M, type=RW, addr=0x02000000, size=0x00400000

mem_bank: map=M, type=RW, addr=0x02400000, size=0x00008000

mem_bank: map=M, type=RW, addr=0x04000000, size=0x00400000

mem_bank: map=I, type=RW, addr=0xf0000000, size=0x10000000

lcd: state=on

保存退出

这个时候就可以用skyeye来调试运行kernel了,在/opt/uClinux-dist目录下执行如下命令:

skyeye linux-2.4.x/linux

(skyeye)target sim

(skyeye)load

(skyeye)run

kernel start.....

注意: 要在skyeye.conf所在目录下执行skyeye/opt/uClinux-dist/linux-2.4.x/linux


3.skyeye-binary-testutils-1.0.7.tar.gz的调试:

在终端输入如下命令:

cd /opt

tar xvjf skyeye-binary-testutils-1.0.7.tar.gz

cd skyeye-binary-testutils-1.0.7

cd ep7312

cd ep7312_with_framebuffer_touchscreen_minigui

skyeye vmlinux-8-332

tar sim

load

run


4.ucosii4skyeye-v1.8.3.tgz的调试:

在终端输入如下命令:

cd /opt

tar xzf ucosii4skyeye-v1.8.3.tgz

cd ucosii4skyeye

make cleanall

make config(会提示出错)

export OSTYPE=linux-gun

make config

make dep

make

ls

cd samples

cd simple_test

skyeye simple_test.elf(实验一)

tar sim

load

run

退出后

cd /opt/ucosii4skyeye/samples/ucos_shell

skyeye ucos_shell.elf(实验二)

tar sim

load

run

退出后

cd /opt/ucosii4skyeye/samples/ucos_test

skyeye ucos_test.elf(实验三)

tar sim

load

run


5.在uClinux里运行hello程序:

hello源程序如下:

#include<stdio.h>

void my_print(char *string)

void my_print2(char *string)

main()

{

char my_string[]="Hello embedded Linux world";

my_print(my_string);

my_print2(my_string);

}

void my_print(char *string)

{

printf("The string is &s\n",string);

}

void my_print2(char *string)

{

char *string2;

int size,j;

size=strlen(string);

string2=(char *)malloc(size+1);

for(i=0;i<size;i++){

string2[size-i]=string[i];

}

string2[size+1]='\0';

printf("The string printed backward is %s\n",string2);

}

保存为hello.c到/home目录下

在终端输入如下命令:

cd /opt/uClinux-dist/images

mkdir romfs

cd /home

arm-elf-gcc -elf2flt -o hello hello.c

进入/opt/uClinux-dist目录,把/opt/uClinux-dist/romfs目录以及其下所有文件全部剪贴到/opt/uClinux-dist/images下

cd /home

cp hello /opt/uClinux-dist/images/romfs/bin

cd /opt/uClinux-dist/images

genromfs -f romfs.img -d romfs/

cd ..

skyeye linux-2.4.x/linux

tar sim

load

run

ls

cd /bin

ls

hello

这样就可以看到自己的hello程序运行了。

发表于: 2008-03-07 ,修改于: 2008-03-07 15:41,已浏览210次,有评论0条 推荐 投诉


网友评论

发表评论