POWERPRG高压HV模式编程方法 将usb编程器插入usb接口,这时在powerprg中可以看到编程器接入图标点亮,将编程器切换到HV模式 调入编程数据,选择编程芯片,选择编程芯片时,右上角会提示芯片放入编程座的方向与位置 (见编程主界面二) 选择熔丝位,连接好!
正常编程的步骤:先调入编程数据,选择熔丝位,连接好目标板,加电(如果目标板没有电源可以选择[提供电源]由下载器为目标板提供电源,输出电源电压由勾选[3.3V]进行3.3V与5V之间进行切换),选择相应的按钮进行操作。(操作时指示灯闪烁, 闪烁的速度越快表示下载速度越快)。
POWERPRGVer2.0最新特性:
支持所有的AVR芯片的编程,支持AT89S51,AT89S52,sst89c5x,w78e5x,93cxx,24cxx,25xxx等
支持自定义并口下载编程器,
支持自定义串口的下载编程器
支持USBASP编程器(支持最新版)
支持USBProg编程器(本工作室开发)
支持zf-007系列下载器(包括脱机下载器,免驱动版)
支持zf-008编程器(即可isp下载也可高压编程)
支持跳空写入(对于写入数据中有大量的未使用地址的flash,可以极大的提高写入速度)
支持预写熔丝(对于avr芯片可以预编程为高速熔丝位,极大的提高写入速度)
支持电源管理(需要对应的硬件支持)
支持3.3v/5v切换(需要对应的硬件支持)
支持写入系列号(可选大端,小端)
支持所有的时钟校正字写入flash或eeprom(avr芯片)
支持自定义编程芯片(xml文件管理)
支持自定义编程熔丝信息提示信息
支持自定义热键快捷键
支持自定义汉化信息提示
支持Unicode多国语言,在非中文环境下显示英文界面
支持工程管理--可以将所有的配置数据与编程数据打包为单一文件。
使用步骤:
avr的校准字OSCCAL不同的型号的个数不同,比如mega8有4个,mega88仅有一个,但他们都有个共同点,在上电时会将一默认的校准字读入OSCCAL寄存器中,由于不同的单片机的校准字大部分不同,这就给我们再不增加成本的情况,提供一个唯一值(可能会相同,虽然概率较大,如果盗版者有一半不能使用也就会怀疑其可靠性)下面说说我的做法。
第一步,生成烧入程序以avrgcc为例。在源程序中任意位置插入如下语句 以
const char *stm= PSTR("abcdefgh");//
用pgm_read_byte(&stm);读出与OSCCAl对比(这里可以简单的做变换,与写入芯片的值对应),如果不同,就做你想要实现的效果了。
注意字符串的唯一性,这样可以很容易的再目标文件搜索到,以便知道他的位置
编译产生目标程序,同时会生成一个.lss的文件。打开.lss文件,搜索字符串“abcdefgh”注意此字符串一定只有一个。记下前面的地址001098
00001098 <__c.0>:
1098:61 62 63 64 65 66 67 68 00 abcdefgh.
第二步,启动powerprg,调入编译产生的.hex文件,切换到编辑栏,点击"goto"在跳出的输入栏输入刚才记下的地址1098,确定就会光标跳到此处可以看到字符串abcdefgh
第三步,点击右键选择"校正值",输入一个偏移值(这个值与读入的OSCCAL相加写入芯片),另请注意校正值一定要选择对比如m16就必须选"1MHz"
第四步,连接编程器写入芯片。
第五步,保存工程,方便下次调用,这样下次写入就不用这么麻烦了。
大功告成。