搜索
bottom↓
回复: 4

马老师,我板子不能仿真下载的问题解决了。

[复制链接]

出0入0汤圆

发表于 2009-8-31 10:59:49 | 显示全部楼层 |阅读模式
芯片并没有问题,一是原来的复位电路或许有些不太可靠,导致芯片不能正常复位。更重要的是一个参数设置错误,我们用的晶振是16M,用AVR Studio设置内部熔丝位时,原来设的是外部低频模式Ext. Crystal/Resonator High Freq.; Start-up time: 16K CK + 4 ms这一项。后来把复位问题解决了,仿真下载时总是进入sleep 模式。后来改为内部晶振后就正常了。还以为是晶振频率太高了,换了一个低的还是那样。再改为外部高频模式时就好了。Ext. Crystal/Resonator High Freq.; Start-up time: 16K CK + 4 ms。你能不能给我解释一下其中的原因?

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2009-8-31 20:12:41 | 显示全部楼层
Ext. Crystal/Resonator High Freq.; Start-up time: 16K CK + 4 ms。

这里有两点:

    第一点是模拟电路的基础。外接使用外部晶体实际是与AVR内部的震荡电路一起工作产生系统需要的时钟。震荡电路工作电流的消耗是与震荡频率有关,频率越高,消耗电流就越大(正反馈的倍数要就越高),这样电路才能起震正常工作。而低频时是不需要这么多的电流消耗的。AVR为了省电,增加了电源控制功能,让用户可以根据实际情况的需要,调整供给震荡电路的电流。这个在许多新性能芯片中都采用的。比如STM32,当你不使用某个输出端口工作时,可以设置寄存器,关闭给该部分电路的供电,达到省电的功能。

    你使用16M晶体,已经是最高系统工作频率了,如果你熔丝设置为低频模式,那么AVR提供给内部震荡电路的电流小,震荡电路不能起震,或这就是起震,工作也是不稳定的,稍微有点干扰,或系统电流的变化,震荡电路就出问题了。心脏出问题,不跳了,其它只能免谈了(不是处在休眠方式)。

    第二点是后面的Start-up time: 16K CK + 4 ms这个参数的选择,这个也是工程师要根据你的硬件电路实际情况进行合理选择的。AVR在3V就能工作了,但是如果你的系统是5V的系统,此时电源可能还没有完全稳定(比如电源路中有大的电容,需要更长的充电时间),或者系统中还有其它的外围芯片,他们需要是4.5V以上才能正常工作的话(比如LCD模块中的LCD控制器,需要4.5v开始工作,并且自己还需要时间做初始化后,才能正常接受AVR的控制),那么AVR在3V工作后,马上发指令给该器件都没有用的,而且开始都是初始化的指令。如果初始化指令没有效果的话,那么电源稳定后,外部器件还是不能正常工作。

     因此Start-up time就是控制AVR正式开始工作的延时时间:16K CK + 4 ms表示,当AVR上电复位后可以工作后,并不马上到地址0X000单元取指令运行,而是等待14个CK(这个CK是AVR的系统工作时钟周期,如果你使用16M,那么就是14 * 1/16M),再加上4MS时间(因为启动的快,跑的也快,所以我先不跑)。等过了这个时间后才从0X000单元取指令运行,正式开始工作。

     如果你系统板上有大电容,那么为了起动稳定可靠,可以设置使用更长的Start-up time,比如16K CK + 64 ms。

    这些在手册中都有说明,AVR把系统分成快速上电系统,以及慢速上电系统。至于是快速还是慢速的,AVR当然不知道了,你设计的硬件应该自己最清楚了,然后你应该正确的选择Start-up time,正确的设置熔丝。

=============================================================
     实际上,说穿了,上面的这些都不是什么深奥的东西和技术,通过所学习的基本原理知识,应该可以通过自己的思考和分析判断后得到结论的。我在学校学习中,也没人教给我,因为那时国内连PC机都没有的。可是我看一遍手册就明白了。为什么,那时候尽管还没有现在这样多的“高科技”课程,但我们扎扎实实的把基础都打的非常牢固,学会了独立思考和分析问题的能力。不是“为了考试”而学习,不是为了“奖学金”而学习。可是为什么现在的学生就不行了?你们在小学就会使用电脑了,MP3,MP4,数码CD、都是高科技产品,应该比我们这些人聪明,见的东西也更多呀?这么这样简单的东西也想不明白?

    这里的关键是:现在应试教育的教学和学习的方法严重阻碍了真正教育目的实现,严重影响了学生的学习,根本不重视真正的基础掌握和能力的提高。考试过关了,学生就是好学生,老师就是好老师。还狐狸花哨的搞什么竞赛,一大堆的肥皂泡泡,充斥在教育界,害人不浅。

相信或估计你看过手册中这部分的解释,如果你基础扎实的话,应该自己能看懂的。如果没有看懂,应该认真找一下原因的。如果根本没看手册,更需要好好反省。

出0入0汤圆

发表于 2009-8-31 22:02:23 | 显示全部楼层
楼主要对得起马老师给你回的贴呀,不用说其它什么了,就为这一贴这么多的字!

出0入25汤圆

发表于 2009-9-1 00:02:54 | 显示全部楼层
这里的关键是:现在应试教育的教学和学习的方法严重阻碍了真正教育目的实现,严重影响了学生的学习,根本不重视真正的基础掌握和能力的提高。考试过关了,学生就是好学生,老师就是好老师。还狐狸花哨的搞什么竞赛,一大堆的肥皂泡泡,充斥在教育界,害人不浅。

相信或估计你看过手册中这部分的解释,如果你基础扎实的话,应该自己能看懂的。如果没有看懂,应该认真找一下原因的。如果根本没看手册,更需要好好反省。

--------------------------------------

学校里算是我算一个 中等偏上,年年拿3等。    但是一上社会发现,模电也不行,数电也不行,微积分不行,等等不行。  公司搞项目,硬着头皮看原来的教科书。
1.要骂教育体制,  现在高分低能太多了。
2.要自己好好反省,学校里做的东西太少了。浪费了时间。
3.对于老师,没什么好说了。也是产业链里面一个打工的。混口饭吃,平良心多讲一点课外知识、有用的知识,已经是很好了。

看到论坛里出没的学生时代的牛人,还是很羡慕的!

-----------------
avr的震荡,的确也没什么好说的,maochao说的很好,很耐心。

出0入0汤圆

 楼主| 发表于 2009-9-1 10:32:37 | 显示全部楼层
真的非常感谢马老师耐心的指导,现在确实感觉自己的电路、模电、数电很多知识都没真正掌握,考试做题还算可以,但真到实际应用中时就不会了,到头来真感觉在学校学不到多少实际有用的知识。这一方面固然是由于教育体制现状造成的,但实际想想也怨自己。自己没有充分考虑将来就业的压力,没有多去实践,没有主动多看书多去钻研。我现在只想在工作中多实践多学习,以求在技术上能提高一些,不辜负别人的期望,也是为了自己,对得起花家里这么多钱上了这几年学。还希望马老师以后能不吝赐教,谢谢!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-15 11:05

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表