ATmeaga8熔丝位说明

 

AVR单片机烧录和熔丝位的操作初步

AVR单片机由于接口丰富,功能齐全,性价比好,运用越来越广。一些朋友利用网上下载的程序烧录芯片时,由于对熔丝位的意义没搞清楚,而任意改动其设置,结果造成芯片被锁定,即不能用下载线对其读写了。(甚至会误认为芯片已坏)下面将以ATmega8(M8)为例,简单的介绍AVR单片机烧录相关知识和熔丝位的操作方法。
一。内部RC振荡器
玩51单片机的朋友知道,晶振为CPU提供时钟源,单片机没有时钟源是不可能运行的。但AVR则不同,没有晶振单片机照样运行。原因是其内部有1M,2M,4Mt和8M四种频率的RC振荡器。新购入的芯片内部RC振荡器出厂默认值为1MHz。也就是只要将程序烧录到M8中,程序即可运行。当然此时单片机时钟源由内部1MHzRC振荡器提供。
由于芯片工艺制作上的离散性,每个芯片内部RC振荡器频率有不同的误差。因此M8在只读存储器中存储了对内部RC振荡器进行校正的字节,每个芯片校正字节的参数是不同的。(当然在精度不高的场合,可以不作校正)
校正方法是:接好下载线,插入芯片后从烧录软件PonyPr0g2000菜单“命令”下的“读振荡器校正字节”即可中读取。如读取的字节为0xaa;我们只要在程序的初始化中加入
  
OSCCAL=0xaa; //校正内部RC振荡器频率,不同的芯片参数有差异
特别说明的是,使用内部RC振荡器出厂默认值为1MHz,硬件会自动将校正参数装入。只有系统在选用其它三个内部RC振荡器时,才需要将校正参数在程序中加入。
因此AVR单片机和51单片机不同的是:根据需要除可选用外部晶振作为时钟源。当然也可选用内部RC振荡器作为时钟源。

而如何设置是用内部时钟源还是用外部时钟源,AVR系列单片机是通过对熔丝位的操作来实现的。

二。熔丝位的操作  
 
熔丝位的操作主要为二个部分。熔丝位低字节(时钟及延时启动)和熔丝位高字节(引导),不能搞错,因为有些作品发布时不会附熔丝位设置图,往往只告知低字节和高字节是多少。请见下图,图中熔丝位低字节是oxe1,熔丝高字节是oxd9.有了这样二个数据,你可以方便地进行熔丝位的操作了。
其实熔丝位的操作十分简单,因为绝大部分是采用的出厂默认值。下图为M8熔丝位的设置界面。图中已用红线将其对应的功能标出。如:BODLEVEL--对应的是监测电压。你如果在BODLEVEL前的小方框内打钩,对应的功能说明区内就会有相应的说明。可以对每项都试一下,以便对熔丝位的操作功能有一定的了解。(可以不接ISP下载线只要打开软件就能试)

在AVR的器件手册中,对熔丝位使用已编程(Programmed)和未编程(Unprogrammed)定义熔丝位的状态, “Unprogrammed”表示熔丝位的状态为1(禁止);“Programmed” 表示熔丝位的状态为0(允许)。因此,配置 熔丝位的过程实际上是“配置熔丝位成为未编程状态1或成为已编程状态0”。   新的AVR芯片在使用前,应先查看它的熔丝位的配置情况,建议在没有高压并行编程器的情况下,最好将各个熔丝位的状态记录备案。再根据实际需要进行熔丝位的配置。

对熔丝位低字节部分操作
由主要是时钟部分,启动延时二部分
启动延时部分可设置一中等启动时间或采用保留黙认值。要设置的是时钟部分 。
Atmega8有4个不同时钟来源:
外部晶振或谐振器;
外部低频率晶振;
外部RC振荡器或被校准的内部RC振荡器;
外部时钟来源。
由CKSEL0, CKSEL1, CKSEL2, CKSEL3组合决定。祥细配置见下表,

其中 外RC振荡器用的不多,如图 图中: f="1/"(3RC)

对熔丝位高字节部分操作
这部分主要涉及对看门狗定时器,晶振幅度,EEPROM的操作,这不难理解,也容易设置。没涉及这些内容时可使用黙认值。

 

3.AVR芯片烧录和熔丝位的操作实例
以烧录一简单的程序为例:
将AVR下载线插入目标板上,上电,打开软件,在时钟延时启动和引导部分按读键,即可了解当前芯片熔丝位的配置状态。
如当前读出的熔丝位芯片时钟为内1MHz,现要写入芯片时钟的是内8MHz,操作如下图示。
要说明的是:
如当前读出的熔丝位芯片时钟和现要写入芯片时钟一致时,可以不按《熔丝》键。直接写入。要更改芯片时钟源一定要按《熔丝》键,有的朋友在更换芯片程序写入后,发现显示出现显示闪烁等状态,不妨查一下是否更改了时钟设置。
在用选择外部时钟时,目标板一定要有晶振,因为你选择外部晶振,目标板上又不接晶振,程序无法写入运行,芯片必锁无疑!
    在学习熔丝位设置操作时,建议无论是用外晶振还是内RC振荡器,还是在你的目标板或实验板上加一晶振。这也是芯片防锁的方法。
结语:在学用AVR时,曾在熔丝位设置操作上做了些功课,以上仅供参考!更准确的还是以AVR数据手册为准。
个人认为,无论使用内外振荡,在外围接一个晶振,比较保险,可以阻止出现锁定的问题.
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值