TI中文支持网
TI专业的中文技术问题搜集分享网站

am335x 如何将裸机程序烧写进nand flash中

我通过两种方式可以将代码在板子上运行:

1、采用SecureCRT调试工具,通过Xmodem发送  :\ti\AM335X_StarterWare_02_00_00_07\binary\armv7a\cgt_ccs\am335x\evmskAM335x\bootloader处的boot.bin文件,然后发送自己修改例程里的TurnLED.bin。成功实现将程序烧写到DDR3当中运行。

2、采用:\ti\AM335X_StarterWare_02_00_00_07\tools\sd_format 中的工具制作SD卡,拷贝\ti\AM335X_StarterWare_02_00_00_07\binary\armv7a\cgt_ccs\am335x\evmskAM335x\bootloader 中的MLO文件和自己编写程序app(将TurnLED.bin修改为app);成功实现程序从SD卡拷贝到RAM中运行。

现在我的问题是想实现:采用SecureCRT调试工具,发送boot.bin文件,将接下来发送的用户程序加载到nand flash中,并从nand flash中读取程序,我用IAR打开官方boot文件,添加工程能够实现编译并生成bin文件,现在想问如何修改boot,实现上述功能。

void ImageCopy(void)
{
#if defined(SPI)
   if (SPIBootCopy( ) != true)
       BootAbort();
#elif defined(MMCSD)
      MMCSDBootCopy();
#elif defined(UART)
      UARTPuts("\nI am UART! :\n", -1);
     if (UARTBootCopy() != true)
          BootAbort();

#elif defined(NAND)
UARTPuts("\nI am NAND! :\n", -1);
     if (NANDBootCopy() != true)
       BootAbort();
#else
#error Unsupported boot mode !!
#endif
}请问此处的代码宏定义在哪里?找了半天没找到。麻烦大家帮我看一下,先谢谢了。

qing lin3:

我通过两种方式可以将代码在板子上运行:

1、采用SecureCRT调试工具,通过Xmodem发送  :\ti\AM335X_StarterWare_02_00_00_07\binary\armv7a\cgt_ccs\am335x\evmskAM335x\bootloader处的boot.bin文件,然后发送自己修改例程里的TurnLED.bin。成功实现将程序烧写到DDR3当中运行。

2、采用:\ti\AM335X_StarterWare_02_00_00_07\tools\sd_format 中的工具制作SD卡,拷贝\ti\AM335X_StarterWare_02_00_00_07\binary\armv7a\cgt_ccs\am335x\evmskAM335x\bootloader 中的MLO文件和自己编写程序app(将TurnLED.bin修改为app);成功实现程序从SD卡拷贝到RAM中运行。

现在我的问题是想实现:采用SecureCRT调试工具,发送boot.bin文件,将接下来发送的用户程序加载到nand flash中,并从nand flash中读取程序,我用IAR打开官方boot文件,添加工程能够实现编译并生成bin文件,现在想问如何修改boot,实现上述功能。

void ImageCopy(void){#if defined(SPI)   if (SPIBootCopy( ) != true)       BootAbort();#elif defined(MMCSD)      MMCSDBootCopy();#elif defined(UART)      UARTPuts("\nI am UART! :\n", -1);     if (UARTBootCopy() != true)          BootAbort();

#elif defined(NAND) UARTPuts("\nI am NAND! :\n", -1);     if (NANDBootCopy() != true)       BootAbort();#else #error Unsupported boot mode !!#endif}请问此处的代码宏定义在哪里?找了半天没找到。麻烦大家帮我看一下,先谢谢了。

Steven Liu1:

回复 qing lin3:

这个宏,是在boot文件的属性的里面定义的。我主要用的是CCS,没用过IAR,但是方法应该是相近的。CCS中邮件点击boot工程,你可以选择debug的方式,set active的情况可以有mmcsd,spi等等,选择了之后,其实就是对相关的宏定义做了配置,从而可以编译出适用于当前启动方式的bootloader。

赞(0)
未经允许不得转载:TI中文支持网 » am335x 如何将裸机程序烧写进nand flash中
分享到: 更多 (0)