UART 在一块 ATmega128 板中工作,但在另一块板中使用相同的十六进制文件失败

UART works in one ATmega128 board but fails with same hex file in another

我已经使用 ATmega128 和其他类似系列工作了大约 2 年,并使用 UART 库进行串行传输。我很确定这个库是正确的,因为我已经使用了它数百次,但在过去的几个月里,我无法在我的 ATmega128 上进行 UART。我确定我的硬件是正确的,我确定我的代码并添加到它,相同的十六进制文件在其他两个 ATmega 板上运行良好,但在其他板上运行良好。

  1. 当所有引脚编码为提供输出时,PORT 提供 5V 输出。
  2. 语句在任何 UART 功能发生之前和之后停止(什么都不做,没有 UART,甚至没有 UART 之后的语句)
  3. 我尝试在 main.c 中完全复制粘贴 UART 代码,然后成功了。

请帮忙!我不知道发生了什么。

嗯,折腾了好久,终于找到问题解决了。当我检查另一个微控制器(工作的那个)的保险丝位时,我发现 Extended Fuse bits 与不工作的微控制器不同。我将 Extended Fuse bits 更改为 0xFF 并解决了问题。