zoukankan      html  css  js  c++  java
  • zmediaboard-Hi3518参数及配置

    1.12_13.uboot的烧写和flash分区1_2
    1.12.1、裸机烧录uboot
    (1)什么叫裸机烧录?设备是空白的,未经烧录的,就叫裸机。
    (2)裸机烧录一个设备有2种方案:1是用外部烧录器来烧录板载flash(外部烧录器烧录SPIFLASH时和HI3518E没有关系,有时候经常SPIFLASH先单独通过烧录器和支架来烧录好镜像,然后再把烧录过镜像的SPIFLASH焊接到板子上。现在很多烧录器也可以在板子上直接烧了);2是通过主芯片提供的isp下载的机制来间接烧录板载flash。
    (3)运行Hi_tool来烧录uboot
    1.12.2、flash分区
    (1)因为嵌入式系统为了简化,没有使用分区表来自动管理flash,所以都是事先定死的。所以在部署一个嵌入式系统前都要人为的定下一个分区
    (2)原则1:每个分区要足够放镜像;原则2:尽量留一点扩展余地。原则3:在满足1和2情况下你随便搞。
    (3)我定的分区:
    分区名 分区大小 起始地址 截至地址
    bootloader:1M 0x00000000 0x00100000
    kernel: 3M 0x00100000 0x00400000
    rootfs: 12M 0x00400000 0x01000000

    1.12.3、uboot的环境变量参数
    1.12.4、各种常见flash的简单讲解
    (1)买到的flash芯片,其实是内部的flash存储颗粒+外部封装的控制器来构成的。
    (2)像EMMC、SD、MMC、SPIFLASH、NANDFLASH等差异都在于控制器。
    (3)SPIFLASh的优势就是接口简单,主芯片只需要支持SPI接口就可以外接。很多MCU或者CPU在需要外扩一个8M/16M/32M/64M这么大级别的外部存储器时,选择SPIFLASH是很好的。
    (4)NANDFLASH其实控制器是最老的,像EMMC、SD等都比NANDFlash要更新一些,更好一些。


    1.14.kernel和rootfs烧录与启动系统
    1.14.1、烧录kernel
    (1)SDRAM地址范围:80000000-83FFFFFF
    (2)tftp得能通能下载,才能烧录。ip设置是:本地192.168.1.10,serverp是141
    1.14.2、烧录rootfs
    1.14.3、uboot的各环境变量介绍和设置
    (1)网络地址:ipaddr 192.168.1.10, serverip 192.168.1.141
    (2)bootcmd:
    (3)bootargs:
    附:烧录命令
    ---------------------------------------------------
    tftp更新并重新烧写uboot的命令序列:
    mw.b 0x82000000 ff 0x100000
    tftp 0x82000000 u-boot-hi3518ev200.bin
    sf probe 0
    sf erase 0x0 0x100000
    sf write 0x82000000 0x0 0x100000
    --------------------------------------------------
    tftp更新并重新烧写kernel的命令序列:
    mw.b 0x82000000 ff 0x300000
    tftp 0x82000000 uImage_hi3518ev200
    sf probe 0
    sf erase 0x100000 0x300000
    sf write 0x82000000 0x100000 0x300000
    ---------------------------------------------------
    tftp更新并重新烧写rootfs的命令序列:
    mw.b 0x82000000 ff 0xc00000
    tftp 0x82000000 rootfs_hi3518ev200_64k.jffs2
    sf probe 0
    sf erase 0x400000 0xc00000
    sf write 0x82000000 0x400000 0xc00000

    附2:正确的bootcmd和bootargs对应的设置命令:
    set bootcmd 'sf probe 0;sf read 0x82000000 0x100000 0x300000;bootm 0x82000000'
    set bootargs mem=32M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=hi_sfc:1024K(boot),3072K(kernel),12288K(rootfs)


    1.15.rootfs启动后做了什么


    1.16_17.mpp的部署研究和实战1_2
    1.16.1、mpp的文件结构详解
    (1)ko
    (2)lib
    (3)sample
    (4)其他几个
    1.16.2、开发板启动自动挂载主机
    (1)在profile中添加设置网卡IP地址
    (2)在profile中添加自动挂载主机nfs服务器
    mount -t nfs -o nolock 192.168.1.141:/home/aston/rootfs /mnt
    1.16.3、部署ko文件
    ./load3518e -i -sensor ar0130 -osmem 32 -total 64
    1.16.4、部署lib文件

    SDRAM范围:80000000-83FFFFFF
    linux内存:0x80000000-0x81FFFFFF MMZ内存:0x82000000-0x83FFFFFF


    1.18.sample的编译和测试
    1.18.1、sample的编译
    (1)sample结构简单浏览
    (2)Makefile研究
    (3)编译得到sample_venc
    1.18.2、sample的部署和测试
    (1)nfs方式运行sample
    (2)得到录像文件xx.h264
    (3)导出xx.h264到windows下用vlc播放器播放验证
    1.18.3、镜像重新制作
    (1)在编译目录的osdev/pub/下找到rootfs_uclibc.tgz,解压开
    (2)按照上节和本节验证成功的部署步骤部署整个rootfs
    (3)手工制作rootfs.jffs2镜像,再烧录测试即可
    osdrv/pub/bin/pc/mkfs.jffs2 -d osdrv/pub/rootfs_uclibc -l -e 0x10000 -o osdrv/pub/rootfs_uclibc_64k.jffs2

  • 相关阅读:
    ubuntu安装mysql并修改编码为utf-8
    ubuntu16.04安装jdk1.8
    解决 Can't Connect to MySQL Server on IPAddress (10061) 的问题
    使用开源数据库客户端DBeaver连接DB2数据库
    Windows下使用console线连接思科交换机
    win7安装JDK6
    Python将excel文件从xls转换为xlsx
    Windows使用Gitblit搭建Git服务器
    B树、B-树、B+树、B*树
    必须熟悉的vim快捷键操作
  • 原文地址:https://www.cnblogs.com/ordinary-world/p/10029550.html
Copyright © 2011-2022 走看看