基于AT32F421的开源电调项目测试
- 📍开源固件地址:
https://github.com/lax-fly/lax-esc
- 🧨开源硬件地址:
https://oshwhub.com/lax-fly/lax-esc-dev
- 📺演示视频:
https://www.bilibili.com/video/BV1di421d7yH/?vd_source=43d9ea2f55b405b989b877e469b9fc2e
- t串口调试测试演示:
https://www.bilibili.com/video/BV1Nn4y197FX/?share_source=copy_web&vd_source=8065ce3326881a0fa7e129c188cdf1da
- 📑开源作者所写的《无感无刷电机驱动原理》文章地址 :
https://blog.csdn.net/qq_26962739/article/details/132207056
- 源代码是基于
Arm GNU Toolchain
编译的,开发环境基于VSCode。
🛠开发环境搭建
-
- 下载并安装
Arm GNU Toolchain
工具链,下载地址:https://developer.arm.com/downloads/-/gnu-rm
,Windows版本分解压版本和安装版本:
- 下载并安装
-
- 添加系统环境变量(针对解压版本):在电脑
高级系统设置
选项中,找到环境变量
,找到系统变量
,Path
:
- 添加系统环境变量(针对解压版本):在电脑
-
- 下载原工程,使用VSCode打开。
- 如果打开后输出端报:
无法使用 compilerPath 解析配置:“D:\vscode\……\arm-none-eabi-g++..exe”
,需要根据自己所安装的Arm GNU Toolchain
工具链位置进行修改即可,如果工具链已经添加到电脑的系统变量中,这个错误提示信息,并不影响接下来的编译。
-
- 编译:编译指令
make -j # if gcc is not in your environment, use GCC_PATH=xxxxxx to specify it
make download
# or
make BOARD=at32f421_v1_1 -j # the target board can be listed by 'make list', the board name should be the same as the suffix of file in the 'board' directory with prefix name 'board_'
- 🌿带debug串口调试功能编译指令:
make -j DEBUG=1 或者
make -j12 DEBUG=1
- 🌿编译生成的文件在
build
文件夹内:
-
- 烧录,如果串口或USB DFU模式烧录就使用
Artery_ISP_Programmer
软件;如果使用SWD接口烧录,就使用ArteryICPProgrammer
软件,AT-LINK或J-LINK进行烧录。
- 烧录,如果串口或USB DFU模式烧录就使用
📘串口调试说明
-
- 串口USB转串口工具,连接MCU串口1(PB6、PB7).。
-
- 通过上位机软件:串口调试助手,连接到电脑端,并打开对应串口。(波特率:256000)
- 通过上位机软件:串口调试助手,连接到电脑端,并打开对应串口。(波特率:256000)
-
- 如果连接了无刷电机,上电时,可以听到三声
嘀-嘀-嘀
。
- 如果连接了无刷电机,上电时,可以听到三声
-
- 握手,建立连接:在串口调试助手设置为:
十六进制模式
下,发送超过48个0xff
,如果握手成功,可以听到一声嘀
电机响声,接着,串口开始不间断打印相关信息:
- 握手,建立连接:在串口调试助手设置为:
-
- 调试功能解锁,需要串口调试助手勾选“回车换行”,发送字符串
arm
- 调试功能解锁,需要串口调试助手勾选“回车换行”,发送字符串
-
- 设定
throttle
值,可以让电机转起来,范围:-2000~2000
,不同的值影响电机转速。
- 设定
⛳其他说明
- 🔖个人测试并不是采用原作者的电路,开发板和驱动板是分离的。调试时,解锁需要PB7和PB4短接起来,否则无法解锁以及后面的串口调试工作。
- 电机参数和电流电压采集参数设置:如果和原作者的电路参数不同可以自己调整。