isp下载口 是 将程序下载 到 单片机板 的接口
通常用 只用的下载电路
串口通信口 RS232接口,形式 DB9 单片机与其他设备 如 电脑、设备 串口通信的接口
有些 单片机 也可以用 串口 来 下载程序,如 STC 的 单片机
具体接触到一个 单片机时,要仔细看 使用说明书、指南一类的 文档
一般串行下载分两种:
1、ISP:在系统编程,一般目标芯片内包含了专用的接口电路,上位机发送编程命令码及编程控制信息后由芯片硬件自动完成编程。比如通过JTAG口升级就是其中的一种,现在推出的许多新的芯片比如ARM都采用此模式。ATMEL公司的AT89S5x系列的单片机的下载模式虽然不属于JTAG模式,但很类似,应该属于ISP类。
2、IAP:一般叫做在应用编程。MCS-51系列单片机中采用比较多的sst、stc两家公司的单片机就属于这种模式,与上面的模式是有区别的。
下面重点介绍一下IAP的工作流程:
以SST公司的89E564为例:FLASH分为2块,一块64K,就是我们应用程序要使用的程序空间;另一块是8K,现在出厂时一般都预置了自编程的软件代码,这部分代码与上位机的下载软件通讯,获取机器码内容,然后实现对64K的编程操作。这8K的软件用的不是专门的指令,都是51系列标准的指令,只是增加了一些特殊功能寄存器用于实现自编程。
芯片上电启动后,程序首先在8K的程序空间中运行(其实此时相当于89C52芯片),程序主要工作流程如下:
第一步、首先检测串口有无上位机传递过来的编程命令,有的话应答,然后开始自编程操作,编程结束后重新启动;
第二步、如果串口没有编程命令,则检测64K区是否存在有效的机器码。如果有则跳转到64K区正式开始执行应用程序,否则会在8K区中等待,准备接收上位机传送过来的编程命令。
对64K区的编程操作,8k区中的软件只要将其代码从串口接收过来,送到相应的寄存器中,按照要求循环编程就可以了。所以这部分软件是可以修改的,比如某种设备有IC卡接口,就可以修改这8K的程序,实现通过IC卡升级软件的功能,只是这种方式第一次烧写时需要编程器,将8K区的出厂预装程序换成用户自己需要的升级程序。
归纳一下二者:
ISP编程属于纯硬件操作,只要FLASH的物理特性未损坏,就可以实现串口升级,但升级模式是固定的。
IAP模式属于属于软件操作,如果8K区并无物理损坏但软件有问题,就只能使用编程器来编程,无法实现串口升级。但正是由于这种可更改性,可以扩展多种升级方式,更灵活。其实物理损坏的可能性不大,所以我个人认为还是IAP更好些。
STC89C52RC单片机下载程序的接口是:P3.0、P3.1。
1、关于ISP和IAP的概念:简单的讲,ISP模式是其它电路直接操作单片机的几根专用的端口(比如AT89S51的3根,但其不是JTAG口,只是硬件接口类似)完成烧录,属于硬件烧录模式;IAP模式是单片机通过串口接收到需要烧录的程序代码,然后进行“自编程”完成烧录。区别在“自编程”(关于ISP和IAP,可以看一下我以前的一个回答,里面简单说明了单片机下载烧录的原理,应该对你有帮助的
2、关于仿真器,你的理解是正确的;而仿真芯片一般只是用来做仿真器的。
3、关于在线调试,分为两种情况:一种是将仿真器的仿真头插在用户板上,从而实现全速、断点、单步调试;第二种则是单片机自身具备这种接口,比如JTAG接口,只需通过串口实现全速、断点、单步调试。这两种都叫在线调试。而IAP和ISP只是编程烧录操作,含义不一样。
4、第一句话含义是兼容ISP、IAP。第二句话意思是在单片机的ROM区包含了实现单片机自编程的代码,可以通过串口实现编程操作。第三句话的意思是可以由用户自己编制编程软件,从而在最终的应用里实现代码的自编程操作。关于第二和第三句话的详细含义都可以看上面的连接。
在板子上设计232接口连接到单片机的UART,只要单片机支持IAP就可以实现下载程序的功能;同样,如果单片机具备JTAG接
9孔的“下载通信”口:主要是用来与PC机通讯用的,并没有下载程序的功能(STC是个例外)。
10孔的“下载”口:主要是用来下载程序到单片机上用的通讯口。用来下载程序。
单片机下载口j的介绍就聊到这里吧,感谢您花时间阅读,谢谢。
本文标签:单片机下载口j