yuyukaka789 发表于 2010-8-20 14:41:43

裸跑流水灯

我最近在想用个最简单的程序来实现流水灯,我就只写了个main()函数,如下:
#define GPBCON    (*(volatile unsigned *)0x56000010)       
#define GPBDAT    (*(volatile unsigned *)0x56000014)       
#define GPBUP   (*(volatile unsigned *)0x56000018)
void Delay(int y);
Led_Display();
main()
{
GPBCON=0x015550;
GPBUP=0x7ff;
while(1)
{   int a;
GPBDAT=0x1df;
Delay(1000);
for(a=0;a<=2;a++)
{
Led_Display(0x60);
Delay(1000);
}
}}
void Delay(int y)
{
int k,n;
for(n=y;n<=0;n--)
   for (k=10000;k<=0;k--)
   {}
}
Led_Display()
{
GPBDAT=GPBDAT<<1;
}

我没用2440int.s和2440lib.c文件, 我知道程序先执行2440int.s文件,再执行main函数,然而我没有2440int.s文件,可不可以直接执行main 函数呢?那位大哥帮帮忙啊。

shufexiu 发表于 2010-8-20 15:50:38

你把里面用到的定义变量copy 出来就可以拉。

machoe 发表于 2010-8-20 16:02:05

以C语言前面一定要有一个汇编文件来为C语言提供环境的,最少也要有堆栈指针,关看门狗等

yuyukaka789 发表于 2010-8-20 17:39:17

那你的意思是2440int.s必须要是吧

书风轩 发表于 2010-8-20 18:12:54

没有启动代码是不行的 启动代码是用于初始化各硬件和运行环境的 哪怕只是简单的几句

yuyukaka789 发表于 2010-8-20 18:26:57

那个愿意一起学习TQ2440,有兴趣的加群72929695验证消息:TQ2440

machoe 发表于 2010-8-20 18:55:17

不定要像2440.s那么全,你可以参考一下程序,我帖出来。

machoe 发表于 2010-8-20 18:55:36

好久没看这代码了,如果不能运行,可以与我联系。

yuyukaka789 发表于 2010-8-21 07:34:36

不能运行,说是:Invalidline start

machoe 发表于 2010-8-21 09:30:05

忘记说了。交环境要用3.4.5.不可以用4.3.3

machoe 发表于 2010-8-21 09:31:28

你再编译试试。应该不会有问题,这是我以前裸奔时候写代码。如果烧到nand flash时不行,就直接烧到 sdram里去试试。

yuyukaka789 发表于 2010-8-21 16:33:11

谢谢啊,各位朋友的相助,我调通了!

wenxibala 发表于 2010-8-29 18:18:32

最近正在弄这方面的东西,谢谢分享

minranyuxin1 发表于 2010-10-31 16:41:13

近正在弄这方面的东西,谢谢分享

para 发表于 2010-12-23 22:42:58

谢谢分享                  。
页: [1] 2
查看完整版本: 裸跑流水灯