yifengzhineng 发表于 2013-3-12 22:01:45

也许只有马老师能解决我的这个困惑的问题,关于atmega2560。

atmega2560,串口和定时器3有冲突,启动定时器3后,串口1就不断进入接收中断,单片机通过RS232芯片与电脑的串口连接,电脑没有像单片机发任何数据,但单片机不断进入接收中断,数据寄存器的值为00.如果
电脑向单片机发数据0x55,那么串口1的数据寄存器的值就为0x55,保持不变。
关闭定时器3,串口1与电脑的通信就正常。感觉开了定时器3,串口1就不正常。定时器3仅用了计数功能。

yifengzhineng 发表于 2013-3-12 22:02:49

请教一下马老师,问题出在了什么地方,可以通过什么方法排查?

gzfslt 发表于 2013-3-12 22:16:00

我想,你把主要的算法移除,然后整个工程贴出来(但要保证还有那个问题)。也许,会有人帮你看看的。不过,如果是我遇到类似的问题。我会选择自己跟踪、调试的。一般,单片机硬件上发生类似的BUG可能性微乎其微。编译器发生的可能型也不大。建议从重新检查自己的硬件初始化代码入手,辅以认真阅读datasheet比较靠谱。

lovefei 发表于 2013-3-16 16:59:33

可能是你定时器的模式设置错了,或者是某个寄存器设置错了。
先相信单片机是没错的,然后一一排查问题!设置断点应该可以找到你所需要的答案了!
实在不行多看几遍Datasheet肯定会有结果的!
页: [1]
查看完整版本: 也许只有马老师能解决我的这个困惑的问题,关于atmega2560。