HI3518EV200开发板调试

距离上次说要做3518的开发板已经半个多月了


期间由于工作时间太忙了,一直没有充足的时间去弄这个板子。只有下班的时候忙完了公司的事请,抽些时间出来开始贴片上物料,还好之前打板的时候顺带买了钢网,所以在贴3518的时候没有遇到太大的困难。
所以先贴了主控3518,觉得贴得还行感觉应该没什么问题,然后再贴3V3/1V8/1V1三路主电源,接着再贴3518主控的最小系统。
image365827e609451d66.png

烧录u-boot固件

刚贴完电源部分以及最小系统,就隐不住要上电试一下效果。
烧录u-boot使用的是海思自带的烧录软件HiTool,接上电源测试电源正常输出3V3/1V8/1V1,摸了一下3518感觉温度正常,应该是焊接没问题了。设置好HiTool,载入u-boot文件,设置分区大小0-1M范围。点烧录,然而并没有烧录成功。经过一段时间的测试检查,最后发现以下几个问题:
(1)原理图上有一处电路没有接GND
image79f36d0a98984a9a.png
(2)Boot模式引脚设置相反
image9b4beab63ca59f34.png
(3)有一处没接上3V3电源
imagecba1eac05bdc3aae.png
解决以上遇到的问题,开始烧录u-boot
image444bb128a9409a0c.png
(4)下载后还是遇到了一点问题,提示当前单板Flash与烧写分区中的Flash类型是否一致
image8606d5e5f4b3f0e2.png
待补充》》》(还好手里之前烧录有一块好的)
如果下载成功u-boot得到以下打印信息
imageb50ab2389a7cdebc.png

烧录uImage与文件系统

1.先安装TFTP 服务器,参考文档ubuntu18.04安装tftpd服务器

开发板通过TFTP服务器与Ubuntu没有连通,猜测是网口部分硬件没调好。。。。待续
时间来到第二天晚上下班回来Next
今天百度看了一些文章,发现大概是这么一回事,并不是硬件不通的问题
给板子上电进入u-boot,输入printenv查看板子的系统环境变量

hisilicon # printenv
bootargs=mem=96M console=ttyAMA0,115200
bootcmd=bootm 0x82000000
bootdelay=1
baudrate=115200
ethaddr=00:00:23:34:45:66
ipaddr=192.168.1.10
serverip=192.168.1.2
netmask=255.255.255.0
bootfile="uImage"
stdin=serial
stdout=serial
stderr=serial
verify=n
ver=U-Boot 2010.06 (Oct 20 2019 - 07:01:20)
Environment size: 294/262140 bytes

从中我发现板子的环境变量
板子的IP地址:ipaddr=192.168.1.10
Ubuntu服务器IP地址:serverip=192.168.1.2
IP掩码:netmask=255.255.255.0
以上信息和我路由器设置的是有差别的,因此下面需要根据实际情况修改一下环境变量
(1)设置Ubuntu主机的IP地址:setenv serverip 192.168.2.114
(2)设置开发板的IP地址:setenv ipaddr 192.168.2.127
(3)开发板MAC地址不变复制之前的:setenv ethaddr 00:00:23:34:45:66
(4)设置板子IP掩码:setenv netmask 255.255.255.0
(5)设置板子的IP网关地址:setenv gatewayip 192.168.2.1
设置完成ping 一下Ubuntu主机是否与开发板连通: ping 192.168.2.114 如下

hisilicon # ping 192.168.2.114
Hisilicon ETH net controler
MAC:   00-00-23-34-45-66
eth0 : phy status change : LINK=DOWN : DUPLEX=FULL : SPEED=100M
eth0 : phy status change : LINK=UP : DUPLEX=FULL : SPEED=100M
host 192.168.2.114 is alive

说明板子已经和主机连接

2.使用TFTP烧录kernel与根文件系统

(1)tftp更新并重新烧写kernel的命令序列:

   mw.b 0x82000000 ff 0x300000
   tftp 0x82000000 uImage_hi3518ev200
   sf probe 0
   sf erase 0x100000 0x300000
   sf write 0x82000000 0x100000 0x300000

(2)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

(3)正确的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)

然后重启reset 成功进入系统cd / 列出根文件目录
image.png

??ヽ(°▽°)ノ?撒花

imagef2e05e9295f35ff6.png

最后修改:2020 年 02 月 18 日
如果觉得我的文章对你有用,请随意赞赏