littlebot
Published on 2025-04-13 / 1 Visits
0

【源码】基于PDI接口和树莓派的PSU编程棒

项目简介

本项目是基于PDI接口和树莓派Zero开发的编程棒,主要用于对PSU(Programmable System Unit)板进行编程。借助树莓派Zero与PSU板上的微控制器通信,支持Hex文件的上传和编程操作,适用于PCB板堆栈中的PSU板编程。

项目的主要特性和功能

  1. PDI接口通信:通过PDI接口和PSU板上的微控制器(如ATxMEGA 16e5)通信,支持编程和擦除操作。
  2. Web界面操作:能通过Web界面上传Hex文件并选择要编程的文件,支持远程操作。
  3. RGB LED状态指示:编程时RGB LED闪烁红绿色,编程成功后LED保持绿色亮灯5秒。
  4. 按钮触发编程:可通过物理按钮触发编程操作,将当前激活的Hex文件写入微控制器。
  5. 自动启动服务:利用systemd管理服务,保证upload.pybutton.py脚本在系统启动时自动运行。

安装使用步骤

硬件准备

  • 树莓派Zero
  • PSU板
  • 连接线
  • 其他必要的硬件组件

软件安装

  • 在树莓派上安装必要的依赖库,如libcm2835库。
  • 复制或下载本项目的源代码到树莓派上。

配置系统服务

  • upload.servicebutton.service文件放入/etc/systemd/system/目录。
  • 使用以下命令启用并启动服务: bash sudo systemctl enable upload.service sudo systemctl enable button.service sudo systemctl start upload.service sudo systemctl start button.service

使用编程棒

  • 将编程棒插入PSU板的编程引脚,确保NORBIT标志朝外。
  • 打开编程棒的电源开关。
  • 在连接到Norbit Extra网络的设备上访问psu-programmer.local,上传Hex文件或选择已上传的文件作为激活文件。
  • 按下编程棒上的按钮,开始编程操作。编程过程中,RGB LED会闪烁,编程成功后LED保持绿色亮灯5秒。

命令行操作

若需手动操作,可进入rpipdi文件夹,使用以下命令进行编程: bash sudo ./rpipdi -c 26 -d 21 <hex文件路径>

注意事项

  • 编程棒必须插入正确的方向(NORBIT标志朝外)才能正常工作。
  • 使用完毕后,请关闭电源开关以节省电池电量。
  • 项目中的代码可能需要一定的嵌入式系统开发经验才能理解和使用,特别是rpipdi文件夹中的底层C语言代码。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】