EDN首页   博客首页

最新日志

发表于:2006-12-24 16:44:05
标签:无标签

4

自制AVRJTAG成功

按网上的资料做了一个简易的AVR JTAG,自己用万用板焊接的,刚开始烧写的是自动升级版本的固件,在AVR STUDIO 4.12版本的软件下连接JTAG,被提示固件的版本太老,需要升级,但点确定后出现“NO Supported board found,AVRprog version 1.40”的对话框,并没有运行AVRPRO,试了几遍都不行,郁闷,到了论坛问了一下,有大侠说需要先烧一个bootloarder,找了半天没找到,等不急了,就又下了AVR STUDIO  4.10装上,烧了个4.10版本的JTAG 固件,连接上目标板,上电,打开AVR studio,调入测试程序,在Debug下选择“select platform and device”,在弹出的对话框的左面一栏选择“JTAG ICE”,右面一栏选择“ATmega 16”点确定后,点Debug下的“start Debugging”,顺利运行,可以进行仿真,就是单步运行的时候感觉比51仿真的时候要稍微慢一点,不过完全可以接受。

点击“start Debugging”后在Debug菜单里选择“JTAG ICE OPTION”,在弹出的对话框上选择Debug标签,然后在下面的Advance一栏中改选“Reprogram only if time stamp of object file has changed",这么做的目的是减少对芯片的编程次数,因为在JTAG仿真时,默认是每次都重新烧录目标板的MCU。

然后在上面的保护EEPROM的选项前面打上对号,防止在仿真的时候擦除目标芯片EEPROM内的数据。在connection里面可以改变串口的波特率,提高仿真的速度。

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(4) | 阅读(2190)
发表于:2006-12-17 17:09:19
标签:无标签

1

ulink终于好了

早就想去一趟电子城了,这段时间忙了几天的论文,无聊极了,今天实在忍不住了,冒着寒风跑了过去,买了几个20脚仿真插头,USB接头,ulink上的几个电阻和三极管,本来还打算买个ATmega8L,做一个AVR的USBASP试试,没想到唯一有货的两家商铺今天都休息了,郁闷,只能改天再说了,三点多才冒着寒风回到学校,冻死了,暖和过来后先把ulink板子上缺的那几个元件焊上,这块PCB板是前段时间化了10元买的,当时只把几个主要元件焊上了,焊好后接usb线连电脑,两个绿灯闪了一下,恩,看来AN2131和24C02都正常,打开KEIL FOR ARM,在options for target点Debug标签,选择右边的USE选项里面的Ulink arm debugger后点settings顺利弹出ARM target driver setup设置框,恩,不错,62LV256也没有问题了,成功了一半,找出闲置了许久的44B0开发板,连接Ulink,上电,然后重复上面的设置,顺利的在ARM target driver setup的设置框里面看到了44B0的ID码,Ulik可以找到目标芯片了,呵呵,应该没有太大问题了,收起来等毕业了在研究吧,现在实在是没时间了,还有一块LPC2132的板子都一直没工夫焊。

        以前曾经买过一块ulink的PCB,不过那块PCB上的62LV256是SOJ封装的,一直没买到,只邮购了两片SOJ封装的61LV256,据说也可以替换62LV256,只是速度比62的要快,拿到片子后发现两片芯片上都有松香涂抹的痕迹,当时就怀疑是拆机元件,不过已经买了也没办法,焊上再说吧,焊接好后连接电脑,顺利装上驱动,两个绿灯也都闪了一下,AN2131与24C02都没有问题,但是在keil for arm软件里面点seteings死活弹不出ARM target driver setup设置框,而是一直无响应,当时以为AN2131有问题,换了一片后还是老问题,把24C02换了也不行,没办法,换上另外一片61LV256后还是老样子,检查了N遍线路后也没发现焊接错误后,怀疑自己可能真的买到拆机元件了,到论坛里请教后,被高人告知是内存芯片的问题,证实了自己的怀疑,这两年已经买了好几个拆机件了,痛恨这帮奸商,因为这两个芯片浪费了N多的时间,至今那块ulink还躺在抽屉里。现在总算有一个能用的ulink了,先用着,有时间了去买两片SOJ的62LV256把那块弄好,这次可不能再买到拆机件了。

系统分类: 嵌入式   |    用户分类: 无分类    |    来源: 无分类

评论(5) | 阅读(2271)
发表于:2006-12-5 19:14:00
标签:无标签

1

这两天实在是郁闷

等了十天的PCB板子终于到了,本来是没打算做这个EASY 51PRO串行编程器的,因为做过两条51下载线,使用一直很稳定,但以前做过一个ulink,一直有问题,怀疑是在焊接的时候把24C02给烫坏了,手边没有能读写24c02的编程器,想自己用89c2051diy一个,可是身边又没有89C2051的编程器,那就先得DIY一个89c2051的编程器,晕!当时画PCB的时候匆匆忙忙,结果调试的时候遇到了太多的问题,首先是电源不正常,检查了一遍发现有个地方电源线和地线短路了,没办法,拿刀一顿割,电源正常了,却突然画PCB的时候串口座放反了,焊的时候没注意,直接焊上了,导致与计算机的通信根本不正常,收和发连接到一起了,郁闷,只好把三条线割断,重新走飞线,并换了一条自制的直通串口线,总算折腾好了,在ISPlay下可以看到编程器就绪的状态,插上一片s52,用检测器件也检测到了,开始读写看看能不能用,却发现写入的程序读出来都乱了套了,擦除后再读,竟然还读出一堆乱七八糟的代码,反复操作几次之后竟然检测不到器件了,s52的ID变成了“FE FE FE ”!拔出芯片用并口下载线试试,竟然检测到的ID也是“FE FE FE ”但是还能正常读写,真是奇怪了,用万用表检测了半天也没找到错误,郁闷,看来只能怀疑是自制的串口线有问题了,等明天去电子城买一条再试试,再检查不出问题来真要疯掉了!

       还有一件更郁闷的事情,以前做过的一块AD9854的板子,现在发现FSK功能根本无法使用,本来是用AT89S52的P2.6引脚通过MAX3002电平转换后控制AD9854的FSK/BPSK/HOLD引脚,现在发现根本没办法把P2.6引脚置成高电平,而是一直都是0电平,开始怀疑是AD9854损坏,将P2.6引脚的高电平拉低成了0电平,便把控制FSK/BPSK/HOLD引脚的线割断,再将P2.6置高,发现P2.6的电平依然为0电平!难到S52损坏?不可能啊,先把MAX3002取下来,再测发现P2.6管脚变为高电平,S52没坏,再焊上MAX3002,又变回低电平了,问题出在MAX3002身上!问题是MAX3002总共8路,其他几路都正常,按理说损坏的可能性不大,检查了N遍电路也没查出走线错误,难道是驱动程序错误,找出以前做课题时的板子,设置好工作方式,写入F1,F2频率控制字,将AD9854的29脚接高电平,输出信号上午频率顺利从F1跳到了F2,程序没问题啊,两块板子硬件上差别就在于一个是用MAX3002对电平进行转换,一个是用16K的电阻转换的,看来问题还是出在MAX3002身上,郁闷,MAXIM的片子不至于这么难伺候吧,唉,先写写论文,准备答辩,那天又时间了再换几片MAX3002试试,总能有一片好用的吧。

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(10) | 阅读(1753)
发表于:2006-11-30 12:46:17
标签:无标签

1

总算测试成功了

改了一上午论文,中午想测试一下昨天弄好的下载线,找了个8M的晶振焊在最小系统板上,发现没有22pf的电容了,用两个15pf的代替,反正12pf-22pf范围内的都可以吧,在PA口的低四位接了四个LED,写了几行程序看能不能点亮。连接好下载线,上电,打开AVR PRO,检测单片机,一切正常,加载HEX文件写入,因为就几行程序,连1s都不到就写完,这时候就发现实验板上的四个LED就已经亮了,写入成功。呵呵,然后先读取熔丝位设置,把CKSEL3,CKSEL2,CKSEL1,CKSEL0四位前面的对号都去掉,配置为外部8M晶振的模式,然后把SUT1位前面的对号也去掉,配置为电源慢速上升就可以了,然后写入配置,先断电,再拔掉线缆,主要害怕烧掉并口,呵呵,然后再上电,四个LED全亮,按下复位键,复位功能也一切正常,烧录成功,心头的石头落地了,总算没造成死锁。下步该好好学学汇编了,总不能总是只会写几行程序吧,呵呵。

注:AVR单片机在出厂的时候一般配置为标定的内部RC振荡器时钟生效,因此在使用ISP下载时不用提供外部晶振也可以下载,但一旦写熔丝位配置成外部晶体模式,则下次ISP烧写的时候必须接晶振才可以。

下载线电路图:

点击看大图

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(4) | 阅读(1212)
发表于:2006-11-29 17:38:37
标签:无标签

1

折磨人的ISP啊

昨天用聂忠强版本的下载线在ISPlay里面检测到了ATmega16,好一阵高兴,原以为ISP编程可以搞定了,昨晚研究了一下AVR studio,写了个很小测试程序。今天上午准备测试一下,结果发现生成的HEX文件在ISPlay里面却死活打不开,出现“*.HEX文件转换失败(不支持大于64K)!”的对话框,郁闷,研究了半天也找不到原因,到论坛里一看,发现几乎没人用这个软件写AVR,看来ISPlay该升级了,嘿嘿!不管了,那就换个下载软件吧,下了双龙,小马,TLG,progisp,挨个试了一遍,没一个能检测到单片机的,狂吐血,看来他们都不支持Altera 的ByteBlaster 下载线啊,后来一论坛大哥说双龙的只支持STK200,汗,没办法了,自己动手diy一条吧。

吃好午饭回来开工,在ouravr论坛里找了个STK200的电路图,万用板、HC244、电容、电阻,发现没并口盒了,算了,先不用外壳了,丑点丑点吧!拿锯条一通狂拉,好了,对电路图开焊,走飞线太郁闷了,要一直忍受塑料胶皮被打火机烧焦的味道,痛苦,正在焊接中,突然“嘭”的一声巨响,脚边电烙铁的电源线火花四溅,短路了!线都打断了,惊了一身冷汗,原来以前断过一次,用胶布缠了一下接着用了好久了,今天又短路了,看来以后不能太抠门了!换了烙铁总算焊好了,先上电用万用表测了一下,恩,线路没有问题,连接好最小系统板,先打开TLG的AVR PRO,一点“ID”:

重载HEX文件......完成
软件工作于ISP编程模式......完成
打开电脑并口......完成
进入ISP编程模式......完成
读取芯片ID......0x1e,0x94,0x3...完成

不错,看来成功了,用双龙1.32软件和progisp试了一下,哈哈,都找到了,换上小马又不行了,“通信端口不可用!”,晕,大家交口称赞的小马到了我手里就不行了,难道是RP问题?!不至于这么衰吧,仔细研究了一下,发现“设置”选项里面的“接口设置”给选成了串行,晕,选成并行,选择“AVR ISP I/O”,点中LPT1,确定校准,点读出器件,OK,顺利读出,速度还很快,没问题了。折腾了半天才搞定,太郁闷了,看来水平还是太凹了!晚上写写论文,泡泡论坛,拿准了再下个程序试试,不敢轻举妄动啊,一片10多元,心疼啊!

注:使用progisp时在programmer interface下面的框里选择STK200/300才可以,默认的“并行编程器”不可以,刚开始没注意,后来才发现。

自制ISP下载线只要线路没有问题,线缆在一米之内,一般都能一次成功,前提是计算机的并口要设置成“ECP”模式,不要图省事把HC244焊在系统板上,那样离并口太远,基本不会成功。

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(1) | 阅读(1404)
发表于:2006-11-28 14:23:06
标签:无标签

1

论文写的太郁闷,还是学学AVR吧

以前用过AT90S8515,现在忘光光了,前天买了两片ATmega16L,准备重新学学AVR,反正论文写的也郁闷,昨天看了半天数据手册,焊了个最小系统板,想先试试ISP下载功能,做个下载线,发现几个元件不全,准备过几天去趟电子城再说。今天泡了半天论坛,突然想起以前做过两条51的ISP下载线,照聂忠强版本做的,何不拿来先试一下?翻出好久不用的下载线,先用S52测试了一下,还能用,嘿嘿!接ATmega16系统板,上电,打开ISPlay,选择ATmega16,点检测器件,呵呵,“滴滴滴”,OK,找到器件:

ISPlay v1.5(2005.3.12)
加载器件库完成!
初始化并口完成!
读特征ID=FF,FF,FF
没检测到器件!
读特征ID=1E,94,03
检测到器件:ATmega16   FLASH ROM:16384字节   EEPROM:512字节

点读出设置:

加载器件库完成!
初始化并口完成!
读特征ID=FF,FF,FF
没检测到器件!
读特征ID=1E,94,03
检测到器件:ATmega16   FLASH ROM:16384字节   EEPROM:512字节
读器件设置...完成

呵呵,看来能用,暂时就先用它了,有时间再做一条,看看汇编,学学设置熔丝位,明天写个程序测试一下。

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(2) | 阅读(915)
总共 , 当前 /