[AVR单片机] 按键复位后,芯片的机器周期变短了,求解释

[复制链接]
 楼主| 发表于 2013-9-15 10:45 | 显示全部楼层 |阅读模式
最近买了几片AT90CAN128的芯片,买来后发现是翻新的芯片,但是也能用,昨天写了个串口发送程序测试了下,测试部分程序如下:
while(1)
{
  PORTA&=0xf7;
  delay_ms(1000);
  PORTA|=0x08;
  for(i=0;i<10;i++)
  {
   while(!(UCSR0A&(1<<UDRE0)));
   UDR0=num[i];
   //delay_ms(500);
  }
  delay_ms(1000);
  PORTA|=0x08;
  delay_ms(1000);
}
下载进去后,程序正常,不断的发数据,LED灯也闪,
问题来了:当我按下复位按键后,就会明显感觉发送完一组数据的间隔时间短了,灯也闪的快了,我因此判断延时函数的时间变短了,所以感觉芯片的机器周期变短了,我不管使用芯片的内部晶振还是外部晶振,都会出现这样的情况,是不是由此可以判断这个翻新芯片是坏的,我测试了买来的两个芯片了,复位后都是出现同样的问题,其中还有一个芯片断电重新上电后,直接发一些乱码,还是很快的速度,感觉里面的程序直接跑飞了。
请大家帮忙分析分析,看我分析的对吗,是不是还有别的原因,如果真是芯片有问题,只好在重新买几片了。
复位电路如下,应该没问题吧,难道跟芯片的启动延时有关,我熔丝位设置的都是最长的启动时间

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2013-9-16 08:27 | 显示全部楼层
再买几片试一下咯
发表于 2013-9-17 08:49 | 显示全部楼层
可能与复位电路无关
看看:1)熔丝的配置,2)程序对某些功能寄存器的初始化情况……
发表于 2013-9-17 10:02 | 显示全部楼层
复位电路没有问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

9

帖子

0

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