组网
大概流程:
1.关闭防火墙,设置以太网卡(百兆全双工)
2.ubuntu下设置桥接模式,更改静态IP(ifconfig)
1>编辑----->虚拟网络编辑器----->桥接模式----->选择网卡
2>虚拟机----->设置----->网络适配器2----->桥接模式
IP地址----->192.168.8.188
子网掩码----->255.255.255.0
网关----->192.168.8.1
DNS----->8.8.8.8
3.开发板网络配置
1>setenv serverip 192.168.8.188 ----->设置服务器ip地址
2>setenv ipaddr 192.168.1.100 ----->设置服务器开发板地址
3>setenv netmask 255.255.255.0 ----->设置开发板子网掩码
4>setenv gatewayip 192.168.1.1 ----->设置开发板网关
5>saveenv -----> 保存
4.测试ping
pint 192.168.8.88
5.测试tftp命令
1>拷贝bin文件到tftpboot目录下,asm-led.bin
2>tftp 0xc0008000 asm-led.bin
3>在串口工具输入go运行 go 0xc0008000
如何设置bootcmd命令,倒计时进入0之前,可以自动执行tftp命令
setenv bootcmd tftp 0xc0008000 asm-led.bin\;go 0xc0008000
saveenv
uboot源码获取
1.uboot官网获取:ftp://ftp.denx.de/pub/u-boot/ 前提是是芯片厂家将uboot源码开源到uboot官网上
2.ST开发社区获取:https://wiki.stmicroelectronics.cn/stm32mpu/wiki/STM32MP1_Developer_Package
3.ST官网:https://www.st.com/en/embedded-software/stm32mp1dev.html
4.开发板厂家:直接找对应的开发板厂家进行获取,一定有支持开发板的相关镜像文件
5.项目经理:一定有支持开发板的相关镜像文件
uboot源码移植准备过程
1.将Uboot源码拷贝到Ubuntu下,在家目录下创建demo目录,将源码文件解压
2.在家目录下创建一个文件夹FSMP1A,将文件拷贝到FSMP1A目录下
3.进入目录,对压缩文件解压
4.进入uboot源码目录下,对uboot源码进行解析
5.因为uboot源码使用Makefile进行编译的,所以需要查看make相关帮助命令
6.分析README文件
7.总结:
通过README文件分析可知,配置板子的默认缺省命令是:make <board_name>_defconfig
1.在家目录下创建一个文件夹FSMP1A
2.将u-boot-stm32mp-v2020.10-stm32mp-r2-r0拷贝到FSMP1A目录下
cp u-boot-stm32mp-v2020.10-stm32mp-r2-r0/ ~/FSMP1A/ -rf
3.进入到~/FSMP1A/u-boot-stm32mp-v2020.10-stm32mp-r2-r0目录
4.对u-boot-stm32mp-v2020.10-stm32mp-r2-r0.tar.gz目录进行解压
tar -vxf u-boot-stm32mp-v2020.10-stm32mp-r2-r0.tar.gz
5.进入uboot源码目录下,对uboot源码进行解析
1>平台相关
arch:存放平台相关架构内容
board:存放各个板子相关文件
2>平台无关
Makefile:工程管理文件
configs:配置相关文件
drivers:存放驱动相关内容
README:帮助文档
6.因为uboot源码使用Makefile进行编译的,所以需要查看make相关帮助命令信息 ----->make help
1>清除中间文件 -----> make distclean
Cleaning targets:
clean - Remove most generated files but keep the config
mrproper - Remove all generated files + config + various backup files
distclean - mrproper + remove editor backup and patch files
2>基于图形化界面配置 ----->