Ronan Blog

罗华东的博客 | 向前每多走一步,热爱和勇气就会多一分。

stm32程序烧录方式

2024-10-22 1 min read Docs Ronan

以下以stm32f103c8t6芯片为例

使用stlink

st-flash write /path/project/build.bin 0x08000000

注意:

  • 使用 st-flash 命令需要提前安装 stlink ,macOS 通过brew install stlink即可安装。
  • 烧写 .bin 文件需要指定 flash 起始地址,也就是 0x08000000(具体芯片具体地址根据手册修改)

使用openocd

openocd -f interface/stlink-v2.cfg -f target/stm32f1x.cfg -c "program /path/project/build.bin verify reset exit 0x08000000"

注意:

  • 根据自己的stlink 实际版本更改interface/stlink-v2.cfg为适配的 stlink 配置文件
  • 根据自己的stm32单片机实际型号更改target/stm32f1x.cfg为适配的配置文件

使用STM32_Programmer_CLI(串口烧录)

使用该方法之前需要安装STM32_Programmer_CLI,该程序可以到 ST(意法半导体)官网自行下载,需要将其添加到环境变量。之后将串口线正确接到板子上的引脚,通过以下命令将程序文件烧录到单片机中。

STM32_Programmer_CLI -c port=/dev/tty.usbmodem11403 -w /path/project/build.bin 0x08000000

同样的,烧录.bin 文件需要指定 flash 起始地址。

注意:

  • port=后面是串口号,mac 以及 linux 可以通过ls /dev/tty.*命令来查看串口号,Windows 一般是COMx,可以通过设备管理器查看。

创建以及管理 SSH 密钥对

2024-09-12 1 min read Docs Ronan

1.创建密钥对(此方法适用于从未创建过密钥对的本地主机)

在终端输入以下命令:

ssh-keygen

之后一路回车,不出意外的话,看到以下画面,密钥(包含私钥和公钥,公钥以 .pub 结尾)就创建成功了 ssh-kegen

对于 linux 和类 linux 系统,该密钥存放于 ~/.ssh/ ,可以通过 ls ~/.ssh 查看。

2.创建多个密钥对

有时候可能会需要多个密钥对,但是又不想影响到之前已创建的密钥对

创建 ed25519 类型的密钥对(最推荐)

ssh-keygen -t ed25519 -C "这里写注释" -f ~/.ssh/id_ed25519_new_name

ssh-keygen:这是一个用于生成、管理和转换 SSH 密钥的命令行工具。 -t ed25519:指定要生成的密钥类型为 ed25519。这种类型的密钥被认为更安全,并且通常生成更快。 -C "这里写注释":这是一个注释(通常使用邮箱,但是我不喜欢),用于标识这个密钥的用途。 -f ~/.ssh/id_ed25519_new_name:指定生成的密钥文件的存储路径和名称。在这里,密钥会被保存为 ~/.ssh/id_ed25519_new_name,私钥为 id_ed25519_new_name,而公钥则为 id_ed25519_new_name.pub。

或者可以创建 rsa 类型的密钥对

ssh-keygen -t rsa -b 4096 -C "用于163账号的 github" -f ~/.ssh/id_rsa_new

2.1创建带有密码的密钥对

通过上面的命令创建密钥对时,一路回车不要过快,系统会提示输入一个密码。可以输入一个强密码,确保它是安全的。再次输入相同的密码以确认:

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

注意:在输入密码时,终端不会显示任何字符(包括星号),这是正常现象。

如果你忘记了 SSH 密钥的密码,将无法使用该密钥进行身份验证,因为 SSH 并没有提供恢复密码的功能。最简单的解决方案是生成一个新的 SSH 密钥对。

Continue reading
Older posts Newer posts