我需要一些建议,我有一堆用于家庭自动化的小板,我不断地做出改变,不得不重新刷到板上。我在我所有的板上都添加了 ICSP 头,因此很容易刷新它们。
这是我的问题,我是一个巨大的小工具怪胎,想要构建一个按钮编程器,我可以加载一个 hex 文件并转到我的不同设备并刷新它们。就代码而言,我只需要朝着正确的方向轻推,比如说一些例子或其他东西。我知道有 pickit3 和 3rd 方工具可以解决这个问题,但这并不能帮助我学习大声笑。
再次感谢
在我看来,最好的方法是 Pickit3,但如果你想学习......请参考我对硬件接口的建议:
1)网上有很多通过串口(RS232)烧写icsp的设计,找一个你喜欢的,下一步修改。举个例子。
2)取决于您要加载的 HEX 文件有多大,在市场上寻找一些具有足够大的 EEPROM 和两个 UART 的 PIC(Microchip 有 1024 或更多的廉价 PIC,带有两个 UART,如 PIC18F25K80)。将 uart1 连接到计算机的串行端口,将 UART2 连接到 1) 的电路。
3)在电路中添加一个电池电源(例如,使用四节 AA 电池获得超过 5V,如果您的 Mcus 允许使用较低电压进行编程,则对其进行调整,可能需要添加稳压器 LM7805 或类似产品)
4) 将开关添加到 PIC 的空闲 i/o 引脚之一以生成 INT_X 中断,以激活 icsp 编程读取 EEPROM 并通过 UART2 发送。(PIC Rutine 必须被编程)
5) 你需要编程或寻找一个规则来从 PC 发送文件到 PIC_EEPROM (INT_RDA)。(必须定义 PC rutine 和 PIC rutine)
可能是如果您将二进制数据从 PC 复制到 EEPROM(听 MPLAB IPE Microchip 应用程序或类似应用程序),然后以相同的方式将这些数据直接加载到 ICSP 电路中,但我怀疑这不太可能,另一方面您必须将 HEX 文件加载到 EEPROM 中,并根据制造商的规范将 ICSP“协议”实施到 PIC-EEPROM 中(这可能是一项巨大的工作),例如对于 Microchip PIC24,ICSP 实施的说明在第 3.0 节数据表中。
您是否尝试过引导加载程序?Microchip 有一堆与 TCP/IP、USB、UART 配合使用的引导加载程序……如果您采用 TCP/IP 方式,您可以按下键盘上的一个按钮,它可以即时更新。