手册和 AVR-GCC 库之间的 MCUCR 定义不匹配

Mismatching MCUCR definitions between handbook and AVR-GCC library

ATmega8A manual 定义第 56 页 MCUCR 寄存器中包含的位。

这些定义与位于 /usr/lib/avr/include/avr/iom8a.h.

的 atmega8A I/O 库中包含的 #define 不匹配

比如SE位(Sleep Enable)在手册中定义为bit 5,而在上面的库中是#define SE 7.

我还没有检查 AVR 是否真的误解了这些 MCUCR 标志。 我在这里遗漏了什么吗?

数据sheet好像有误

第 56 页上的“14.8.1. MCUCR – MCU 控制寄存器”部分指出

而第 74 页的“17.1.1. MCUCR – MCU 控制寄存器”部分指出

这是不可能的,因为第 2 位和第 3 位会产生歧义。

注册摘要正确:

这意味着库定义是正确的。