我需要一些建议,我有一堆用于家庭自动化的小电路板,我不断地做出改变,不得不重新刷新到电路板上。我将ICSP标头添加到我所有的板上,这样很容易刷新它们。
这是我的问题,我是一个巨大的小工具怪胎,想要建立一个按钮程序员,我可以加载一个十六进制文件,去我的不同的设备和闪存。我只需要在正确的方向上推动代码,比如一些例子或其他东西。我知道有pickit3和第三方工具可以做到这一点,但这并不能帮助我学习哈哈。
再次感谢
发布于 2013-03-20 04:42:00
你试过bootloader吗?Microchip有一堆引导程序,可以与TCP/IP,USB,UART一起工作。如果你采用TCP/IP的方式,你只需按下键盘上的一个按钮,它就可以在飞行中更新。
发布于 2013-08-15 06:15:52
在我看来,最好的方法是Pickit3,但如果你想学习.....下面是我对硬件接口的建议:
1)通过串口(RS232)编写icsp程序的在线设计有很多,找一个你喜欢的,下一步将进行修改。这里有一个example。
2)根据你想加载的十六进制文件有多大,在市场上找一些有足够的EEPROM和两个UART的PIC ( Microchip有便宜的PIC,1024或更多,有两个UART,如PIC18F25K80)。将uart1连接到计算机的串行端口,并将UART2连接到1)中的电路。
3)在电路中添加电池电源(例如,使用四个AA电源以获得超过5V的电压,如果您的Mcus允许以较低的电压进行编程,则可以调整它,您可能需要添加一个电压调节器LM7805或类似的电源)
4)将swicht添加到PIC的空闲i/o引脚之一,以产生INT_X中断,以激活icsp编程,读取EEPROM并通过UART2发送。(PIC必须编程)
5)你需要编程或寻找一个线路从PC发送文件到PIC_EEPROM (INT_RDA)。(必须定义PC rutine和PIC rutine )
可能是如果你拷贝二进制数据到EEPROM从PC (监听MPLAB IPE Microchip应用程序或类似),然后直接加载这些数据在ICSP电路中,以相同的方式它可以工作,但我怀疑这是非常不可能的,另一方面,您必须加载十六进制文件到EEPROM和实施ICSP“协议”根据制造商规格到PIC-EEPROM (这将可能是一个巨大的努力),例如微芯片PIC24的ICSP实施的指令在第3.0节datasheet。
https://stackoverflow.com/questions/15388503
复制相似问题