历史上的今天
返回首页

历史上的今天

今天是:2025年02月10日(星期一)

正在发生

2020年02月10日 | AVR熔丝位的配置设置

2020-02-10 来源:eefocus

用户使用并行编程方式、ISP编程方式、JTAG编程方式都可以对AVR的熔丝位进行配置,但不同的编程工具软件提供对熔丝位的配置方式(指人机界面)也是不同的。有的是通过直接填写熔丝位位值(如:CVAVR、PonyProg2000和SLISP等),有的是通过列出表格选择(如 AVR STUDIO、BASCOM-AVR)。前者程序界面比较简单,但是需要用户在仔细查询操作,会引起一些意想不到的后果,如造成芯片无法正常运行,无法再次定入ISP编程模式等。建议用户对AVR的熔丝位进行配置时,选择用户表格选择方式界面的编程软件,如BASCOM-AVR。不过版主使用的是前者PonyProg2000。


正确配置AVR熔丝位

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


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


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


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


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


5. 正确的操作步骤是:在芯片无锁定状态下,将代码写入芯片中,配置相关的熔丝位,最后配置芯片的锁定位。芯片锁定后,如果发现熔丝位配置不对,必须使用芯片擦除命令清除芯片中的数据,并解除锁定。然后重新写入代码,修改相关的熔丝位,最后再次配置芯片的锁定位。


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


7. 当不需要使用JTAG接口编程方式,且JTAG接口引脚需要作为I/O口使用时,最好设置熔丝位JTAGEN的状态为1。芯片出厂时 JTAGEN的状态默认为0,表示允许JTAG编程方式,JTAG引脚不能作为I/O口使用,所以新的芯片如果需要用到JTAG引脚作I/O口,需设置 JTAGEN为1,当JTAGEN的状态设置为1后JTAG接口立即被禁止,此时只有通过并行方式或ISP编程方式才能将JTAG重新设置为0开放 JTAG。

推荐阅读

史海拾趣

Advance Tapes公司的发展小趣事

随着电子行业的快速发展,对胶带产品的性能要求也越来越高。Advance Tapes公司意识到,只有不断创新才能在激烈的市场竞争中立于不败之地。于是,公司加大了对研发的投入,引进了一批高素质的研发人才,并与多家高校和研究机构建立了合作关系。经过不懈努力,Advance Tapes成功开发出了一系列具有高性能、高可靠性的胶带产品,得到了广大客户的认可。

Deutronic Elektronik GmbH公司的发展小趣事

Deutronic Elektronik GmbH深知客户服务的重要性,始终将客户需求放在首位。公司建立了完善的客户服务体系,为客户提供全方位的服务支持。通过优质的产品和服务,Deutronic Elektronik GmbH赢得了客户的广泛赞誉和信任。同时,公司也注重品牌建设和提升,通过品牌推广和营销活动,进一步提升了品牌知名度和美誉度。

请注意,以上故事概要基于假设和逻辑构建,可能不完全符合Deutronic Elektronik GmbH公司的实际发展历程。如需更详细和准确的信息,请参考公司官方发布的历史资料和新闻报道。

ABL Heatsink公司的发展小趣事

在国内市场取得一定成绩后,ABL Heatsink公司开始将目光投向国际市场。公司首先在欧洲设立了分公司,随后又在美国、亚洲等地建立了销售网络。通过不断优化产品和服务,ABL Heatsink成功打入国际市场,实现了公司的全球化发展。

这些故事虽然基于虚构,但它们反映了电子行业中散热器公司可能经历的一些典型发展轨迹。当然,每个公司的实际发展情况都会有所不同,具体的故事还需要根据公司的实际情况来撰写。

Furukawa Electric Co Ltd公司的发展小趣事

ABL Heatsink公司在电子散热领域一直默默耕耘,直到某天,公司的研发团队成功开发了一种新型的高效散热材料。这种材料不仅导热性能卓越,而且成本相对较低,立即引起了业界的关注。随着这种新型散热材料的广泛应用,ABL Heatsink公司的订单量激增,公司规模迅速扩大。

Beta Dyne Inc公司的发展小趣事

Beta Dyne Inc最初是一家专注于研发新型半导体材料的小型创业公司。在创始人的带领下,公司成功研发出一种具有高效能、低功耗特性的新材料,这一技术突破迅速引起了业界的关注。随后,Beta Dyne积极与各大电子设备制造商合作,将其新材料应用于智能手机、平板电脑等消费电子产品中,成功开拓了新的市场。

Eris Technology Corp公司的发展小趣事

面对日益激烈的国际竞争,Eris Tech开始实施全球化战略。公司通过在海外设立研发中心、生产基地和销售网络,加强与国际市场的联系和合作。同时,Eris Tech还积极参与国际标准的制定和技术交流活动,提高了公司的国际影响力和竞争力。随着全球化战略的深入实施,Eris Tech的产品已经远销全球多个国家和地区。

问答坊 | AI 解惑

零压零流开关电源的研究与应用

摘要:提出一种新型的软开关电路拓扑,通过仿真分析和试验验证,实现了变换器的零压零流开关特性,降低了开关损耗,并已应用于通信开关电源。 关键词:变换器零压零流开关仿真   目前,具有谐振软开关和PWM控制特点的,相移全桥零电压PWM(FB? ...…

查看全部问答>

纽曼MP3维修记,是不是坚定了我们DIY的决心?(转)

看到有那么多DIY MP3的东东,于是乎在网上发现了这个文章,转来看看,是不是增强了我们DIY的决心了呢? 看过一篇文章说医生将自己的病人介绍到其他医院做手术,说得出的原因是病房装修或者床位不空等,而真实原因则是本院收费严格无利可图,介绍到 ...…

查看全部问答>

【转】Linux内核裁剪的具体步骤

在menuconfig中配置: 详细介绍内核配置选项及删改情况 第一部分:全部删除 Code maturity level options ---> 代码成熟等级选项 []Prompt for development and/or incomplete code/drivers 默认情况下是选择的,这将会在设置界面中显示还在开 ...…

查看全部问答>

SAA3010红外解码遇到一些地方不是很明白

我的解码思路是这样的,两次进入外部中断以后开启定时器,关闭外部中断,第一次进入定时器中断时间是400us,以后都是800us这样就可以对每一位码位进行两次采样。 控制位一位,系统码位5位,数据码位6位。总共12位。一位采样两次。总共24次,正好 ...…

查看全部问答>

条码打印机资料参考

我公司是北京地区专业提供标签打印机,条码打印机, 条码数据采集器设备和商品仓储管理系统配套方案的专业化公司, 为企业单位在生产流程管理和商品仓储管理实现条码信息化应用, 无线条码数据采集,盘点应用,仓储信息化管理提供专业的产品和解决方案 ...…

查看全部问答>

才学单片机,这个程序到底是啥问题,请高手请教,非常感谢

#include #define uchar unsigned char int flag; unsigned int count; sbit l1 = P1^0; sbit l2 = P1^1; sbit l3 = P1^2; sbit s1 = P1^3;             //第一个红外开关 sbit s2 = P1^4;  ...…

查看全部问答>

将5.0中的第三方驱动移植到wince6.0中的问题

请问有谁用过OXFORD的OXU210HP这颗USB芯片吗? 在wince5.0下,OXU210的驱动提供了一个cec文件,导入cec文件后,在PB右侧的catalog的第三方驱动中的列表中出现了这个USB的驱动,将它加入我的BSP中,就可以使用了。 我现在要把这个驱动移植到6.0中 ...…

查看全部问答>

死在Calibrating delay loop... 怎么解决?不要嫌分少啊。

我编写了一个针对某块芯片的framebuffer代码 修改了 drives/video 下相应的Config.in    fbmem.c   Makefile文件 在make menuconfig中也做了相应的修改 我用的是MIPS  编译好的代码在板上跑的时候总是死在Calibra ...…

查看全部问答>

关于BOOTROM的生成问题?

我在CONFIG.H中设置好 DEFAULT_BOOT_LINE   \"secEnd(0,0)host:vxWorks h=192.168.0.1 e=192.168.0.100:ffffff00 u=target pw=target tn=S3C4510\"后! 生成bootrom_uncmp后转化成bootrom.bin,再烧写到boot flash中! 启动后,能ping ...…

查看全部问答>