- 打卡等级:以坛为家II
- 打卡总天数:453
- 最近打卡:2026-07-05 03:28:56
已绑定手机
注册会员
- 积分
- 137
|
STC32G12K128试验箱收到了,下面是AI为我整理一份完整的 Ubuntu 下 STC 单片机开发环境配置命令集。
方便重置环境时直接使用。
Ubuntu STC 单片机开发环境配置命令集
一、卸载旧环境(重置用)
# 卸载 SDCC
sudo apt remove --purge sdcc -y
# 卸载 Wine 及相关组件
sudo apt remove --purge wine wine32 wine64 winetricks -ysudo apt autoremove -y
# 删除 Wine 配置目录
rm -rf ~/.wine
# 卸载 stcgalpip3
uninstall stcgal -y
# 删除 udev 规则
sudo rm -f /etc/udev/rules.d/99-stc-isp.rules
sudo udevadm control --reload-rules
# 删除 hidraw 符号链接
rm -f ~/.wine/dosdevices/hidraw* 二、安装基础编译工具
# 更新软件源
sudo apt update
# 安装 SDCC(单片机编译器)
sudo apt install sdcc -y
# 安装 GCC、Make、Git(一般系统已自带,可跳过)
sudo apt install build-essential make git -y
# 验证安装
sdcc --versiongcc --versionmake --versiongit --versionpython3 --version 三、安装 Wine 及运行 AiCube-ISP
3.1安装 Wine
# 安装 Wine(32位和64位支持)
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install wine wine32 wine64 -y
# 安装 winetricks(用于安装 Windows 运行库)
sudo apt install winetricks -y
# 验证安装
wine --version
3.2 配置 Wine 容器
# 初始化 Wine 容器(会弹出图形窗口,选择 Windows 10)winecfg在弹出的窗口中,将 Windows 版本 设置为 Windows 10,点击确定。
3.3 安装 VC++ 运行库
# 安装 VC++ 6.0 运行库(AiCube-ISP 必需)
winetricks vcrun6
# 可选:安装更多 VC++ 版本(如需兼容其他 Windows 软件)
winetricks vcrun2005 vcrun2008 vcrun2010 vcrun2012 vcrun2013 vcrun2022
3.4 验证 VC++ 安装
# 检查关键 DLL 文件是否存在
ls -la ~/.wine/drive_c/windows/system32/msvcrt.dllls -la ~/.wine/drive_c/windows/system32/msvcirt.dllls -la ~/.wine/drive_c/windows/system32/msvcp*.dllls -la ~/.wine/drive_c/windows/system32/msvcr*.dll 四、配置 USB 设备权限(STC 下载器)
4.1 查找 STC 设备对应的 hidraw
# 查看所有 hidraw 设备
for d in /sys/class/hidraw/hidraw*; do dev=$(basename $d) vid_pid=$(cat $d/device/uevent 2>/dev/null | grep HID_ID | cut -d= -f2) echo "$dev -> $vid_pid"done
# 确认 USB 设备
lsusb | grep -i stc
输出示例:
hidraw2 -> 0003:000034BF:00001001Bus 001 Device 087: ID 34bf:1001 STC USB-ISP
4.2 创建 hidraw 符号链接(供 Wine 访问)
# 请将 hidrawX 替换为实际编号(如 hidraw2)
rm -f ~/.wine/dosdevices/hidraw*
sudo chmod 666 /dev/hidrawXln -sf /dev/hidrawX ~/.wine/dosdevices/hidrawX
4.3 创建 udev 规则(永久生效)
# 创建 udev 规则文件
echo 'SUBSYSTEM=="hidraw", ATTRS{idVendor}=="34bf", ATTRS{idProduct}=="1001", MODE="0666"' | sudo tee /etc/udev/rules.d/99-stc-isp.rules
# 重新加载 udev 规则
sudo udevadm control --reload-rules
sudo udevadm trigger 五、运行 AiCube-ISP
# 关闭所有 Wine 进程(确保干净启动)
wineserver -k
# 进入程序所在目录
cd ~/Downloads
#运行 AiCube-ISP
wine AiCube-ISP-v6.96Z.exe 六、安装 stcgal(Linux 原生烧录工具,备选方案)
如果 Wine 方式不顺畅,可以使用原生 Linux 工具:
# 安装 stcgal(Python 版)
pip3 install stcgal
# 验证安装
stcgal --version
# 烧录示例(以 STC8 系列为例)
# stcgal -P stc8 -p /dev/ttyUSB0 yourfile.hex其他 Linux 原生烧录工具(论坛推荐):
- stc8prog:github.com/IOsetting/stc8prog(C语言,轻量)
- stc-isp:github.com/ahappyforest/stc-isp(C语言)
七、编译与烧录完整流程(快速参考)
# 1. 编译 main.c 为 hex 文件
sdcc main.cpackihx main.ihx > main.hex
# 2. 方式 A:用 AiCube-ISP(Wine)烧录
wine AiCube-ISP-v6.96Z.exe
# 在图形界面中:选择型号 → 打开 main.hex → 检测MCU → 下载/编程
# 3. 方式 B:用 stcgal(命令行)烧录
stcgal -P stc8 -p /dev/ttyUSB0 main.hex 八、常用检查命令速查
# 检查 SDCC 版本
sdcc --version
# 检查 Wine 版本
wine --version
# 检查已安装的 VC++ 运行库
ls ~/.wine/drive_c/windows/system32/msvcp*.dllls ~/.wine/drive_c/windows/system32/msvcr*.dll
# 检查 STC USB 设备
lsusb | grep -i stc
# 检查 hidraw 映射
ls -la ~/.wine/dosdevices/hidraw*
# 检查 udev 规则
cat /etc/udev/rules.d/99-stc-isp.rules
# 检查串口设备
ls -la /dev/ttyUSB*
# 检查 stcgal 安装
pip3 list | grep stcgal
最后运行正常的贴图如下

唯一的遗憾是界面主菜单是方块不显示汉字,转回英文咱又不太会。
|
-
汉字还是方块没解决
|