• 开发板烧录


    注意:
    1、只有在bootloader阶段才能使用j-link下载调试,一旦Linux运行起来后,j-link就不能再使用了。
    2、如果开发板上没有出厂时的wince系统,就可以跳过前面的擦除出厂系统自带bootloader的过程,直接使用j-link下载bootstrap程序并烧录u-boot。 
    3、所有的flash都只能由1 write成0,不能由0 write成1; 如果要从0变为1,只能erase; 所以在往flash写数据之前,必须先擦除要写的地址空间。

    烧录文件说明:

    bootstrap-s3c2440.bin
    bootstrap文件主要用来初始化CPU外部的SDRAM;在烧录时,该程序需要使用j-link下载到0x0(CPU内部SRRAM)地址上去运行,另外此程序不需要烧录到Nandflash上。

    u-boot.bin:

    u-boot就相当于电脑的BIOS程序,该程序用来烧录/启动Linux系统等。在运行完bootstrap后,我们需要使用j-link将它加载到0x33f80000(CPU外部SDRAM)中去运行,当他在内存中运行起来后,再使用nand write命令将他烧录到nandflash的0地址上去。

    linuxrom-s3c2440.bin:

    linuxrom是linux系统文件,我们需要在u-boot运行时,使用tftp命令下载到SDRAM的0x30008000地址上,然后再使用nand write命令将其烧录到nandflash的0x100000地址上,记得flash再写之前一定要先使用nand erase命令擦除。

    s3c2440_apps.apm:

    该程序为FL2440上的应用程序,包括系统配置,WiFi使用,3G/GPRS拨号,数据库,web server,MP3/MP4播放器程序等;修改网卡IP地址和MAC地址在:/apps/etc/network/ifcfg-eth0

    nand scrub恢复出厂

    j-link加载u-boot命令:

    h   停止CPU中正在执行的程序,如果没有停下,可以多按几次h
    speed 12000   设置J-link调试速度为12M
    loadbin F:fl2440inootstrap-s3c2440.bin 0          加载bootstrap程序到CPU内部的4K SRAM中运行
    setpc 0                              让PC寄出去指向SRAM的起始地址,该地址放的是刚才下载的bootstrap程序
    g                                   开始执行bootstrap程序,该程序用来初始化外部扩展的64M SDRAM,地址空间为0x3000 0000~(0x3000 0000+64M)
    h                                   停止bootstrap程序的执行,如果没有停下,可以多按几次h
    loadbin F:fl2440inu-boot-s3c2440.bin 0x33f80000   将u-boot加载到SDRAM的0x33f80000
    setpc 0x33f80000                      使PC寄存器指向0x33f80000,即u-boot程序的第一条代码
    g                                   开始执行u-boot程序

    u-boot下载烧录命令:

    I. 设置u-boot环境变量:
    set ethaddr    设置fl2440开发板上的u-boot程序中的MAC地址
    set ipaddr     设置fl2440开发板上的u-boot程序中的IP地址
    set serverip   指定tftp下载时使用的tftp服务器的IP地址

    II. 下载并烧录u-boot程序:
    -----
    tftp 30008000 u-boot-s3c2440.bin   将u-boot临时下载到SDRAM的30008000地址
    nand erase 0 100000   将nandflash的0~1M的分区擦除,该分区是用来存放u-boot程序的;
    nand write 30008000 0 ${filesize} 将刚下载到SDRAM 30008000地址上的u-boot写到nandflash的0地址偏移处,大小为下载的U-boot文件大小

    III. 下载并烧录linux系统:
    -----
    tftp 30008000 linuxrom-s3c2440.bin   将linux系统程序临时下载到SDRAM的30008000地址
    nand erase 100000 F00000   将nandflash的1M~16M的分区(总共15M)擦除,该分区是用来存放linux系统的;
    nand write 30008000 100000 ${filesize} 将刚下载到SDRAM 30008000地址上的linux系统写到nandflash的1M地址偏移处,大小为下载的linux系统文件大小

  • 相关阅读:
    python中关于操作时间的方法(一):使用time模块
    size_t类型
    批量下载网络图片并zip打包
    遇到的java面试题
    jsp中button与submit的用法
    springmvc json字符串转化成json对象
    Cas 介绍及使用
    java中post时中文乱码
    mybatis使用generator生成对应的model、mapping配置文件、dao
    移动端接口:java写get方式访问数据(springmvc+spring。。。)
  • 原文地址:https://www.cnblogs.com/xiaohexiansheng/p/5465639.html
Copyright © 2020-2023  润新知