帮酷LOGO
  • 显示原文与译文双语对照的内容
Give your DPS5005 the upgrade it deserves

  • 源代码名称:opendps
  • 源代码网址:http://www.github.com/kanflo/opendps
  • opendps源代码文档
  • opendps源代码下载
  • Git URL:
    git://www.github.com/kanflo/opendps.git
  • Git Clone代码到本地:
    git clone http://www.github.com/kanflo/opendps
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/kanflo/opendps
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
  • OpenDPS 给你的升级所需的升级

    OpenDPS是 DPS5005 ( 还有 DPS3003 DPS3005 DPS5015还有其他可能)的固件替换,具有一个 LESS 混乱的用户界面,通过 wifi ( ESP8266 ) 可以以远程控制。

    A DPS5005 with wifi

    你可能会发现以下三个附带的博客帖子:

    升级你的DPS5005

    如果你希望升级 DPS5005,可以直接跳到第三部分。 哦当然你可以用OpenDPS来替代可编程电源。 为什么不把它作为你的DIY sous视频机的接口?

    克隆&构建

    首先构建OpenDPS固件:

    git clone --recursive https://github.com/kanflo/opendps.git
    cd opendps
    make -C libopencm3
    make -C opendps flash
    make -C dpsboot flash

    *Please 注意,当前必须在启动固件时,当覆盖引导装载程序时,你必须启动引导装载程序。 不知道为什么:-/*

    检查博客,了解有关如何解锁和使用你的DPS5005的指令。

    第二,构建和 Flash的ESP8266固件。 首先你需要创建文件 esp8266-proxy/esp-open-rtos/include/private_ssid_config.h 使用以下内容:

    #define WIFI_SSID"My SSID"
    #define WIFI_PASS"Secret password"

    下一页:

    make -C esp8266-proxy flash

    用法

    升级并连接到ESP8266后,在终端键入以下内容以查找它的IP地址:

    % dpsctl.py --scan
    172.16.3.203
    1 OpenDPS device found

    启用 3.3个限制为 500 mA:

    % dpsctl -d 172.16.3.203 --voltage 3300
    % dpsctl -d 172.16.3.203 --current 500
    % dpsctl -d 172.16.3.203 --power on

    查询设备的状态:

    % dpsctl.py -d 172.16.3.203 --status
    V_in : 7.71 V
    V_set : 3.30 V
    V_out : 3.32 V (on)
    I_lim : 0.500 A
    I_out : 0.040 A

    插件升级

    由于更新的DPS:es 有 1.25毫米的JTAG引脚( jst gh ) 和有限的空间,在设备背面运行JTAG信号,永久焊接JTAG有点麻烦。 不需要activly开发OpenDPS的人也不需要 JTAG 。 为了方便升级,OpenDPS附带了一个引导引导程序,可以通过UART升级:

    % make -C opendps bin
    % dpsctl.py -d/dev/ttyUSB0 -U opendps/opendps.bin

    如果你不小心升级到一个真正的b0rken版本,则可以以强制启动升级模式来启用电源。

    在整个升级操作期间,显示将是 black 。 如果它保持 black,引导装载程序可能拒绝或者无法启动OpenDPS应用程序,或者应用程序崩溃。 如果再次尝试升级操作并开始升级,引导装载程序正在运行但拒绝引导你的固件。 - 但为什么- 我们来看看。 如果你将 -v 选项附加到 dpsctl.py,你将得到一个UART流量转储。

    Communicating with/dev/ttyUSB0
    TX 9 bytes 7e 09 04 00 27 86 0c b2 7f
    RX 9 bytes 7e 89 00 04 00 03 66 0f 7f

    接收数据( 0个x03示例) 中最后的第四个字节将告诉我们加载程序拒绝引导固件的原因。 由于不同原因,请参阅 protocol.h

    源代码组织

    该项目由四个部分组成:

    • opendps/ OpenDPS固件。
    • dpsboot/ OpenDPS引导程序。
    • esp8266-proxy/ 用于wifi连接 OpenDPS:es的ESP8266固件。
    • dpsctl/ 用于通过wifi或者串行端口控制你的OpenDPS的pyton脚本。

    其他 DPS:es?

    理论上,OpenDPS应该为DPSx0xx系列中的所有其他模型工作,比如 DPS3005.DPS3012和 DPS5015. 我没有测试,但是如果硬件有这么多差异的话,会非常惊讶。 在生成opendps时,可以定义最大的可以设置输出电流。

    许可许可许可。 尽情玩耍吧!




    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语