单片机烧录程序的几种常见方法

发布者:清新家园最新更新时间:2023-09-05 来源: zhihu关键字:单片机  烧录程序  常见方法 手机看文章 扫描二维码
随时随地手机看文章

最近看到一个小伙伴问了一个比较基础的问题,大概就是问:单片机烧录程序常见方法有哪些?


下面就来说下常见的三种烧录程序的方法:ISP、IAP和ICP,以及它们的区别。


ISP

ISP:In System Programing,在系统编程。


ISP 是指可以在板级上进行编程,也就是不用拆芯片下来,写的是整个程序,一般是通过 ISP 接口线来写。


支持ISP的芯片一般在芯片内部固化了一段(用ISP升级的)boot程序


比如:使用STC-ISP对STC芯片编程,利用Flash loader对STM32编程等。


ICP

ICP:In Circuit Programing,在电路编程。

ICSP:In-Circuit Serial Programming,在电路串行编程。如:对EEPROM编程等。


ICP编程方式网上各有说法,从字面含义(在电路)来说,所有处于编程的芯片都需要上电,都处于电路中。不严格来说利用J-LinkST-Linke-Link32等工具进行编程也属于在电路编程(ICP)。


在维基百科中,ISP(在系统编程),也称为在电路串行编程(ICSP)。


IAP

IAP:In applicaTIng Programing,在应用编程。在程序运行的过程中进行编程(升级程序,更新固件)。


IAP是用户自己的程序在运行过程中对User Flash的部分区域进行烧写,目的是为了在产品发布后可以方便地通过预留的通信口对产品中的固件程序进行更新升级。[来自:百度百科]

IAP通信口IAP的通信口有许多种:UART串口、ETH以太网、I2C、SPI......等。按理说只要能传输数据的通信口都能实现IAP的功能。


IAP的应该非常广泛,可以参考我之前分享的一篇文章:STM32官方IAP例程详细说明,以及Demo演示

动图封面


ISP 与 IAP 的区别

1.打个比喻吧1、ISP 是把房子拆了再重造一间,那么在造好之前当然是不能住人的啦!2、IAP 是在造好的房子里边进行一些装修,当然人可以继续住啦!

2.应用场合1,ISP 程序升级需要到现场解决,不过好一点的是不必拆机器了;2,IAP 如果有网管系统的话,用网管下载一切搞定,人不用跑来跑去,

3.ISP 和 IAP 的工作原理ISP 的实现相对要简单一些,一般通用做法是内部的存储器可以由上位机的软件通过串口来进行改写。对于单片机来讲可以通过 SPI 或其它的串行接口接收上位机传来的数据并写入存储器中。所以即使我们将芯片焊接在电路板上,只要留出和上位机接口的这个串口,就可以实现芯片内部存储器的改写,而无须再取下芯片。

IAP 的实现相对要复杂一些,在实现 IAP 功能时,单片机内部一定要有两块存储区,一般一块被称为 BOOT 区,另外一块被称为存储区。单片机上电运行在 BOOT 区,如果有外部改写程序的条件满足,则对存储区的程序进行改写操作。如果外部改写程序的条件不满足,程序指针跳到存储区,开始执行放在存储区的程序,这样便实现了 IAP 功能。

4.ISP 和 IAP 的优点ISP 技术的优势是不需要编程器就可以进行单片机的实验和开发,单片机芯片可以直接焊接到电路板上,调试结束即成成品,免去了调试时由于频繁地插入取出芯片对芯片和电路板带来的不便。

IAP 技术是从结构上将 Flash 存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将程序从一个存储体转向另一个。

ISP 的实现一般需要很少的外部电路辅助实现,而 IAP 的实现更加灵活,通常可利用单片机的串行口接到计算机的 RS232 口,通过专门设计的固件程序来编程内部存储器,可以通过现有的 INTERNET 或其它通讯方式很方便地实现远程升级和维护。


关键字:单片机  烧录程序  常见方法 引用地址:单片机烧录程序的几种常见方法

上一篇:玩转单片机得弄明白DMA原理
下一篇:单片机低功耗几点内容

推荐阅读最新更新时间:2024-11-17 12:19

PS2无线手柄解码 附单片机程序
参考前辈大虾的资料,用Atmega128A对PS2无线手柄进行解码,并在8位数码管上显示按键值 自己总结如下: 蹬蹬蹬。。。主角登场: 无线PS2手柄+遥控接收器+便于接线的转接板 遥控接收器和转接板插接在一起后的样子 转接板上的接线引脚有以下几个: DAT- 手柄到单片机 同步传送于时钟下降沿 时序图中的DI CMD- 单片机到手柄 同步传送于时钟下降沿 时序图中的DO CS- 提供手柄触发信号,通讯期间处于低电平 CLK- 时钟信号,由单片机发出 引用其他资料的说明如下: 1.“通讯过程中, 一串数据通讯完成后 CS 才会由低转高,不是 1 个字节通讯完成后就由低转高,在通讯期间,一直处于低电平。” 2.“在
[单片机]
PS2无线手柄解码 附<font color='red'>单片机</font>程序
设计一款旋转LED原理与设计
旋转LED——飘在空中的文字 一.效果: 二.整体结构: 三.制作方法: 1.电机的改装 电路的供电和LED 的定位是本制作的一个难点。装在电机上的电路始终在高速旋转,我们就无法使用通常的方法来给电路供电。但我们可以通过对电机的改造来解决。我们都知道,一般的直流电机是线圈作为转子,而永磁体作为定子的。他是通过电刷来实现给线圈供电的,而且直流电机的旋转需要交变的电流,这是由固定在转子轴上的换向器来巧妙的实现直流变为交流的。我们的电路是固定在电机的转子上的,它和转子是保持相对静止的。因此,我们可以从电机的转子中取得电源。方法很简单,也就是从电机的换向器上用漆包线把电引到电路板上,经整流,滤波后给单片机电路供电。换向器上的
[单片机]
设计一款旋转LED原理与设计
PIC单片机浮点数与十进制数之间的转换
在我们设计的仪表中采用PIC系列单片机,碰到了浮点数的运算问题,查阅其有关资料发现,其浮点数的格式及其与十进制数之间的转换,与我们常用的MCS-51单片机所提供的三字节、四字节浮点数完全不同,本文将说明其浮点数的格式及其与十进制数之间的转换和程序设计步骤。 1 浮点数的格式   Microchip公司单片机所采用的浮点数格式是IEEE-754标准的变异型。32位浮点数格式为:   其中:×表示一位二进制数0或1;eb 为指数的偏差;S为浮点数的符号位,S=0为正数,S=1为负数;小数点“·”在符号位S的右边;BY0 BY1 BY2为尾数的小数部分。 应特别注意:   ⑴ 浮点数隐含其整数部分为1。   ⑵ 十进制数0 的浮点
[单片机]
PIC<font color='red'>单片机</font>浮点数与十进制数之间的转换
STM32 MCU的工作原理、基本结构及优缺点
STM32 MCU是STMicroelectronics公司生产的一款基于ARM Cortex-M内核的32位微控制器,广泛应用于汽车电子、工业控制、消费电子等领域。本文将介绍STM32 MCU的工作原理、基本结构以及优缺点。 一、STM32 MCU的工作原理 STM32 MCU采用基于ARM Cortex-M内核的32位RISC处理器,具有高性能、低功耗等特点。其工作原理如下: 1.启动过程:当STM32 MCU上电时,首先进行启动过程,包括复位电路和系统时钟初始化。 2.中断处理:在运行过程中,STM32 MCU会响应外部中断请求,进入中断处理程序进行处理。 3.外设驱动:STM32 MCU需要与各种外部设备进行通信,因此
[单片机]
单片机中模糊控制系统的实现与设计
  模糊控制概述   模糊控制(Fuzzy Control)是目前自动控制研究中活跃而富有成果的领域之一,模糊理论是当前能用来对信息进行软处理的最新技术,可以将人的定性思维和判断方法定量化 为适合计算机处理的过程,使计算机能判断像“大概”、“轻”这样的模糊信息。采用传统控制理论,不管是用经典控制理论还是用现代控制理论来设计一个控制系 统,都需要事先知道被控对象的精确数学模型。然而,在许多情况下被控对象(或生产过程)的精确数学模型很难建立;像建材工业生产中的水泥窑、玻璃窑,化学 生产中的化学反应过程,食品生产中的发酵过程,还有众多炉类的热处理过程。诸如此类过程具有变量多,各种参数存在不同程度的时变性;且过程具有非线性,强 耦合,较
[单片机]
p18f458单片机通讯程序
p IC 单片机 p18f458上实现发送 缓冲器 0向接收缓冲器0发送数据的自测试模式 //该程序运行在pic 单片机 p18f458上实现发送缓冲器0向接收缓冲器0发送数据的自测试模式,其中接收采用中断方式 //发送采用查询方式 #include p18f458.h int CAN _FLAG; //定义标志寄存器 //**************初始化子程序*************** void initcan() { TRISB=(TRISB|0X08)&0XFB; //设置CANRX/RB3为输入,CANTX/RB2为输出 //设置CAN的波特率为125K,在Fosc=4M时,Tbit=8us,假设BRP=01h
[单片机]
MEGA16单片机_AD转换程序
AD转换,编程的寄存器有: ADMUX:多工选择寄存器。参考电压、对齐方式、模拟通道及增益选择位 ADCSR(A):使能、中断标志、中断使能、预分频值等 ADCL、ADCH:数据寄存器 SFI0R:特殊功能寄存器 //////////////////////////////////////////////////////////////////////////////////////////////////// #ifndef __AD_H__ #define __AD_H__ #include iom16v.h #include macros.h #define uchar unsigned char #d
[单片机]
AVR单片机TWI总线的原理及应用
摘要 在简要对比TWI总线与I2C总线的基础上,详细介绍TWI总线的内部模块、工作时序和工作模式,并给出一个编程实例加以说明.对TWI总线和传统的I2C总线的正确区分及使用具有现实的指导意义。 关键词 两线串行总线TWI I2C AVR系列的单片机内部集成了TWI(Two-wire SerialInterface)总线。该总线具有I2C总线的特点,即接线简单,外部硬件只需两个上拉电阻,使用时钟线SCL和数据线SDA就可以将128个不同的设备互连到一起;而且支持主机和从机操作,器件可以工作于发送器模式或接收器模式,数据传输率高达400 kHz。正因为TWI总线具有这么多的优点,因此受到了使用者的青睐。 由于该总线
[单片机]
AVR<font color='red'>单片机</font>TWI总线的原理及应用

推荐帖子

电容滤波的单相桥式不可控整流电路工作波形问题
请问那个电容滤波的单相桥式不可控整流电路中工作波形b)中,i2是输入电流嘛?还是电容的充电电流?然后为啥有相位相差180的两个正弦波?电容滤波的单相桥式不可控整流电路工作波形问题【请问那个电容滤波的单相桥式不可控整流电路中工作波形b)中,i2是输入电流嘛?还是电容的充电电流?】此图中电流波形是错误的,不必再看了。我在本坛发过关于整流的八篇帖子,其中第二篇中有电容滤波的电压电流波形,可以参考。整流杂谈图b中的电流i就是图
西里古1992 模拟电子
【藏书阁】实用电源电路集锦
目录第一章直流稳压电源第二章可调直流稳压电源第三章开关电源第四章交流稳压电源第五章变化电源第六章逆变电源第七章充电电源第八章应急电源第九章新旗舰在电源中的应用第十章其他电源【藏书阁】实用电源电路集锦O(∩_∩)O谢谢LZ,LZ辛苦谢谢你的好资料你的技术资料太好了。学习谢谢你的好资料你辛苦了。上次的资料丢啦感谢楼主,收藏了非常感谢楼主,整理了这么多资料辛苦了谢谢谢谢啊爱爱爱谢谢楼主的慷慨,楼主辛苦了原帖由hu72于201
wzt 电源技术
各类数码产品的静电防护知识
本帖最后由jameswangsynnex于2015-3-320:03编辑数码产品的静电防护随着各种IC体积越来越小,集成度越来越高的,静电对各种数码产品的潜在威胁已经越来越突出。欧盟也强制执行了各类数码电子产品静电防护要达到接触放电4KV,国内虽然还没有官方明确条文规定,但冬天中国北方地区都是静电破坏的重灾区,很多产品销售都因为静电造成的反修率高问题丢失了北方市场。防止静电对各类产品的破坏也就更应受到开发工程师的重视。静电对电子产品损害有哪些特点?1.隐蔽性人体不
xys_zhang 移动便携
非电是什么意思
非电是什么意思,喷淋箱的非电说明怎么写?谢谢非电是什么意思就是不用电的意思吧。就是不加电的情况
azhu 模拟电子
拾音器如何进行选型呀?
现在拾音器有的很便宜,有的很贵。有个项目要用到拾音器,不知道如何进行选型了,也不知道性能差异多少?有没有一些指标可以判断?拾音器如何进行选型呀?
shcpz 安防电子
拆一款含博士量很高的安全气囊控制器
拆一个德国生产的一个古董级的安全气囊控制器,标签上的03-08-14可能是生产日期,03年8月14日生产?控制器有3个安装孔,用来和车身固定,还有4个用来固定盖板的螺丝,盖板冲压了一些条形图案,可能是用来增加盖板强度的。控制器顶部有一个巨大的可拆卸线束,线束上有一个白色的连接器拆/装装置,将其拨动到左侧后黄色的连接器就会脱离控制器,方便取下线速,拨动到右侧就会压实锁紧。白色的拆/装装置在锁紧后会被黄色的凸起卡住,这样可以避免震动导致白色装置转
littleshrimp 汽车电子
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved