项目简介
本项目是基于PDI接口和树莓派Zero开发的编程棒,主要用于对PSU(Programmable System Unit)板进行编程。借助树莓派Zero与PSU板上的微控制器通信,支持Hex文件的上传和编程操作,适用于PCB板堆栈中的PSU板编程。
项目的主要特性和功能
- PDI接口通信:通过PDI接口和PSU板上的微控制器(如ATxMEGA 16e5)通信,支持编程和擦除操作。
- Web界面操作:能通过Web界面上传Hex文件并选择要编程的文件,支持远程操作。
- RGB LED状态指示:编程时RGB LED闪烁红绿色,编程成功后LED保持绿色亮灯5秒。
- 按钮触发编程:可通过物理按钮触发编程操作,将当前激活的Hex文件写入微控制器。
- 自动启动服务:利用
systemd
管理服务,保证upload.py
和button.py
脚本在系统启动时自动运行。
安装使用步骤
硬件准备
- 树莓派Zero
- PSU板
- 连接线
- 其他必要的硬件组件
软件安装
- 在树莓派上安装必要的依赖库,如
libcm2835
库。 - 复制或下载本项目的源代码到树莓派上。
配置系统服务
- 将
upload.service
和button.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】