历史上的今天
返回首页

历史上的今天

今天是:2024年12月27日(星期五)

正在发生

2019年12月27日 | avr单片机熔丝位设置方法及步骤及设置注意事项

2019-12-27 来源:elecfans

  一、什么是熔丝位

  熔丝是一个保护知识产权的设计。简单的说,你在特定的引脚上加电压,足够的电流,就可以烧断里边的这根熔丝,烧断以后,片里的程序就不可以被读出来也不能改写了,只能用来运行。一般成品出售时都这样做。专用的写片机支持这个功能。自己也可以根据芯片的官方文档来操作。熔丝位是在一个特定的地址上可以读到熔丝状态的一个位。0表示已熔断,1表示未熔断。

  二、avr熔丝位介绍

  AVR Studio 中 STK500 处理熔丝位有巨大的优势:它是以功能组合让用户配置。 这种方式与小马(PonyProg2000,SL-ISP)相比,具有以下的优势(优势是如此明显,可以用“巨大优势”来形容):有效避免因不熟悉熔丝位让芯片锁死 (这是初学者的恶梦), 笔者曾经锁死过三片Atmega16。 不需要靠记忆与查文档,就能配置熔丝位(这也是初学者的恶梦) 动手之前:请你一定弄清楚了,你这样改会有什么后果,除非你有很多钱不在乎多锁死几个芯片。

avr单片机熔丝位设置方法及步骤及设置注意事项

  三、AVR单片机熔丝位设置

  对AVR熔丝位的配置是比较细致的工作,用户往往忽视其重要性,或感到不易掌握。下面给出对AVR熔丝位的配置操作时的一些要点和需要注意的相关事项。


  (1)在AVR的器件手册中,对熔丝位使用已编程(Programmed)和未编程(Unprogrammed)定义熔丝位的状态,“Unprogrammed”表示熔丝状态为“1”(禁止);“Programmed”表示熔丝状态为“0”(允许)。因此,配置熔丝位的过程实际上是“配置熔丝位成为未编程状态“1”或成为已编程状态“0””。


  (2)在使用通过选择打钩“√”方式确定熔丝位状态值的编程工具软件时,请首先仔细阅读软件的使用说明,弄清楚“√”表示设置熔丝位状态为“0”还是为“1”。


  (3)使用CVAVR中的编程下载程序时应特别注意,由于CVAVR编程下载界面初始打开时,大部分熔丝位的初始状态定义为“1”,因此不要使用其编程菜单选项中的“all”选项。此时的“all”选项会以熔丝位的初始状态定义来配置芯片的熔丝位,而实际上其往往并不是用户所需要的配置结果。如果要使用“all”选项,应先使用“read-》fusebits”读取芯片中熔丝位实际状态后,再使用“all”选项。


  (4)新的AVR芯片在使用前,应首先查看它熔丝位的配置情况,再根据实际需要,进行熔丝位的配置,并将各个熔丝位的状态记录备案。


  (5)AVR芯片加密以后仅仅是不能读取芯片内部Flash和E2PROM中的数据,熔丝位的状态仍然可以读取但不能修改配置。芯片擦除命令是将Flash和E2PROM中的数据清除,并同时将两位锁定位状态配置成“11”,处于无锁定状态。但芯片擦除命令并不改变其它熔丝位的状态。


  (6)正确的操作程序是:在芯片无锁定状态下,下载运行代码和数据,配置相关的熔丝位,最后配置芯片的锁定位。芯片被锁定后,如果发现熔丝位配置不对,必须使用芯片擦除命令,清除芯片中的数据,并解除锁定。然后重新下载运行代码和数据,修改配置相关的熔丝位,最后再次配置芯片的锁定位。


  (7)使用ISP串行方式下载编程时,应配置SPIEN熔丝位为“0”。芯片出厂时SPIEN位的状态默认为“0”,表示允许ISP串行方式下载数据。只有该位处于编程状态“0”,才可以通过AVR的SPI口进行ISP下载,如果该位被配置为未编程“1”后,ISP串行方式下载数据立即被禁止,此时只能通过并行方式或JTAG编程方式才能将SPIEN的状态重新设置为“0”,开放ISP。通常情况下,应保持SPIEN的状态为“0”,允许ISP编程不会影响其引脚的I/O功能,只要在硬件电路设计时,注意ISP接口与其并接的器件进行必要的隔离,如使用串接电阻或断路跳线等。


  (8)当你的系统中,不使用JTAG接口下载编程或实时在线仿真调试,且JTAG接口的引脚需要作为I/O口使用时,必须设置熔丝位JTAGEN的状态为“1”。芯片出厂时JTAGEN的状态默认为“0”,表示允许JTAG接口,JTAG的外部引脚不能作为I/O口使用。当JTAGEN的状态设置为“1”后,JTAG接口立即被禁止,此时只能通过并行方式或ISP编程方式才能将JTAG重新设置为“0”,开放JTAG。


  (9)一般情况下不要设置熔丝位把RESET引脚定义成I/O使用(如设置ATmega8熔丝位RSTDISBL的状态为“0”),这样会造成ISP的下载编程无法进行,因为在进入ISP方式编程时前,需要将RESET引脚拉低,使芯片先进入复位状态。


  (10)使用内部有RC振荡器的AVR芯片时,要特别注意熔丝位CKSEL的配置。一般情况下,芯片出厂时CKSEL位的状态默认为使用内部1MHz的RC振荡器作为系统的时钟源。如果你使用了外部振荡器作为系统的时钟源时,不要忘记首先正确配置CKSEL熔丝位,否则你整个系统的定时都会出现问题。而当在你的设计中没有使用外部振荡器(或某钟特定的振荡源)作为系统的时钟源时,千万不要误操作或错误的把CKSEL熔丝位配置成使用外部振荡器(或其它不同类型的振荡源)。一旦这种情况产生,使用ISP编程方式则无法对芯片操作了(因为ISP方式需要芯片的系统时钟工作并产生定时控制信号),芯片看上去“坏了”。此时只有使用取下芯片使用并行编程方式,或使用JTAG方式(如果JTAG为允许时且目标板上留有JTAG接口)来解救了。另一种解救的方式是:尝试在芯片的晶体引脚上临时人为的叠加上不同类型的振荡时钟信号,一旦ISP可以对芯片操作,立即将CKSEL配置成使用内部1MHz的RC振荡器作为系统的时钟源,然后再根据实际情况重新正确配置CKSEL。


  (11)使用支持IAP的AVR芯片时,如果你不使用BOOTLOADER功能,注意不要把熔丝位BOOTRST设置为“0”状态,它会使芯片在上电时不是从Flash的0x0000处开始执行程序。芯片出厂时BOOTRST位的状态默认为“1”。

avr单片机熔丝位设置方法及步骤及设置注意事项


  四、AVR单片机熔丝位设置的注意事项

  对于AVR熔丝位的配置是比较细致的工作,用户往往忽视其重要性,或感到不易掌握。下面给出AVR熔丝位配置操作时的一些要点和需要注意的相关事项。


  (1)在AVR的器件手册中,对熔丝位使用已编程(Programmed)和未编程(Unprogrammed)定义熔丝位的状态,“Unprogrammed”表示熔丝状态为“1”(禁止);“Programmed”表示熔丝状态为“0”(允许)。因此,配置熔丝位的过程实际上是“配置熔丝位成为未编程状态“1”或成为已编程状态“0””。


  (2)AVR芯片加密以后仅仅是不能读取芯片内部Flash和E2PROM中的数据,熔丝位的状态仍然可以读取但不能修改配置。芯片擦除命令是将Flash和E2PROM中的数据清除,并同时将两位锁定位状态配置成“11”,处于无锁定状态。但芯片擦除命令并不改变其它熔丝位的状态。


  (3)正确的操作程序是:在芯片无锁定状态下,下载运行代码和数据,配置相关的熔丝位,最后配置芯片的锁定位。芯片被锁定后,如果发现熔丝位配置不对,必须使用芯片擦除命令,清除芯片中的数据,并解除锁定。然后重新下载运行代码和数据,修改配置相关的熔丝位,最后再次配置芯片的锁定位。


  (4)使用ISP串行方式下载编程时,应配置SPIEN熔丝位为“0”。芯片出厂时SPIEN位的状态默认为“0”,表示允许ISP串行方式下载数据。只有该位处于编程状态“0”,才可以通过AVR的SPI口进行ISP下载,如果该位被配置为未编程“1”后,ISP串行方式下载数据立即被禁止,此时只能通过并行方式或JTAG编程方式才能将SPIEN的状态重新设置为“0”,开放ISP。通常情况下,应保持SPIEN的状态为“0”,允许ISP编程不会影响其引脚的I/O功能,只要在硬件电路设计时,注意ISP接口与其并接的器件进行必要的隔离,如使用串接电阻或断路跳线等。


  (5)当你的系统中,不使用JTAG接口下载编程或实时在线仿真调试,且JTAG接口的引脚需要作为I/O口使用时,必须设置熔丝位JTAGEN的状态为“1”。芯片出厂时JTAGEN的状态默认为“0”,表示允许JTAG接口,JTAG的外部引脚不能作为I/O口使用。当JTAGEN的状态设置为“1”后,JTAG接口立即被禁止,此时只能通过并行方式或ISP编程方式才能将JTAG重新设置为“0”,开放JTAG。这一条要重点记住,因为如果JTAGEN是默认设置“0”的话,PC口有4个I/O口是不能当做通用I/O来操作的,我曾经就吃过大亏,从硬件到程序反复检查就是找不到错误,浪费了太多的时间。


  (6)使用内部有RC振荡器的AVR芯片时,要特别注意熔丝位CKSEL的配置。一般情况下,芯片出厂时CKSEL位的状态默认为使用内部1MHz的RC振荡器作为系统的时钟源。如果你使用了外部振荡器作为系统的时钟源时,不要忘记首先正确配置CKSEL熔丝位,否则你整个系统的定时都会出现问题。对于CKSEL3/0位的设置就是对时钟的设置,一般来说我都是采用外部晶振(8M或16M)直接将CLSEL3/0全部都设置为“1”就可以了。

推荐阅读

史海拾趣

Cooper Tools(Eaton)公司的发展小趣事

由于Cooper Tools和Eaton公司是两个不同的实体,无法同时给出这两家公司的发展故事。然而,我可以分别为这两家公司提供一些发展过程中的重要事件和里程碑,以展现它们在电子行业中的成长轨迹。

关于Cooper Tools的发展故事

  1. 创立与初步发展:1833年,一对兄弟以自己的姓氏创立了库柏(Cooper Tools)。起初,公司专注于制造基本的工具和设备,凭借精湛的工艺和可靠的质量,逐渐在市场上获得了一席之地。

  2. 多元化发展:随着时间的推移,库柏开始逐渐扩展其产品线,从基本的工具制造拓展到电子产品和动力工具的制造。这种多元化的战略使得公司能够更好地适应市场的变化,满足不同客户的需求。

  3. 上市与国际化:1944年,库柏公司成功上市,这一里程碑标志着公司进入了一个新的发展阶段。随后,库柏开始积极寻求海外市场的拓展,逐渐将其产品推向全球。

  4. 技术创新:在技术创新方面,库柏一直保持着前瞻性的思维。公司不断投入研发,推出了一系列具有创新性的电子产品和工具,为行业的发展做出了重要贡献。

  5. 持续发展与领导地位:如今,库柏已经成为一家以电子产品和工具为主的全球性制造商,其产品在市场上享有很高的声誉。公司凭借其卓越的技术实力和市场竞争力,在电子行业中占据了重要的领导地位。

关于Eaton公司的发展故事

  1. 创立与初期成长:1911年,约瑟夫·欧文·伊顿在俄亥俄州克利夫兰创立了伊顿制造公司,专注于汽车零部件的生产。凭借对质量的严格把控和对技术的不断创新,伊顿很快在汽车行业中崭露头角。

  2. 产品线的扩展:随着公司的发展,伊顿开始逐步扩展其产品线,从汽车零部件拓展到工业传动系统、电气控制设备等多个领域。这种多元化的产品策略使得伊顿能够更好地满足市场的多样化需求。

  3. 收购与整合:在发展过程中,伊顿通过一系列的收购和整合活动,不断增强其市场地位和技术实力。例如,收购侯赛汽车配件公司使得伊顿能够进军汽车传动系统领域;收购Cutler-Hammer公司则让伊顿在电气控制设备领域取得了重要突破。

  4. 全球化战略:为了进一步扩大市场份额,伊顿积极实施全球化战略,通过设立海外生产基地和销售渠道,将产品推向全球市场。同时,公司还加强与国际同行的合作与交流,不断提升自身的国际竞争力。

  5. 转型与未来发展:近年来,随着能源效率革命的兴起和环保意识的提高,伊顿开始逐渐向电力管理和电气组件领域转型。通过不断的技术创新和产业升级,伊顿正努力成为电力管理领域的领军企业,为未来的可持续发展贡献力量。

请注意,以上故事是基于公开资料整理而成,旨在客观描述两家公司在电子行业中的发展轨迹。由于篇幅限制,每个故事的字数可能未能达到500字的要求,但已经尽量涵盖了每个故事的核心内容。如需更详细的信息,建议查阅相关公司的官方资料或行业报告。

GSN Electronics公司的发展小趣事

GSN Electronics公司在电子行业中的发展可以追溯到多个方面,以下是五个关于其发展的故事,每个故事均基于事实进行描述:

1. 创立与初期发展

故事背景:GSN Electronics(深圳)有限公司成立于2012年11月27日,由GSN Electronics (Hong Kong) Limited全资控股,注册资本为100万元人民币,后增至当前规模。公司自成立以来,便专注于电子连接器和线束的生产经营,以及电子产品和电子零件的研发、批发、进出口及相关配套业务。初期,GSN Electronics凭借其专业技术和敏锐的市场洞察力,在深圳这一中国重要的电子产业聚集地迅速站稳脚跟。

发展亮点:公司通过不断优化产品结构和提升技术实力,逐步在电子行业中建立了自己的品牌影响力。

2. 技术创新与专利积累

故事背景:GSN Electronics深知技术创新是企业发展的核心驱动力。因此,公司不断加大研发投入,致力于新产品的开发和旧产品的升级换代。截至目前,公司已获得多项实用新型专利授权,如耐折弯的微型连接器、方便插入的电连接器、端口防水防尘结构的连接器等,这些专利技术的应用极大地提升了产品的竞争力和市场占有率。

发展亮点:技术创新和专利积累不仅巩固了GSN Electronics在电子连接器领域的领先地位,还为其拓展新市场、开发新客户提供了有力支持。

3. 市场拓展与国际认证

故事背景:随着公司实力的不断增强,GSN Electronics开始积极拓展国内外市场。公司通过参加各类行业展会、建立海外销售网络等方式,不断提升品牌知名度和市场占有率。同时,公司还积极申请并获得了多项国际认证,如IATF 16949和ISO 9001等,这些认证不仅证明了公司的产品质量和管理水平达到了国际标准,还为其进入高端市场提供了有力保障。

发展亮点:市场拓展和国际认证的成功实施,使GSN Electronics在电子行业中树立了良好的企业形象和品牌形象。

4. 团队建设与企业文化

故事背景:GSN Electronics深知人才是企业发展的根本。因此,公司一直注重团队建设和企业文化建设。公司拥有一支高素质的研发团队和销售团队,他们不仅具备丰富的专业知识和实践经验,还具备强烈的创新意识和团队精神。同时,公司还积极营造开放、包容、创新的企业文化氛围,鼓励员工勇于尝试、敢于创新。

ALPS公司的发展小趣事

ALPS公司是一家日本电子制造商,成立于1948年,总部位于东京。以下是关于ALPS公司发展的五个相关故事:

  1. 创立与早期发展:ALPS公司最初成立时,是一家小规模的电子零部件制造商,专注于生产开关和其他电子元器件。在日本战后经济快速复苏的背景下,ALPS公司迅速发展壮大,成为当时日本电子行业的重要参与者之一。

  2. 技术创新与产品多样化:随着时间的推移,ALPS公司不断进行技术创新,扩展其产品线。除了开关和电子元器件外,公司还涉足了汽车电子、通信设备、家电、数字产品等领域,推出了各种多功能的产品,满足不同行业和消费者的需求。

  3. 全球化战略:为了进一步扩大市场份额,ALPS公司实施了全球化战略,逐步在世界各地建立了生产基地和销售网络。公司在亚洲、欧洲、北美等地设立了子公司和分支机构,与当地客户和合作伙伴紧密合作,拓展了国际市场。

  4. 产业布局与战略合作:除了自身产品开发和制造外,ALPS公司还通过战略合作和并购等方式进行产业布局,加强了自身在电子行业中的地位。公司与其他行业领先企业合作,共同开发新技术和产品,提升了市场竞争力。

  5. 环境保护与社会责任:作为一家负责任的企业,ALPS公司重视环境保护和社会责任,致力于减少环境污染和资源浪费。公司采取了各种措施,包括提高能源利用效率、推动循环经济和环保产品设计等,为可持续发展做出了积极贡献。

以上是关于ALPS公司发展的五个相关故事,这些故事展示了ALPS公司在技术创新、产品多样化、全球化战略、产业布局和环境保护方面的发展历程,以及其在电子行业中的重要地位和影响力。

联智(Celfras)公司的发展小趣事

为了更好地推动快充技术的发展和应用,联智加入了终端快充行业协会。作为该协会的成员,联智积极贡献自身在快充协议、电源管理无线充电芯片和方案研发方面的经验和技术,与协会其他成员共同推动充电技术的标准化、产业化应用和推广。这一举措不仅有助于提升联智在快充行业的知名度和影响力,还将促进整个行业的健康发展。

Hisetec Electronic Co Ltd公司的发展小趣事

背景:随着环保意识的增强,消费者对电子产品的环保要求也越来越高。Hisetec Electronic Co Ltd公司积极响应这一趋势,将绿色环保理念融入产品设计、生产和回收的全过程。

发展:公司投入大量资金研发环保材料和生产工艺,确保产品从源头到终端都符合环保标准。同时,公司还建立了完善的电子废弃物回收体系,对废旧电子产品进行拆解、分类和再利用。这些举措不仅赢得了消费者的信任和支持,还推动了整个电子行业的绿色升级。

长园维安(CYGWAYON)公司的发展小趣事

长园维安一直注重产品质量管理。公司建立了完善的质量管理体系,通过ISO9001、TS16949等认证,确保产品质量的稳定性和可靠性。此外,长园维安还积极推行6Sigma等质量管理方法,不断提高产品质量和客户满意度。这些措施使长园维安赢得了客户的信赖和好评。

问答坊 | AI 解惑

CSR-HF主要部分的说明

CVC-OMS:OMS处理过程是一个实时的处理过程,它采用语音抽取技术来选择并获取感兴趣的语音信息,从而减小了背景噪音的干扰。在捕获有小的失真的语音信息的时候,容易产生在统计上相对比较稳定的非白噪声(Colored Noise),OMS对这类信号尤其有用,对 ...…

查看全部问答>

数控大功率可调直流电源(RS232串口控制)

本数控电源既可以用一个可调的电位器手动控制输出电压的大小。也可以通过电脑RS232串口(或具有串口功能的单片机、PLC、DSP)直接输入一个简单的可视ASCII调压命令进行全数字化设定输出。比如串口输入“DC100”,则输出直流100V电压,串口输入“DC2 ...…

查看全部问答>

如何看待就业中“国进民退”

国家公务员考试11月29日开考,共有104万人争1.5万职位,又创历史新高,成为名副其实的国家第一考。 金融危机以来,有关“国进民退”的问题引起了企业、舆论和市场的关注与担忧。但与此同时,还有一种“国进民退”少受到人们的重视,这就是就业中的 ...…

查看全部问答>

与世隔绝手机袋,让你成功的躲开手机的"追踪"。

手机休息袋:这个小袋子能按照你自己的意愿,给你一个不被打扰的时间,让你离开手机的控制,真正做回你自己。能在下班后坐在咖啡厅里跟你聊一会儿天而不被打扰。能自由自在控制自己的时间和生活。        “手机休息袋”应用先进的纳 ...…

查看全部问答>

ARM与FPGA之间通信

目前想做arm嵌入linux将FPGA做为一个数据处理功能,请教大家有没有好的方法呢!…

查看全部问答>

电力行业企业高薪招聘嵌入式开发人员!!

    欢迎满足以下条件之一的有识之士与我们联系,公司网址:     www.nerc.com.cn,发送简历邮箱地址:whl668@epri.ac.cn。     1.具有2年以上电力行业嵌入式产品开发经验。         2. ...…

查看全部问答>

算时间问题

一个延时函数: void delay_8us(unsigned int us) { while(--us);   } 生成汇编 C:0x0023    7FF4     MOV      R7,#0xF4 C:0x0025    7E01      ...…

查看全部问答>

串口 数据位

为什么我把串口调试助手的数据位设为8、7,结束位设为1、2都可以正常通行呢?…

查看全部问答>

求串口监控程序

    现况是这样的:某程序是使用com1,通过该串口与某串口设备收发数据。     我的要求是这样的:不干扰程序与串口设备通过com1通讯。但是,在我需要的时候, 即使物理上的串口设备没有发出数据,我也让程序认为收到了数据, ...…

查看全部问答>

请问MAXIM的工程师,这个驱动方案可以吗?

max16804, 12v输入,3个LED为一串,共6串并连,每串用一小电阻做均流,这个方案可否?    …

查看全部问答>