历史上的今天
返回首页

历史上的今天

今天是:2025年08月05日(星期二)

正在发生

2021年08月05日 | CVAVR编译在proteus7.4中无法正确运行问题

2021-08-05 来源:eefocus

这个问题主要会出现在用CVAVR来编译的程序中。一时兴起想弄个仿真,结果怎么着都不正常,AVR的端口一闪一闪的,觉得很奇怪,后来才发现是看门狗溢出了导致单片机不停的复位,把程序下到网上的proteus的AVR中就可以,网上下的proteus中的ATmega16何库里找出来的不太一样,就是没明白为什么库里调出来的不行。 后来在仿真日志中发现原来是看门狗一直都开着,我又没喂狗,因此一直都把处理器复位了,这回我更郁闷,我又没开看门狗,又没配置fuse,为什么自己会开呢,搞了N久后,发现有这个可能,一个CVAVR本身编译之后在proteus仿真中,默认开了看门狗(实际上我并没有开啊!!!而且在实物中,要配置fuse才能开的吧?)经过考究后发现,原来真的


是CVAVR给开了,因为我问了其它的师兄说他们的proteus没问题),于是试着手动显式关掉看门狗,关闭的方法如下:


1.先喂狗;

2.把WDTCR寄存器中的WDTOE位先置1,然后在接下来马上把WDE位置0;

3.可以了.

可以把下面这段程序加到主程序的开始(CVAVR编译器下通过):

#asm("WDR")

WDTCR=0x10;

WDTCR=0x00;

OK,就可以啦,这回在proteus中的仿真日志中就不会再看到诸如“看门狗溢出,处理器被重置”这样可恶的信息了,如果是在仿真中学习AVR的话,建议在主程序一开始就把看门狗给关掉,毕竟这跟实物不一样的。


希望这能让别的人少走弯路。


以上的情况是在使用CVAVR编译器中出现的,使用ICCAVR貌似没有这个问题。


推荐阅读

史海拾趣

G-Mag Usa公司的发展小趣事

进入21世纪后,G-Mag意识到单一产品线难以满足市场多元化需求,于是开始实施并购扩张战略。2005年,G-Mag成功收购了国内一家领先的电子元器件制造商,这次收购不仅增强了G-Mag在供应链上的控制力,还为其带来了丰富的产品线和技术储备。随后几年,G-Mag又陆续完成了对多家在传感器、无线通信等领域具有优势企业的并购,逐步构建起了一个覆盖电子产业链上下游的庞大帝国。通过并购,G-Mag不仅实现了业务的快速增长,还巩固了其在电子行业中的领先地位。

Gang Song Electronics Co Ltd公司的发展小趣事

作为物联网领域的领军企业之一,Telit(包含GainSpan的技术)不仅致力于技术创新和市场拓展,还积极参与行业标准的制定和生态建设的推动。通过与其他企业和组织的合作与交流,Telit推动了物联网技术的标准化和规范化发展。同时,它还积极构建物联网生态系统,与上下游企业建立紧密的合作关系,共同推动物联网产业的繁荣和发展。这些努力不仅提升了Telit在行业内的地位和影响力,也为整个物联网产业的发展做出了重要贡献。

DB Unlimited公司的发展小趣事

DB Unlimited始终将客户放在心中最重要的位置。公司坚持以客户为中心的服务理念,为客户提供全方位、高品质的服务。无论是售前咨询、售后服务还是技术支持等方面,DB Unlimited都始终秉持着专业、高效、热情的态度,赢得了客户的广泛赞誉和信赖。这种客户至上的服务理念也成为了公司不断发展壮大的重要保障之一。

请注意,以上故事框架仅供参考,实际的故事需要根据DB Unlimited公司的真实发展历程和具体事实进行编写。

GTE Microcircuits公司的发展小趣事
学习高性能复合放大器电路的设计需要掌握模拟电路的基础知识,包括放大器的工作原理、电路分析方法、以及元器件的选择和使用等。此外,还需要通过阅读专业书籍、参加培训课程、以及实践项目等方式来不断积累经验和提高技能。
Ericsson公司的发展小趣事

随着通信技术的不断发展和市场竞争的加剧,Ericsson也面临着前所未有的挑战。为了应对这些挑战,Ericsson积极进行转型升级。一方面,公司加大了对研发的投入力度,不断推出具有创新性和竞争力的产品和服务;另一方面,Ericsson也通过收购、兼并等方式拓展业务领域和市场份额。此外,公司还注重与合作伙伴建立紧密的合作关系共同推动行业发展。

Ametherm公司的发展小趣事

Ametherm公司成立于XXXX年,由一群热衷于电子技术的工程师创立。他们看到了功率热敏电阻在电子行业中的巨大潜力,并决定专注于此领域的发展。在创立初期,公司面临着资金短缺、市场竞争激烈等挑战,但创始人们凭借着对技术的热情和坚持,逐步攻克了技术难关,开发出了具有竞争力的产品。

问答坊 | AI 解惑

谁有cc2000.exe 这个软件?

要调试F206程序,没有调试工具,谁能发一个?…

查看全部问答>

谁有ActivateDeviceEx()函数动态加载DLL的处理流程?

谁有ActivateDeviceEx()函数动态加载DLL的处理流程?想知道具体用法.…

查看全部问答>

2440 camera 驱动无法读取数据

各位大侠,小弟是第一次发帖,还请各位多多指教!最近在linux2.6下开发基于S3C2440的camera驱动,视频数据通过lcd显示,现在的问题是camera数据无法显示到lcd上面,可以确定lcd驱动是正常的;现贴出一些相关程序: #define VIDEOMEMSIZE  &nb ...…

查看全部问答>

操作远程注册表的错误

dwRet = WNetAddConnection2(&stNetResource,\"Administrator\",\"123\",CONNECT_UPDATE_PROFILE);         if(dwRet != NO_ERROR)         {                 ...…

查看全部问答>

销售收入突破10亿元公司高薪诚聘以下职位

销售收入突破10亿元公司高薪诚聘以下职位 VC工程师 待遇在8k 精通VC++ ,熟悉SQLServer数据库和基于socket网络编程;有数控系统人机界面开发经验者优先考虑。 硬件开发工程师  待遇在8k 岗位一:有电机控制项目5年以上开发经验,熟 ...…

查看全部问答>

STM32软件复位问题。

STM32软件复位问题。系统运行中我想软件复位,看了CortexM3手册上说明:代码如下下面:*(unsigned long*)0xE000ED0C |= 0x04;但是系统仍然不复位CortexM3手册上相关说明P6-7System resetA system or warm& ...…

查看全部问答>

关于ti的芯片命名(dm642),求助

我从市场上买来的dm642型号为:tms320dm642agdk,芯片上没有代表主频的数字,并且A的位置也于手册上的命名规则不符 dm642手册上给出的命名规则 是 : TMS 320 DM642 GDK A 500 能告诉我我买的芯片是500Mhz,还是600Mhz的吗? …

查看全部问答>

招Vxworks兼职讲师

本单位招兼职Vxworks讲师,要求有一定项目经历,表达能力强,待遇高,日结,有意者请与我联系。地点北京,上海,成都,广州,大连等地, QQ:1489302364,邮件:hailang869@163.com ,罗先生…

查看全部问答>

请问ccsv5如何调用math.h中的函数

最近在编程lauchpad,但发现每次使用math.h里的数学函数如sin(),sqrt()等总会debug出错,提示如图,附带程序代码段。后来我找到了出错的地方,并且注释掉了,debug通过,不知是何原因,请大大们解答下。 另外上次做正弦波发生时是查表做的,也是因 ...…

查看全部问答>

游戏服务器怎么搭建服务器群?多服务器怎么共享IP?IP怎么重定向?

公司需要开发一个骨干网机房网络产品,有硬件板卡,多个板卡有单独IP,但与外界连接需要有个公用IP,现在对共用IP这个技术开发团队缺乏相关技术指导。为了形象说明需求,我以游戏服务器来说明。 目前我所了解的网络协议: 我们家里面的路由器都有 ...…

查看全部问答>