我 学习 51-AVR试验板的过程和问题
51-AVR学习板学习进展建立于2007-9-20
2007-9-17号中午给阿莫电子邮购部邮钱,订购51-AVR学习板
2007-9-19中午邮递公司送货到门,下午开始焊接元件;晚上焊接完毕并侧测试通过各个功能器件
2007-9-20 想要下载程序,通过JTAG口,下载失败;通过ISP(MKII)也没有成功;现在问题: MKII能当作ISP下载线使用么?如果能为何我下载不成功,因该做何调整?
1、阅读 帮助文件
Connecting through ISP
If the JTAGEN fuse (JTAG Enable) in the target device is un-programmed, the JTAG Interface will be disabled. This fuse cannot be programmed through the JTAG Interface and must therefore be programmed through e.g. the ISP Interface. This can be done from the JTAGICE mkII by connecting to the AVR device as described in the table below using the squid cable that comes with the JTAGICE mkII.
说明可以使用JTAGICE mkII.通过ISP连接目标芯片。
JTAGICE mkII probe Target pins Squid Cable Colours STK500 ISP pinout
Pin 1 (TCK) SCK Black 3
Pin 2 (GND) GND White 6
Pin 3 (TDO) MISO Grey 1
Pin 4 (VTref) VTref Purple 2
Pin 5 (TMS) Not present Blue Not present
Pin 6 (nSRST) RESET Green 5
Pin 7 (Not connected) Not present Yellow Not present
Pin 8 (nTRST) Not present Orange Not present
Pin 9 (TDI) MOSI Red 4
Pin 10 (GND) GND Brown Not present
Note
If using this ISP connection from JTAGICE mkII on a STK500, be sure to de-attach the RESET jumper on the STK500. And connect to the correct ISP header for the actual AVR device, guided by the colour code in the STK500 silk-print.
STK500 ISP connector
2、我通过ISP 连接线,连接到目标板了,可是下载出现
意思是ISP 编程速率要小于晶振的1/4; 现在 卡在这里了,不能下载程序。没有买并口下载 线,当时考虑到手中有个JTAG MKII就万能了。手头没有公的db25 ,只能等明天去买一个,做个并口下载线再看看了。 编程时钟太快了,更改一下,再将熔丝位改为8M就可以用最高速度了。http://cache.amobbs.com/bbs_upload782111/files_8/armok01173992.JPG 我也是今天寄的钱买板子,估计明天后天就到,我们的学习进度差不多。。。遇到的问题可以讨论啊。。
我的QQ94393672 你的是多少,加我啊!! 哥哥,你加我吧。 我不知道你QQ问题 的答案。 呵呵
114829761 谢谢2楼的关心,其实我都改过了,
外部晶振4M。isp 应该小于 1M ,默认的是 125KHZ ,但是就是不行,我就改了更低的,可是还不行。
不知道原因;
刚才17:37分,连接上,竟然OK了。摸不着头脑了。大家有过这样的经历么?
目前,已经使能了JTAG口,可以进行JTAG仿真了。
决定晚上,编写一个“流水灯”练练手、、、、
PS:怎么添加图片啊?想贴个图、、、 23:52又遇到 变态问题
+00000079: FFFF ??? Data or unknown opcode
196: m_Lighten_LED 5
+0000007A: FFFF ??? Data or unknown opcode
197: m_TurnOff_LED 6
+0000007B: FFFF ??? Data or unknown opcode
198: m_TurnOff_LED 7
+0000007C: FFFF ??? Data or unknown opcode
好像是 写到芯片中,程序错误 ,
程序我在AVR STUDIO中模拟测试了,PA口流水灯 正常,可是通过JATG下载都芯片中,程序不懂 ,好像程序的开始位置都不对 。
他从000000BE 开始跑 ,肯定不行啊。可是前面的代码也不正确就奇怪了。
+000000BE: FFFF ??? Data or unknown opcode
+000000BF: FFFF ??? Data or unknown opcode
+000000C0: FFFF ??? Data or unknown opcode
+000000C1: FFFF ??? Data or unknown opcode
+000000C2: FFFF ??? Data or unknown opcode
更奇怪的是:我通过 JTAG读出HEX文件 和我下载的一样,这说明程序是烧写到芯片中了,但是没有从0X0000开始运行 ,再一个莫名的位置运行了。
我估计是芯片坏了 : 可能的原因,这个MEGA16 我从别的板子上焊下来的 ,当时温度很高,估计给烫迷糊了。
明天中午去买一片MEGA16 ,又要化我15元钱!!555 哪位哥们 也有AVR-51 试验板帮着把下面HEX文件烧写到 MEGA16种,看看“流水灯”是否正常
PS:PA口接8个LED灯,低电平点亮
HEX
:020000020000FC
:100000000C942A000C94A5000C94A5000C94A50057
:100010000C94A5000C94A5000C94A5000C94A500CC
:100020000C94A5000C94A5000C94A5000C94A500BC
:100030000C94A5000C94A5000C94A5000C94A500AC
:100040000C94A5000C94A5000C94A5000C94A5009C
:100050000C94A50084E08EBF8FE58DBF8FEF8ABB27
:100060008FEF8BBB88EB87BB87E488BB81ED84BBBC
:100070008EE085BB8AEF81BB85E182BB88E181BDD3
:100080008EE081BDA895D898D99ADA9ADB9ADC9A45
:10009000DD9ADE9ADF9A0E949E00D89AD998DA9A61
:1000A000DB9ADC9ADD9ADE9ADF9A0E949E00D89A4B
:1000B000D99ADA98DB9ADC9ADD9ADE9ADF9A0E9466
:1000C0009E00D89AD99ADA9ADB98DC9ADD9ADE9A61
:1000D000DF9A0E949E00D89AD99ADA9ADB9ADC9825
:1000E000DD9ADE9ADF9A0E949E00D89AD99ADA9A0F
:1000F000DB9ADC9ADD98DE9ADF9A0E949E00D89AFD
:10010000D99ADA9ADB9ADC9ADD9ADE98DF9A0E9415
:100110009E00D89AD99ADA9ADB9ADC9ADD9ADE9A0E
:10012000DF980E949E00D89AD99ADA9ADB9ADC9AD4
:10013000DD9ADE9ADF9A0E949E00A4CF8FEF8A9507
:0C014000F1F78FEF8A95F1F7089584CF56
:00000001FF 上面代码有点错误:等待时间太短了。
:020000020000FC
:100000000C942A000C94A7000C94A7000C94A70051
:100010000C94A7000C94A7000C94A7000C94A700C4
:100020000C94A7000C94A7000C94A7000C94A700B4
:100030000C94A7000C94A7000C94A7000C94A700A4
:100040000C94A7000C94A7000C94A7000C94A70094
:100050000C94A70084E08EBF8FE58DBF8FEF8ABB25
:100060008FEF8BBB88EB87BB87E488BB81ED84BBBC
:100070008EE085BB8AEF81BB85E182BB88E181BDD3
:100080008EE081BDA895D898D99ADA9ADB9ADC9A45
:10009000DD9ADE9ADF9A0E949E00D89AD998DA9A61
:1000A000DB9ADC9ADD9ADE9ADF9A0E949E00D89A4B
:1000B000D99ADA98DB9ADC9ADD9ADE9ADF9A0E9466
:1000C0009E00D89AD99ADA9ADB98DC9ADD9ADE9A61
:1000D000DF9A0E949E00D89AD99ADA9ADB9ADC9825
:1000E000DD9ADE9ADF9A0E949E00D89AD99ADA9A0F
:1000F000DB9ADC9ADD98DE9ADF9A0E949E00D89AFD
:10010000D99ADA9ADB9ADC9ADD9ADE98DF9A0E9415
:100110009E00D89AD99ADA9ADB9ADC9ADD9ADE9A0E
:10012000DF980E949E00D89AD99ADA9ADB9ADC9AD4
:10013000DD9ADE9ADF9A0E949E00A4CF8FEF9FEF98
:100140008A95F1F79A9511F084E6FACF089582CF57
:00000001FF 2007-9-21
今天中午去电子市场又买了片MEGA16L,价格13元;比上次买的便宜了2元;晕;
连接上JTAG口,后程序直接能用。自己写的软件延时,时间太快。看不到LED的闪动;又修改延时程序,“跑马灯”试验结束,
看到右下角8*8的LED,把COL8根线直接都接到5V,PA口引出到ROW。同样实现“跑马灯”只不过是一行一行的亮的。
关于昨天的程序混乱,怀疑是芯片坏的问题。芯片没有坏,只是这个晶振选择的问题没有搞清楚,按照板子设计,因该是使用4M的晶振,可是我选择后,程序跑不正确。
次问题,正在解决中、、、、、、、
问题答案 :
关于晶振的选项:
1、 我们可以使用内部的振荡器
Int RC Osc. 1 MHZ ;
Int RC Osc. 2 MHZ ;
Int RC Osc. 4 MHZ ;
Int RC Osc. 8 MHZ ;
2、 4M的外部石英晶振
ext .crystal / medium \\\\\
3、 11M的外部石英晶振
ext .crystal / high freq\\\\\
到此,芯片可以真常的工作了,决定用11MHZ 晶振,虽然是MEGA16L,但是跑11M还是没有问题的。
同时考虑到一个问题,关于软定时器的问题;软件定时器的定时长短和外部的晶振有很大的关系,所以以后决定定时用硬件定时器,这样可能跑的更加准确一些吧。 今天 下午 研究 怎么 让8*8的LED
显示 I 心 (图形)U
到现在还没有头绪 ,显示的不正确 。I上面多了一个 横,好像整体下移动了一格。
不知道怎么回事
有做过的,给我指点一下,谢谢了 搞定了 ,没有在显示完一行后,刷新屏幕
现在搞了一个 模拟电梯的向上箭头 ,不过程序写的很不规范,需要加强训练 希望lz能坚持下去。
置顶的贴子里有我讲义(书)的前11章,可以参考。 谢谢马潮老师
今天 中午 去电子 市场买了个 8*8的LED
呵呵 ,好像是共阳的。
想做一个 显示HAPPY BIRTHDAY TO YOU
送给我的同学 。 硬件部分,自己用万用板焊好了。用cr2032 3v 供电 ,鬼知道能用多久 。
使用内部的1M晶震,外围电路不能再简单了 ,啥都没有 。 machao 老师有个帖子:别忘了 BOD
启用AVR的电源检测(BOD)功能。
对于5V系统,设置BOD电平为4.0V;对于3V系统,设置BOD电平为2.7V。然后允许BOD检测。
呵呵,我的用cr2032 3v供电,还连接一个LED指示灯,导致系统一直重启。
考虑再加一个 cr2032 给系统 给 朋友 做的东西 ,做好了。呵呵 ,今天 送给她了 ,还一起 看了电影 ,噢噢 ~~~
下一步决定 玩液晶 1602A ,我花了25元买的,是否买贵了?? 支持一下楼主... 今天下午用了一个下午的时间,学习液晶。
到现在,做了个,按键翻页的小程序。 在FLASH 中放了个英文书,一页一页的看。呵呵
还发现,用1602 不用查他的那个表,其实就是ASCII 码,在FLASH中直接定义就可
例如:
table1:
.db "1. We can read of things that happened 5,000 years ago in the Near East, where people first learned to write.2. But there are some parts of the world where even now people cannot write.Yes. After my graduation from university, I worked as a Customer Service Coordinator in a foreign representative office, and then I transferred to a joint venture as a Market Development Manager. So I am familiar with the market in China."
要不然,写一堆数据也够烦人的了。 都是厉害人物 请教:这个实验板能使用LCD240*128和LCD240*64的屏吗?
想买一套学习用,C语言都不懂,可以吗?
C语言如何起步啊!请老师指点
另外,啥时候有焊好的板(实在没精力焊板了),好象网站上现在缺货. 就从焊板和学习C语言起步。
页:
[1]