一、STM32CubeMX
1. java环境
直接使用brew安装openjdk 8:
brew install openjdk@8
配置jdk环境:
sudo ln -sfn /usr/local/opt/openjdk@8/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-8.jdk
/usr/libexec/java_home
配置完成后检查java环境:
java -version
2. 安装stm32cubemx
官方下载:https://www.st.com/en/development-tools/stm32cubemx.html
下载之后解压,双击进行安装,若出现“mac无法验证开发者”,解决方案(注意文件路径):
sudo xattr -cr ~/develop/mcu/SetupSTM32CubeMX-6.2.1.app
执行之后再次运行,可以正常安装:
一路next,安装完成,在菜单栏即可看到stm32cubemx图标,点击运行,然后添加到扩展坞。
此时就可以将之前解压出的zip安装包删除啦。
生成一个 led 的工程,参考教程:STM32CubeMX | 03-使用GPIO点亮一个LED。
最后选择生成makefile工程即可:
二、VSCode
直接在官网下载安装。
VSCode是以文件夹作为工作区的,首先将VSCode的命令注册环境变量中,然后在stm32cubemx生成的工程目录中使用命令即可在vscode中打开:
code .
三、安装编译工具链
1. 编译工具链
编译工具使用 arm-none-eabi-gcc 工具链。
在官方下载:https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads
下载之后解压,将解压后的文件夹挪到一个自己喜欢的位置,重命名为gcc-arm-none-eabi。
其中的bin目录下存放的是各种编译工具,将其添加到用户环境变量中:
vim ~/.zshrc
在其最后添加环境变量:
export PATH=/Users/mculover666/develop/toolchains/gcc-arm-none-eabi/bin:$PATH
关掉所有终端,重新打开,输入arm,双击tab,根据是否可以自动补全可判断是否添加成功:
2. 构建工具
构建工具使用make,我默认的环境中已经有make工具,无需再安装:
如果没有,可以安装gcc,make工具包含在gcc工具链中。
3. 编译测试
有了arm-none-eabi-gcc和make工具链后,就可以尝试编译刚刚使用stm32cubemx生成的makefile工程了。
进入cubemx生成工程的根目录:
cd /Users/mculover666/develop/mcu/stm32l431rc-bearpi/project/ledblink
直接编译:
make
哦豁,mac又无法验证app,只好再对整个工具链目录给一下权限:
cd /Users/mculover666/develop/toolchains
sudo xattr -cr ./gcc-arm-none-eabi/*
好啦,再回来编译一下,编译成功:
四、下载工具
1. 安装openocd
下载工具使用openocd。
直接使用brew安装:
brew install openocd
安装完毕后检查openocd版本:
2. openocd使用方法
openoc安装位置在 /usr/local/share/openocd 下,进入openocd安装目录下的script文件夹查看:
其中interface文件夹下存放的是openocd支持的下载器:
target下存放着目标芯片的配置文件:
连接目标芯片:
openocd -f /usr/local/share/openocd/scripts/interface/stlink-v2-1.cfg -f /usr/local/share/openocd/scripts/target/stm32l4x.cfg
安装telnet:
brew install telnet
使用telnet连接:
telnet localhost 4444
复位:
reset
停机
halt
下载:
flash write_image erase /Users/mculover666/develop/mcu/stm32l431rc-bearpi/project/ledblink/build/ledblink.bin 0x08000000
3. 一行命令搞定下载
以上这些繁琐的过程,可以永恒一行命令搞定,将其添加到stm32cubemx生成的makefile中,非常方便:
download:
openocd -f /usr/local/share/openocd/scripts/interface/stlink-v2-1.cfg -f /usr/local/share/openocd/scripts/target/stm32l4x.cfg -c init -c reset -c halt -c "flash write_image erase $(shell pwd)/$(BUILD_DIR)/$(TARGET).bin 0x08000000" -c reset -c shutdown
接着使用命令完成下载:
make download
五、串口终端
1. 安装minicom
串口终端使用minicom,通过brew安装:
登录后复制
brew install minicom
2. 配置minicom
首先使用命令查看挂载到mac上的串口设备:
ls /dev/tty.usbmodem*
接着对minicom进行配置:
sudo minicom -s
选择串口设置:
配置串口设备名称和基本参数(按配置项前的字母,按下哪个设置哪个):
配置完成后点击回车,选择保存为默认,退出。
3. 使用minicom
进入minicom的命令为:
sudo minicom1.
minicom的功能很强大,如有兴趣可以自行探索~
上一篇:STM32CubeMX | 31-使用硬件FMC读写SDRAM(W9825G6KH)
下一篇:STM32CubeMX | 42 - 使用DMA2D加速显存数据传输
推荐阅读最新更新时间:2024-11-17 01:36
设计资源 培训 开发板 精华推荐
- 使用 ROHM Semiconductor 的 BA15BC0WT 的参考设计
- EPM7128STC100 Test
- #第七届立创电赛#USB电流计
- 基于涂鸦智能的温湿度检测计
- LT1377IS8 具有直接反馈的正负转换器的典型应用
- Hobby-航模接收机-EXPRESSLRS 915M 接收机 ESP01 绿巨人
- 【训练营】采用18650供电的ESP32物联网时钟
- 用于 CRT 监视器的 5V、180V 交流转直流多输出电源
- ADR395A 5 Vout 微功率、低噪声精密电压基准的典型应用
- 来自 24V 壁式适配器和铅酸电池的 LTC3126MPFE 3.3V/2.5A 电源的典型应用电路