在电路编程(In-Circuit Pro-gramming,ICP)<=>在线编程
使用者不需要将IC从机器中取下,放在特定的烧录器(又称编程器、写入器)进行烧录的动作,它可直接透过特定的传输接口,例如UART或I
在线编程目前有两种实现方法:在系统编程(ISP)和在应用编程(IAP)。ISP一般是通过单片机专用的串行编程接口对单片机内部的Flash存储器进行编程,而IAP技术是从结构上将Flash存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将控制从一个存储体转向另一个。ISP的实现一般需要很少的外部电路辅助实现,而IAP的实现更加灵活,通常可利用单片机的串行口接到计算机的RS232口,通过专门设计的固件程序来编程内部存储器。
在系统编程(In-System Programming,ISP)
指电路板上的空白器件可以编程写入最终用户代码, 而不需要从电路板上取下器件,已经编程的器件也可以用ISP方式擦除或再编程。ISP技术是未来发展方向。
ISP的工作原理
ISP的实现相对要简单一些,一般通用做法是内部的存储器可以由上位机的软件通过串口来进行改写。对于单片机来讲可以通过SPI或其它的串行接口接收上位机传来的数据并写入存储器中。所以即使我们将芯片焊接在电路板上,只要留出和上位机接口的这个串口,就可以实现芯片内部存储器的改写,而无须再取下芯片。
ISP的优点
ISP技术的优势是不需要编程器就可以进行单片机的实验和开发,单片机芯片可以直接焊接到电路板上,调试结束即成成品,免去了调试时由于频繁地插入取出芯片对芯片和电路板带来的不便。程序升级需要到现场解决,不过不必拆机器了
在应用中编程(In-Application Program-ming,IAP)
IAP的工作原理
在应用编程,由芯片本身(或通过外围的芯片)可以通过一系列操作将code写入,比如一款支持IAP的单片机,内分3个程序区,1作引导程序区,2作运行程序区,3作下载区,芯片通过串口接收到下载命令,进入引导区运行引导程序,在引导程序下将new code内容下载到下载区,下载完毕并校验通过后再将下载区内容复制到2区,运行复位程序,则IAP完成;
IAP的优点
如果有网管系统的话,用网管下载升级程序,人不用跑来跑去,
IAP应用实例
IC卡电话机:内含V.xx MODEM芯片,MCU自带引导区,可远程下载更新程序。
联系客服