你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32mp157编译烧录运行到uboot串口无输出

[复制链接]
qingbiuci 提问时间:2024-7-1 14:58 / 未解决

1.大概2月前后,参考第2部分的方法,生成sdcard镜像文件并烧录的步骤,生成了sdcard镜像文件并烧录到sd卡,然后我一直使用这个sd卡和生成sdcard镜像文件更新自己编译的tf-a, optee, uboot, kernel 镜像来进行测试。我一共使用了A, B, C三张sd卡。

前几天我重新又生成了一遍sdcard镜像文件并烧录,过程中把以前一直用的2月生成的sdcard镜像文件删除了,然后就发现问题了,使用新生成的sdcard镜像文件并烧录后,tf-a 和 optee串口有正常的输出,一到uboot就没有串口输出信息了,系统可以正常运行,心跳灯和LCD正常工作,触摸屏也可以正常操作。

过程中我使用新生成的sdcard镜像文件烧录了sd卡A和sd卡B,都是一样的现象,偶然间我发现同样的tf-a, optee, uboot, kernel镜像更新到sd卡C上uboot, kernel是可以正常串口输出和调试的。sd卡C是没有使用新生成的sdcard镜像文件烧录过的。

然后,因为没有2月生成的sdcard镜像文件了,我使用balenaEtcher的复制磁盘功能把sd卡C克隆到sd卡A和sd卡B,烧录同样的tf-a, optee, uboot, kernel镜像,uboot, kernel就可以正常串口输出和调试了。

000001.jpg

接着我重新在虚拟机上安装ubuntu20.04和ubuntu22.04,然后参考第2部分的方法,生成sdcard镜像文件并烧录的步骤,生成了sdcard镜像文件并烧录到sd卡,我换了一台PC也试过了,重新下载了刚更新的新版STM32MP1 OpenSTLinux入门套件,都是tf-a 和 optee串口有正常的输出,一到uboot就没有串口输出信息了,系统可以正常运行,心跳灯和LCD正常工作,触摸屏也可以正常操作。使用stm32cubeprogrammer烧录到SD卡后发现,依然是tf-a 和 optee串口有正常的输出,一到uboot就没有串口输出信息了,系统可以正常运行,心跳灯和LCD正常工作,触摸屏也可以正常操作。

请各位前辈,老师帮忙看一下,问题出在哪里,可不可以给一些排查的方向,谢谢!

我在en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz基础上修改的设备树文件见楼下附件。

2.生成sdcard镜像文件并烧录的步骤

下载好的STM32MP1 OpenSTLinux入门套件:en.flash-stm32mp1-openstlinux-6-1-yocto-mickledore-mp1-v23-06-21.tar.gz,上传到ununtu系统并解压。

0001.png

进入文件夹"stm32mp1/scripts"里面有生成sdcard镜像的脚本文件,在文件夹"stm32mp1"打开终端,使用如下命令生成sdcard镜像文件:

./scripts/create_sdcard_from_flashlayout.sh ./flashlayout_st-image-weston/optee/FlashLayout_sdcard_stm32mp157a-dk1-optee.tsv

0002.png

终端会打印相关的信息,同时会在"stm32mp1"文件夹下生成两个文件:

FlashLayout_sdcard_stm32mp157a-dk1-optee.raw
FlashLayout_sdcard_stm32mp157a-dk1-optee.how_to_update.txt

使用FileZilla工具将生成的”FlashLayout_sdcard_stm32mp157a-dk1-optee.raw“文件下载到Windows系统下,准备一张容量至少8GB的SD卡,使用balenaEtcher,将”FlashLayout_sdcard_stm32mp157a-dk1-optee.raw“烧录到SD卡;

0003.png

FlashLayout_sdcard_stm32mp157a-dk1-optee.how_to_update.txt

参考上面的文件,后面会使用类似如下的命令来进行分区内容的更新,需要注意每次操作完,需要安全安全移除SD卡:

- Populate partition fsbl1 (/dev/sdc1)
    sudo dd if=arm-trusted-firmware/tf-a-stm32mp157a-dk1-sdcard.stm32 of=/dev/sdc1 bs=1M conv=fdatasync status=progress

- Populate partition fsbl2 (/dev/sdc2)
    sudo dd if=arm-trusted-firmware/tf-a-stm32mp157a-dk1-sdcard.stm32 of=/dev/sdc2 bs=1M conv=fdatasync status=progress

- Populate partition metadata1 (/dev/sdc3)
    sudo dd if=arm-trusted-firmware/metadata.bin of=/dev/sdc3 bs=1M conv=fdatasync status=progress

- Populate partition metadata2 (/dev/sdc4)
    sudo dd if=arm-trusted-firmware/metadata.bin of=/dev/sdc4 bs=1M conv=fdatasync status=progress

- Populate partition fip-a (/dev/sdc5)
    sudo dd if=fip/fip-stm32mp157a-ev1-optee.bin of=/dev/sdc5 bs=1M conv=fdatasync status=progress

- Populate partition fip-b (/dev/sdc6)
    sudo dd if=none of=/dev/sdc6 bs=1M conv=fdatasync status=progress

- Populate partition u-boot-env (/dev/sdc7)
    sudo dd if=none of=/dev/sdc7 bs=1M conv=fdatasync status=progress

- Populate partition bootfs (/dev/sdc8)
    sudo dd if=st-image-bootfs-openstlinux-weston-stm32mp1.ext4 of=/dev/sdc8 bs=1M conv=fdatasync status=progress

- Populate partition vendorfs (/dev/sdc9)
    sudo dd if=st-image-vendorfs-openstlinux-weston-stm32mp1.ext4 of=/dev/sdc9 bs=1M conv=fdatasync status=progress

- Populate partition rootfs (/dev/sdc10)
    sudo dd if=st-image-weston-openstlinux-weston-stm32mp1.ext4 of=/dev/sdc10 bs=1M conv=fdatasync status=progress

- Populate partition userfs (/dev/sdc11)
    sudo dd if=st-image-userfs-openstlinux-weston-stm32mp1.ext4 of=/dev/sdc11 bs=1M conv=fdatasync status=progress
收藏 评论7 发布时间:2024-7-1 14:58

举报

7个回答
qingbiuci 回答时间:3 天前
在en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz基础上修改的设备树文件见附件。

stm32mp0601-bear-mp157.zip

下载

103.49 KB, 下载次数: 1, 下载积分: ST金币 -1

Xar- 回答时间:3 天前

您好,首先有几个问题需要跟您确认一下:

1.请问您手里的开发板是否是stm32mp157a-dk1?

2."重新下载了刚更新的新版STM32MP1 OpenSTLinux入门套件,都是tf-a 和 optee串口有正常的输出,一到uboot就没有串口输出信息了",您是否下载的是来自STM32MP1Starter - STM32MP1 OpenSTLinux Starter Package - STMicroelectronics的5.0.0版本呢?您是否是通过STM32CubeProgrammer下载到SD卡里面的呢?(如果不是,为什么您不使用STM32CubeProgrammer而使用Etcher呢?)

3.您现在的问题是“StarterPackage烧录之后就有u-boot串口无输出的问题”还是“由于您修改了设备树重新编译后再下载导致u-boot串口无输出”?

qingbiuci 回答时间:3 天前

Xar- 发表于 2024-7-1 15:39</p>
<p>1.请问您手里的开发板是否是stm32mp157a-dk1?

感谢您的回复。

1.请问您手里的开发板是否是stm32mp157a-dk1?

开发板是下面这款

BearPi-HM_Micro_small: 小熊派BearPi-HM Micro开发板基于OpenHarmony设备开发代码及教程 (gitee.com)

000002.jpg

2."重新下载了刚更新的新版STM32MP1 OpenSTLinux入门套件,都是tf-a 和 optee串口有正常的输出,一到uboot就没有串口输出信息了",您是否下载的是来自STM32MP1Starter - STM32MP1 OpenSTLinux Starter Package - STMicroelectronics的5.0.0版本呢?您是否是通过STM32CubeProgrammer下载到SD卡里面的呢?(如果不是,为什么您不使用STM32CubeProgrammer而使用Etcher呢?)

a.STM32MP1Starter - STM32MP1 OpenSTLinux Starter Package - STMicroelectronics的5.0.0版本的我试过了有问题,然后我又下载了最新版测试,一样的也是有问题。

b.5.0.0版本的我使用STM32CubeProgrammer下载到SD卡里面也是一样的,tf-a 和 optee串口有正常的输出,一到uboot就没有串口输出信息了,系统可以正常运行,心跳灯和LCD正常工作,触摸屏也可以正常操作。

c.使用balenaEtcher是因为我的板子不是官方开发板,没有完成tf-a的时候,没办法使用STM32CubeProgrammer下载。

3.您现在的问题是“StarterPackage烧录之后就有u-boot串口无输出的问题”还是“由于您修改了设备树重新编译后再下载导致u-boot串口无输出”?

我现在的问题是

a.使用 我2月生成的那个sdcard镜像文件烧录过的sd卡或者克隆这个sd卡,uboot, kernel就可以正常串口输出和调试。

b.其他的方式,包括重新生成sdcard镜像文件并烧录sd卡,使用STM32CubeProgrammer下载到sd卡,重新安装ubuntu系统和更换PC。都是uboot, kernel就没有串口输出。

c.我现在对比测试烧录的使用的都是同样的tf-a, optee, uboot, kernel镜像。

怎么才能让uboot, kernel就可以正常串口输出和调试?随便是使用重新生成sdcard镜像文件,使用STM32CubeProgrammer或者更改设备树文件。

遇到这个问题我是感觉非常不理解,我感觉我其实只使用了sdcard镜像文件对SD卡进行了分区,方便我使用dd命令对各分区的内容进行更新,我尝试过使用dd命令把STM32MP1 OpenSTLinux入门套件里面的bootfs,rootfs等镜像都更新到SD卡,结果还是一样。

Xar- 回答时间:3 天前

qingbiuci 发表于 2024-7-1 16:09</p>
<p>感谢您的回复。

[md]您好,首先需要告知您的是:如果您使用的板子不是stm32mp157a-dk1,那么您是无法直接使用Starter Package里面stm32mp157a-dk1相关的.tsv tf-a fip等把板子跑起来的,其中的逻辑是Starter Package中的内容是依据stm32mp157a-dk1的设备树编译得到的,仅适配于stm32mp157a-dk1。

其次,我想跟您说明,如果STM32CubeProgrammer报错不允许您继续下载(也就是您提到的tf-a过不去),这就说明您想要下载的东西不适配您所使用的平台,所以您的思路应该是检查您的下载内容以及硬件平台,而不是另辟**强行使用其他方式下载。

至于您想要知道,到底如何才能把您的板子跑起来,建议您优先联系小熊派提供与其开发板相匹配的技术支持。

qingbiuci 回答时间:3 天前

Xar- 发表于 2024-7-1 17:37
您好,首先需要告知您的是:如果您使用的板子不是stm32mp157a-dk1,那么您是无法直接使用Starter Pac ...

[md]您好!

1.使用STM32MP1 OpenSTLinux入门套件使用FlashLayout_sdcard_stm32mp157a-dk1-optee.tsv生成FlashLayout_sdcard_stm32mp157a-dk1-optee.raw烧录到sd卡之后,我使用dd命令用自己编译tf-a, optee, uboot, kernel镜像替换过对应分区的内容了;

2.重新编写FlashLayout_sdcard_stm32mp157a-ed1-bear-optee.tsv,把自己编译过的tf-a, optee, uboot, kernel镜像替换过对应分区的内容来生成FlashLayout_sdcard_stm32mp157a-dk1-optee.raw我也试过了;

3.使用自己修改的FlashLayout_sdcard_stm32mp157a-ed1-bear-optee.tsv和使用自己编译过的tf-a, optee, uboot, kernel镜像,STM32CubeProgrammer烧写到sd卡可以正常烧录;

4.以上3种方法结果一样,tf-a 和 optee串口有正常的输出,一到uboot就没有串口输出信息了,系统可以正常运行,心跳灯和LCD正常工作,触摸屏也可以正常操作。

qingbiuci 回答时间:前天 01:06

Xar- 发表于 2024-7-1 17:37
您好,首先需要告知您的是:如果您使用的板子不是stm32mp157a-dk1,那么您是无法直接使用Starter Pac ...

[md]1.使用STM32CubeProgrammer烧写到sd卡

STM32CubeProgrammer烧录.png

22:01:58 : STM32CubeProgrammer API v2.16.0 | Windows-64Bits 
22:05:46 : UR connection mode is defined with the HWrst reset mode
22:05:47 : USB speed   : High Speed (480MBit/s)
22:05:47 : Manuf. ID   : STMicroelectronics
22:05:47 : Product ID  : DFU in HS Mode @Device ID /0x500, @Revision ID /0x0000
22:05:47 : SN          : 004000283030510B34343437
22:05:47 : DFU protocol: 1.1
22:05:47 : Board       : --
22:05:47 : Device ID   : 0x0500
22:05:59 : Read TSV File: I:\002\stm32mp1\flashlayout_st-image-weston\optee\FlashLayout_sdcard_stm32mp157a-ed1-bear-optee.tsv
22:05:59 : Number of partitions: 13
22:06:24 : Start Embedded Flashing service
22:06:24 : Memory Programming ...
22:06:24 : Opening and parsing file: tf-a-stm32mp157a-ed1-bear-usb.stm32
22:06:24 :   File          : tf-a-stm32mp157a-ed1-bear-usb.stm32
22:06:24 :   Size          : 220.40 KB 
22:06:24 :   Partition ID  : 0x01 
22:06:24 : Download in Progress:
22:06:27 : File download complete
22:06:27 : Time elapsed during download operation: 00:00:02.491
22:06:27 : RUNNING Program ... 
22:06:27 :   PartID:      :0x01 
22:06:27 : Start operation done successfully at partition 0x01
22:06:27 : Memory Programming ...
22:06:27 : Opening and parsing file: fip-stm32mp157a-ed1-bear-optee.bin
22:06:28 :   File          : fip-stm32mp157a-ed1-bear-optee.bin
22:06:28 :   Size          : 1.28 MB 
22:06:28 :   Partition ID  : 0x03 
22:06:28 : Download in Progress:
22:06:29 : File download complete
22:06:29 : Time elapsed during download operation: 00:00:01.422
22:06:29 : RUNNING Program ... 
22:06:29 :   PartID:      :0x03 
22:06:30 : Reconnecting the device ...
22:06:32 : USB speed   : High Speed (480MBit/s)
22:06:32 : Manuf. ID   : STMicroelectronics
22:06:32 : Product ID  : USB download gadget@Device ID /0x500, @Revision ID /0x2001, @Name /STM32MP157AAC Rev.Z,
22:06:32 : SN          : 004000283030510B34343437
22:06:32 : DFU protocol: 1.1
22:06:32 : Board       : --
22:06:32 : Device ID   : 0x0500
22:06:32 : Device name : STM32MP157AAC Rev.Z
22:06:32 : Device type : 
22:06:32 : Device CPU  : 
22:06:32 : Start operation done successfully at partition 0x03
22:06:32 : Flashlayout Programming ...
22:06:32 : Running Flashlayout Partition ...
22:06:32 : Reconnecting the device ...
22:06:33 : USB speed   : High Speed (480MBit/s)
22:06:33 : Manuf. ID   : STMicroelectronics
22:06:33 : Product ID  : USB download gadget@Device ID /0x500, @Revision ID /0x2001, @Name /STM32MP157AAC Rev.Z,
22:06:33 : SN          : 004000283030510B34343437
22:06:33 : DFU protocol: 1.1
22:06:33 : Board       : --
22:06:33 : Device ID   : 0x0500
22:06:33 : Device name : STM32MP157AAC Rev.Z
22:06:33 : Device type : 
22:06:33 : Device CPU  : 
22:06:33 : Flashlayout partition started successfully
22:06:33 : Memory Programming ...
22:06:33 : Opening and parsing file: tf-a-stm32mp157a-ed1-bear-sdcard.stm32
22:06:33 :   File          : tf-a-stm32mp157a-ed1-bear-sdcard.stm32
22:06:33 :   Size          : 220.42 KB 
22:06:33 :   Partition ID  : 0x04 
22:06:33 : Download in Progress:
22:06:33 : File download complete
22:06:33 : Time elapsed during download operation: 00:00:00.129
22:06:33 : RUNNING Program ... 
22:06:33 :   PartID:      :0x04 
22:06:33 : Start operation done successfully at partition 0x04
22:06:33 : Memory Programming ...
22:06:33 : Opening and parsing file: tf-a-stm32mp157a-ed1-bear-sdcard.stm32
22:06:33 :   File          : tf-a-stm32mp157a-ed1-bear-sdcard.stm32
22:06:33 :   Size          : 220.42 KB 
22:06:33 :   Partition ID  : 0x05 
22:06:33 : Download in Progress:
22:06:33 : File download complete
22:06:33 : Time elapsed during download operation: 00:00:00.129
22:06:33 : RUNNING Program ... 
22:06:33 :   PartID:      :0x05 
22:06:33 : Start operation done successfully at partition 0x05
22:06:33 : Memory Programming ...
22:06:33 : Opening and parsing file: metadata.bin
22:06:33 :   File          : metadata.bin
22:06:33 :   Size          : 96.00 B 
22:06:33 :   Partition ID  : 0x06 
22:06:33 : Download in Progress:
22:06:33 : File download complete
22:06:33 : Time elapsed during download operation: 00:00:00.006
22:06:33 : RUNNING Program ... 
22:06:33 :   PartID:      :0x06 
22:06:33 : Start operation done successfully at partition 0x06
22:06:33 : Memory Programming ...
22:06:33 : Opening and parsing file: metadata.bin
22:06:33 :   File          : metadata.bin
22:06:33 :   Size          : 96.00 B 
22:06:33 :   Partition ID  : 0x07 
22:06:33 : Download in Progress:
22:06:33 : File download complete
22:06:33 : Time elapsed during download operation: 00:00:00.006
22:06:33 : RUNNING Program ... 
22:06:33 :   PartID:      :0x07 
22:06:33 : Start operation done successfully at partition 0x07
22:06:33 : Memory Programming ...
22:06:33 : Opening and parsing file: fip-stm32mp157a-ed1-bear-optee.bin
22:06:33 :   File          : fip-stm32mp157a-ed1-bear-optee.bin
22:06:33 :   Size          : 1.28 MB 
22:06:33 :   Partition ID  : 0x08 
22:06:33 : Download in Progress:
22:06:34 : File download complete
22:06:34 : Time elapsed during download operation: 00:00:00.773
22:06:34 : RUNNING Program ... 
22:06:34 :   PartID:      :0x08 
22:06:34 : Start operation done successfully at partition 0x08
22:06:34 : Memory Programming ...
22:06:34 : Opening and parsing file: st-image-bootfs-openstlinux-weston-stm32mp1.ext4
22:06:36 :   File          : st-image-bootfs-openstlinux-weston-stm32mp1.ext4
22:06:36 :   Size          : 64.00 MB 
22:06:36 :   Partition ID  : 0x10 
22:06:36 : Download in Progress:
22:07:17 : File download complete
22:07:17 : Time elapsed during download operation: 00:00:41.584
22:07:17 : RUNNING Program ... 
22:07:17 :   PartID:      :0x10 
22:07:17 : Start operation done successfully at partition 0x10
22:07:17 : Memory Programming ...
22:07:17 : Opening and parsing file: st-image-vendorfs-openstlinux-weston-stm32mp1.ext4
22:07:21 :   File          : st-image-vendorfs-openstlinux-weston-stm32mp1.ext4
22:07:21 :   Size          : 16.00 MB 
22:07:21 :   Partition ID  : 0x11 
22:07:21 : Download in Progress:
22:07:32 : File download complete
22:07:32 : Time elapsed during download operation: 00:00:10.373
22:07:32 : RUNNING Program ... 
22:07:32 :   PartID:      :0x11 
22:07:32 : Start operation done successfully at partition 0x11
22:07:32 : Memory Programming ...
22:07:32 : Opening and parsing file: st-image-weston-openstlinux-weston-stm32mp1.ext4
22:07:32 :   File          : st-image-weston-openstlinux-weston-stm32mp1.ext4
22:07:32 :   Size          : 586.38 MB 
22:07:32 :   Partition ID  : 0x12 
22:07:32 : Download in Progress:
22:14:18 : File download complete
22:14:18 : Time elapsed during download operation: 00:06:46.761
22:14:18 : RUNNING Program ... 
22:14:18 :   PartID:      :0x12 
22:14:18 : Start operation done successfully at partition 0x12
22:14:18 : Memory Programming ...
22:14:18 : Opening and parsing file: st-image-userfs-openstlinux-weston-stm32mp1.ext4
22:14:34 :   File          : st-image-userfs-openstlinux-weston-stm32mp1.ext4
22:14:34 :   Size          : 128.00 MB 
22:14:34 :   Partition ID  : 0x13 
22:14:34 : Download in Progress:
22:15:56 : File download complete
22:15:56 : Time elapsed during download operation: 00:01:22.173
22:15:56 : RUNNING Program ... 
22:15:56 :   PartID:      :0x13 
22:15:56 : Start operation done successfully at partition 0x13
22:15:56 : Flashing service completed successfully
FlashLayout_sdcard_stm32mp157a-ed1-bear-optee.tsv 文件内容
#Opt    Id  Name    Type    IP  Offset  Binary
-   0x01    fsbl-boot   Binary  none    0x0 arm-trusted-firmware/tf-a-stm32mp157a-ed1-bear-usb.stm32
-   0x03    fip-boot    FIP none    0x0 fip/fip-stm32mp157a-ed1-bear-optee.bin
P   0x04    fsbl1   Binary  mmc0    0x00004400  arm-trusted-firmware/tf-a-stm32mp157a-ed1-bear-sdcard.stm32
P   0x05    fsbl2   Binary  mmc0    0x00044400  arm-trusted-firmware/tf-a-stm32mp157a-ed1-bear-sdcard.stm32
P   0x06    metadata1   FWU_MDATA   mmc0    0x00084400  arm-trusted-firmware/metadata.bin
P   0x07    metadata2   FWU_MDATA   mmc0    0x000C4400  arm-trusted-firmware/metadata.bin
P   0x08    fip-a   FIP mmc0    0x00104400  fip/fip-stm32mp157a-ed1-bear-optee.bin
PED 0x09    fip-b   FIP mmc0    0x00504400  none
PED 0x0A    u-boot-env  ENV mmc0    0x00904400  none
P   0x10    bootfs  System  mmc0    0x00984400  st-image-bootfs-openstlinux-weston-stm32mp1.ext4
P   0x11    vendorfs    FileSystem  mmc0    0x04984400  st-image-vendorfs-openstlinux-weston-stm32mp1.ext4
P   0x12    rootfs  FileSystem  mmc0    0x05984400  st-image-weston-openstlinux-weston-stm32mp1.ext4
P   0x13    userfs  FileSystem  mmc0    0x105984400 st-image-userfs-openstlinux-weston-stm32mp1.ext4

然后参考README.HOW_TO.txt更新kernel和设备树文件

7.3 Update via SDCARD on your Linux PC
--------------------------------------
* kernel + devicetree
    $ cd <path to install_artifact dir>/install_artifact
    Verify sdcard are mounted on your Linux PC: /media/$USER/bootfs
    $ cp -r boot/* /media/$USER/bootfs/
    Depending of your Linux configuration, you may call the command under sudo
        $ sudo cp -r boot/* /media/$USER/bootfs/
    Don't forget to unmount properly sdcard

运行后照片

STM32CubeProgrammer烧录截图.jpg

tf-a 和 optee串口有正常的输出,一到uboot就没有串口输出信息了,系统可以正常运行,心跳灯和LCD正常工作,触摸屏也可以正常操作。

qingbiuci 回答时间:前天 01:39

Xar- 发表于 2024-7-1 17:37
您好,首先需要告知您的是:如果您使用的板子不是stm32mp157a-dk1,那么您是无法直接使用Starter Pac ...

[md]2.使用2月生成sdcard镜像文件并烧录过的sd卡进行克隆磁盘然后再将编译的tf-a, optee, uboot, kernel镜像更新到sd卡对应的分区。

克隆磁盘.png

然后更新tf-a, optee, uboot, kernel镜像更新到sd卡对应的分区。

克隆磁盘更新镜像.png

运行结果如下:

IMG_20240702_013432.jpg

uboot有正常的串口输出信息

IMG_20240702_013453.jpg

uboot, kernel都可以正常串口输出和调试。系统可以正常运行,心跳灯和LCD正常工作,触摸屏也可以正常操作。

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版