HK-2000系统内核烧写方法

HK-2000使用AT91RM9200芯片,其内核烧写说明如下:
烧写前提:
    1.您必须有HK-2000多功能数据采集仪的内核相关文件。如果你没有请联系北京环控科技有限公司售后服务部,根据HK-2000数据采集仪上的产品序列编号进行索要。内核文件包括uboot系统文件(boot.bin,LOADER.BIN,u-boot.bin,u-boot.gz),linux内核(uImage),文件系统(jffs2.img),ftp服务器软件(TFTPSRV.EXE)。
    2.将系统串口与PC串口相连,并连接好系统的网线,将跳线J100跳至2-3然后上电。
    串口会不停的往超级终端上发C。  
  
1)  通过超级终端xmodem协议传送loader.bin再传送u-boot.bin,然后uboot会在SDRAM中运行.
    然后:
    Uboot>    protect off all                                       
    Uboot>    erase all

    Uboot>     loadb 20000000        ;将boot.bin传送到SDRAM中   
    通过kermit协议传送boot.bin
    Uboot>     cp.b 20000000 10000000 5fff            ;将SDRAM中的boot.bin拷贝到flash中
    Uboot>     protect on 10000000 10005fff           ;写保护

    Uboot>     loadb 20000000                         ;将U-boot.gz传送到SDRAM中   
    通过kermit协议传送U-boot.gz
    Uboot>     cp.b 20000000 10010000 ffff            ;将SDRAM中的U-boot.gz拷贝到flash中
    Uboot>     protect on 10000000 1001ffff           ;写保护
       
然后断电,将J100跳至1-2,重新启动回进入UBOOT

注意:在重装系统的时候如果只修改了一部分可以不必全部擦除,根据下面的地址擦除相应的部分
    如果只擦除UBOOT的命令           erase 10000000 1001ffff
    如果只擦除uImage               erase 10020000 100fffff
    如果只擦除jffs2.img            erase 10100000 103fffff
    如果要擦除uImage和jffs2.img    erase 10020000 103fffff

第一种方法:flash中启动linux
2)  复位系统,然后设置u-boot的启动参数如下:
    Uboot>    setenv bootargs root=/dev/mtdblock/3 console=ttyS0,115200 mem=32M
    Uboot>    setenv image cp.b 10020000 21000000 e0000
    Uboot>    setenv ramdisk run
    Uboot>    setenv boot bootm 21000000
    Uboot>    setenv bootcmd run image\;run boot
    Uboot>    setenv ethaddr 00:12:34:56:78:9a    ;可能会出现“Can't overwrite ethaddr”的提示,可以不管。
    Uboot>    setenv ipaddr 192.168.0.102         ;目标板的IP
    Uboot>    setenv serverip 192.168.0.6         ;个人电脑windows的IP
    Uboot>    setenv bootdelay 1
    Uboot>    saveenv

3)  现在就可以将内核通过tftp下载到sdram中,然后拷贝到flash中了,打开uImage jffs2.img所在文件夹下的TFTPSRV.EXE 然后最小化。
    Uboot>     tftp 21000000 uImage
    Uboot>    cp.b 21000000 10020000 e0000       
    这可能需要一定的时间(大概5分钟),请耐心等待,不要断电。
       
    Uboot>    tftp 21100000 jffs2.img                           
    Uboot>    cp.b 21100000 10100000 260000         ;0x260000 = 2432KB  根据jffs2.img的大小选择                                                  ;0x2C0000 = 2806KB
    这可能需要一定的时间(大概10分钟),请耐心等待,不要断电。   

    拷贝完成后,复位系统,就可以看到以jffs2文件系统为根文件系统的linux系统就开始运行了,这样根文件系统中的各种配置文件就
    可以断电保存了

第二种方法:通过网络启动linux(打开uImage ramdisk.gz所在文件夹下的TFTPSRV.EXE 然后最小化)
    复位系统,然后设置u-boot的启动参数如下,可以通过网络下载启动:
    Uboot> setenv bootargs root=/dev/ram rw initrd=0x21100000,6000000 ramdisk_size=15360 console=ttyS0,115200 mem=32M
    Uboot> setenv image tftp 21000000 uImage
    Uboot> setenv ramdisk tftp 21100000 ramdisk.gz
    Uboot> setenv boot bootm 21000000
    Uboot> setenv bootcmd run image\;run ramdisk\;run boot
    Uboot> setenv ethaddr 00:12:34:56:78:9a
    Uboot> setenv ipaddr 192.168.0.168
    Uboot> setenv serverip 192.168.0.161
    Uboot> saveenv
   
    重新启动,进入linux
   
注意:
   1、内核编译时已将4M的Norflash分为三个MTD分区,下面是分区号和大小:
      /dev/mtd/1             “bootloader”                 0x20000
      /dev/mtd/2             “uImage”                     0xe0000
      /dev/mtd/3             “jffs2root”                  0x100000
   2、内核编译时将64M的Nanfflash分为1个MTD分区,并通过yaffs系统将1个mtd分区挂载到不同目录上,下面是分区号,大小和挂载目录
      /dev/mtd/4                64M                       /mnt/Nand
   3、系统启动后,根文件目录下的目录/tmp和/var是挂载在系统SDRAM上,所以在开发过程中形成的各种不需要掉电保存的临时文件就可以
      存放到这两个目录中。
   4、U盘的使用说明:首先插入U盘到系统的USB host接口,然后进入/test目录,运行命令
      $ ./udisk
      然后既可以挂载U盘了
      $ mkdir /mnt/usb
      $ mknod /dev/sda1 b 8 1  如果不行换为 mknod /dev/sda1 b 8 0
      $ mount -t vfat /dev/sda1 /mnt/usb
      上式中/mnt/usb是新建立的U盘的挂载目录,进入/mnt/usb目录就可以对U盘进行操作了。
   5、系统第一次启动后,网卡会自动随机配置一个MAC地址,并将其存入/usr/etc/Mac.txt文件,以后启动将直接从该文件中读取第一次
      配置的MAC地址进行配置。网络的IP地址被配置为192.168.0.1,启动后可根据网络环境使用ifconfig命令进行修改,若想让各项配置
      命令在系统启动后自动生效,可将配置命令放入文件/usr/etc/rc.local文件中即可。
     
   6、Nand分区的擦除方法:
      首先卸载Nand分区,如Nand:
      $ umount /mnt/Nand
 
     
      然后擦除再挂载:
      $ eraseall /dev/mtd/4

      $ mount -t yaffs /dev/mtdblock/4 /mnt/Nand

  

你可能感兴趣的:(HK-2000系统内核烧写方法)