STM32MP157F-DK2 Getting Start#

1. STM32MP1 OpenSTLinux Starter Package#

Starter Package就是直接提供刷机镜像文件,通过USB配合STM32CubeProg烧写到板子。

2. 使用STM32CubeProg烧写系统#

下面简单介绍下:

2.1 设置开发板为下载模式#

2.2 使用STM32CubeProg下载系统文件到开发板#

  • USB OTG USB接口用来下载Linux固件
  • ST-Link USB接口被用做log打印

  • 通过CN7(USB Type C)连接开发板和电脑,然后在STM32CubeProg中选择USB接口,点击“Connect”,使其连接到开发板

  • 点击“Open File”选项卡,选择FlashLayout_sdcard_stm32mp157x-dk2-trusted.tsv文件,该文件的路径为:

STM32MP15-Ecosystem-v3.1.0/Starter-Package/stm32mp1-openstlinux-5.10-dunfell-mp1-21-11-17/images/stm32mp1/flashlayout_st-image-weston/trusted

  1. 点击“Browse”按钮,选择[Starter_Pack_Path]/images/stm32mp1文件夹:
STM32MP15-Ecosystem-v3.1.0/Starter-Package/stm32mp1-openstlinux-5.10-dunfell-mp1-21-11-17/images/stm32mp1
  1. 点击“Download”按钮,STM32CubeProg将会自动完成下载任务

3.使用命令行烧写系统#

经过测试使用STM32CubeProg烧写系统很容易失败,原因大概是出现在USB通信上,目前(2022.1.10)ST官方没有给出具体的原因。

使用STM32CubeProg烧写系统,本质是将系统文件通过USB接口,然后借助STM32MP157芯片本身,将系统文件烧写到SDK。

所以直接将系统文件烧写进SD卡,即可解决该问题。

下面简单介绍命令行下烧写方法:

  1. 使用ST提供的脚本create_sdcard_from_flashlayout.sh生成命令行烧写文件,该脚本存在的路径为:
Starter-Package/stm32mp1-openstlinux-5.10-dunfell-mp1-21-11-17/images/stm32mp1/scripts/create_sdcard_from_flashlayout.sh

脚本使用方法:

./create_sdcard_from_flashlayout.sh ../flashlayout_st-image-weston/FlashLayout_sdcard_stm32mp157F-dk2-trusted.tsv 

该脚本执行完成,将会生成 xxx.raw 文件,使用dd命令将该文件烧写到SD卡即可

RAW IMAGE generated: ../flashlayout_st-image-weston/../flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157f-dk2-trusted.raw

烧写到SD卡:

WARNING: before to use the command dd, please umount all the partitions
    associated to SDCARD.
    sudo umount `lsblk --list | grep mmcblk0 | grep part | gawk '{ print $7 }' | tr '\n' ' '`

To put this raw image on sdcard:
    sudo dd if=../flashlayout_st-image-weston/../flashlayout_st-image-weston_FlashLayout_sdcard_stm32mp157c-ev1-trusted.raw of=/dev/mmcblk0 bs=8M conv=fdatasync

(mmcblk0 can be replaced by:
     sdX if it's a device dedicated to receive the raw image 
          (where X can be a, b, c, d, e)

3.设置STM32MP157-DK2 wifi联网#

使用串口或者有线网口登录系统,然后使用下面的命令连接WiFi:

$ export SSID="CMCC-24AH"
$ export PASSWORD="cxh87f324"

$ ifconfig wlan0 up
$ wpa_passphrase ${SSID} ${PASSWORD} > ${SSID}.conf
$ wpa_supplicant -i wlan0 -c ${SSID}.conf -B
$ dhclient wlan0
$ ifconfig