BOOTLOADER烧写问题求救!

[复制链接]
4012|5
 楼主| xuetian110 发表于 2007-1-30 20:08 | 显示全部楼层 |阅读模式
各位大虾,我是一个刚刚接触ARM菜鸟,手里有块S3C44B0的实验板,但烧程序的时候遇到了一些问题.<br />首先我用JTAG烧写了BOOTLOADER.文件,然后用超级终端,烧写了一个我自己编的串口程序,地址是0XC200000,最后烧写的是4BAPP.BIN文件地址:0XC008000.但是烧完程序后按复位键,程序不运行,超级终端也看不到现象.我烧写的自己的文件是立宇泰光盘里面的程序,我用的是ASD1.2.程序如下:<br />#include&nbsp;&ltstring.h&gt<br />#include&nbsp;&ltstdio.h&gt<br /><br />#include&nbsp;&quot;Target\44b.h&quot;<br />#include&nbsp;&quot;Target\44blib.h&quot;<br /><br /><br />static&nbsp;int&nbsp;UartNum=0;<br />void&nbsp;myUart_Init(int&nbsp;whichuart,&nbsp;int&nbsp;baud)//对Uart进行初始化,以所需要的波特率为输入参数<br />{<br />&nbsp;&nbsp;&nbsp;if(whichuart==0)<br />&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UartNum=0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rUFCON0=0x0;&nbsp;&nbsp;&nbsp;&nbsp;//不使用FIFO<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rUMCON0=0x0;&nbsp;&nbsp;&nbsp;//不使用自动流控制<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rULCON0=0x3;&nbsp;//不采用红外线传输模式,无奇偶校验位,1个停止位,8个数据位<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rUCON0=0x245;&nbsp;&nbsp;&nbsp;//发送中断为电平方式,接收中断为边沿方式,禁止超时中断,允许产生错误状态中断,禁止回送模式,禁止中止信号,传输模式为中断请求模式,接收模式也为中断请求模式。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rUBRDIV0&nbsp;=&nbsp;(&nbsp;(int)(MCLK/16./baud&nbsp;+&nbsp;0.5)&nbsp;-1&nbsp;);&nbsp;//根据波特率计算UBRDIV0的值<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if(whichuart==1)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UartNum=1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rUFCON1=0x0;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rUMCON1=0x0;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rULCON1=0x3;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rUCON1=0x245;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rUBRDIV1&nbsp;=&nbsp;(&nbsp;(int)(MCLK/16./baud&nbsp;+&nbsp;0.5)&nbsp;-1&nbsp;);<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br /><br />void&nbsp;myUart_SendByte(char&nbsp;ch)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(UartNum&nbsp;==0)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(ch=='\n')<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(!(rUTRSTAT0&nbsp;&&nbsp;0x2));//等待,直到发送缓冲区为空<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//Delay(10);&nbsp;&nbsp;&nbsp;&nbsp;//超级中断的响应速度较慢&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WrUTXH0('\r');//发送回车符<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(!(rUTRSTAT0&nbsp;&&nbsp;0x2));&nbsp;//等待,直到发送缓冲区为空<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay(10);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WrUTXH0(ch);//发送字符<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(ch=='\n')<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(!(rUTRSTAT1&nbsp;&&nbsp;0x2));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay(10);&nbsp;&nbsp;&nbsp;&nbsp;//because&nbsp;the&nbsp;slow&nbsp;response&nbsp;of&nbsp;hyper_terminal&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rUTXH1='\r';<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while(!(rUTRSTAT1&nbsp;&&nbsp;0x2));&nbsp;&nbsp;//Wait&nbsp;until&nbsp;THR&nbsp;is&nbsp;empty.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delay(10);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WrUTXH1(ch);<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<br />}&nbsp;&nbsp;&nbsp;&nbsp;<br /><br /><br />void&nbsp;myUart_Send&nbsp;(char&nbsp;*str)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Init(0,115200);<br />&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(*str)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;myUart_SendByte(*str++);<br />}<br /><br /><br />void&nbsp;Main(void)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;char&nbsp;aa;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;Port_Init();<br />&nbsp;&nbsp;&nbsp;&nbsp;Led_Display(0xf);<br />&nbsp;&nbsp;&nbsp;&nbsp;Beep(0x1);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*************************************************************************&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;立宇泰电子&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-UART&nbsp;test-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Version&nbsp;1.21&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Email:Support@hzlitai.com.cn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UART0&nbsp;Config--COM:115.2kbps,8Bit,NP,UART0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*-----------------------------------------------------------------------*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;Beep(0x0);<br />&nbsp;&nbsp;&nbsp;&nbsp;Led_Display(0x0);<br />&nbsp;&nbsp;&nbsp;&nbsp;while(1);<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />}<br /><br />
 楼主| xuetian110 发表于 2007-1-30 20:11 | 显示全部楼层

搞不明白

Port_Init();<br />&nbsp;&nbsp;&nbsp;&nbsp;Led_Display(0xf);<br />&nbsp;&nbsp;&nbsp;&nbsp;Beep(0x1);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*************************************************************************&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;立宇泰电子&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-UART&nbsp;test-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Version&nbsp;1.21&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Email:Support@hzlitai.com.cn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UART0&nbsp;Config--COM:115.2kbps,8Bit,NP,UART0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;myUart_Send(&quot;\n*-----------------------------------------------------------------------*&quot;);<br />&nbsp;&nbsp;&nbsp;&nbsp;Beep(0x0);<br />&nbsp;&nbsp;&nbsp;&nbsp;Led_Display(0x0);<br />这里的:<br />Port_Init();<br />&nbsp;&nbsp;&nbsp;&nbsp;Led_Display(0xf);<br />&nbsp;&nbsp;&nbsp;&nbsp;Beep(0x1);<br />几句程序,我不知道是哪来得?头文件里面我都找遍了,也没找到他们的定义,而在程序里面随便的就用了,我有点想不明白,希望高手能指点一下.
 楼主| xuetian110 发表于 2007-1-31 08:12 | 显示全部楼层

怎么没人顶呢?

自己顶吧!
 楼主| xuetian110 发表于 2007-1-31 12:09 | 显示全部楼层

还是没人

自己来吧.呵呵
5460wjh 发表于 2007-2-3 15:02 | 显示全部楼层

回复

这些程序在44blib.c中,作者将它编译为一个库文件在用44blib.alf,这些在44blib.h中有子函数的声明。自己好好看看!
fish1983 发表于 2007-2-3 15:04 | 显示全部楼层

需要在bootloader中

需要在bootloader中输入地址让它运行吧?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

101

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部