欢迎来到天天文库
浏览记录
ID:5875786
大小:341.00 KB
页数:12页
时间:2017-12-27
《avr 熔丝位配置说明》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、AVRStudio是ATMEL指定用于开发AVRMCU的官方软件,其编程功能最为强大。下面介绍使用AVRStudio烧写程序及熔丝快速入门。 ●使用AVRISP方式烧写程序及配置熔丝位 对软硬件进行初始配置,并正确设备连接,就可使用AVRISP进行联机了。 打开AVRStudio,点击主窗口中的图标前面标有Con的那个图标。出现如下图画面:(点击图片放大) 在左边,选择“STK500orAVRISP”,在右边,选择“Auto”(或具体的COM口),点击“Connect”进行联机。 正常联机后,将弹出如
2、下窗口: (1)程序编程面板:(点击图片放大)● Device里面选择好对应的芯片类型,后面的EraseDevice可以擦除芯片。● Programmingmode编程模式:注意这里必须是ISPmod,表示用的ISP编程模式;EraseDeviceBefore选项:编程前先擦除芯片,建议选上,如果不选芯片内部残留的程序可能会对新的程序造成干扰。VerityDeviceAfterProgram:下载完毕后校验程序内容,建议选上。● Flash下载区:InputHEXFile,找到要写的hex文件格式为*.hex
3、、*.e90。Program,编程点此按钮,将会把InputHEXFile对应文件下载到芯片中去,如果路径有错误或者文件格式不正确会有提示报警。Verify校验命令,用于检测芯片内程序是否和文件中的一致。Read读命令,此命令可以读出未加密芯片内的程序,自动弹出一个对话框提示保存。● EEPROM下载区,和Flash下载区类似,格式为.hex、.e90和.eep,此功能用于下载比较多的需要存在EEPROM中的内容时使用。Program、Verify、Read于Flash下载区有对应EEPROM的同样的功能,不在
4、赘述。● 状态指示区,这里显示目前的操作状态。 (2)熔丝位设置面板:(点击图片放大)● 配置熔丝位有一定的危险性,可能锁死芯片,在不知道具体在做什么操作之前,请不要急于动手。● 熔丝位状态显示框,显示芯片的各个熔丝位的详细状况,AVR的熔丝位打勾表示0,表示启用该选项;取消表示1,表示不启用该选项,需要注意。● AutoVerity选项选中时,程序会自己进行校验,建议选中。SmartWarning选项选中时,在对一些特殊的具有一定危险性的熔丝位进行编程时会弹出警告信息,建议选中。● Program、Veri
5、fy和Read分别对应编程、校验和读取,正确的配置熔丝的方法是先读取,先后修改需要修改的地方,再编程写回。在AutoVerity选项选中时无需再点Verify按钮进行校验。● 为了安全起见,在ISP模式下,SPEEN熔丝是不允许编程的。● 芯片锁死的主要原因是设错熔丝位,主要有两种情况:(1)JTAGEN和SPIEN两个熔丝位都为1(不打勾),不能再进行编程,此时只能用高压并行编程或者有源晶振恢复。 (2)将熔丝位选择了外部晶振或外部RC振荡,而没有接外部晶振或外部RC振荡,或者外接的振荡频率不匹配,导致芯片不
6、能工作,这种情况,需要外挂相应晶体才能再次操作芯片,用户应尽量记起当时设错熔丝的情况,比如错误设置成了外部3-8M晶振,那么外挂一个3-8M晶振即可进行相应操作。 当然还有其它方面的原因导致芯片锁死,在此处不再一一赘述。 下面以ATmega16为例,对其熔丝位进行简单描述:(点击图片放大) (3)锁定位设置面板:(点击图片放大)● 通过编程锁定位,允许用户对AVR芯片内数据进行加密,不同的锁定位对应不同的加密保护程度,加密位共有三位,每位的数越大加密程度越高,否则越低。● 被加密后的芯片依然可以读出熔丝
7、位和加密位的情况,一旦试图对加密位进行修改,芯片内的程序将会被修改或擦除,不能再使用。● 加密位可以通过编程界面的芯片擦除功能擦除到初始状态,使得芯片可以重复使用。● 锁定位编程界面有与熔丝位编程界面相同的选项和操作按钮,功能类似,不再赘述。● 锁定位编程应该在熔丝位编程之后进行,通常编程锁定位是生产过程中写芯片环节的最后一步。 下面以ATmega16为例,对其所定位进行简单描述:(点击图片放大) (4)高级设置面板:(点击图片放大)● SignatureBytes,芯片型号标识位,点右边的Read读按钮
8、可以读出芯片内的ID。如果在编程面板里面选的芯片型号与读出的芯片型号对应,下面会提示Signaturematchesselecteddevice,如果不匹配会出现WARNING:Signaturedoesnotmatchselecteddevice! ● OscillatorCalibrationbyte,内部RC振荡校准。这里选择不同的频率,点ReadCal.Byte,可以读出对应的
此文档下载收益归作者所有