支持位带操作的两个内存区的范围是:
0x2000_0000‐0x200F_FFFF(SRAM区中的最低1MB)
0x4000_0000‐0x400F_FFFF(片上外设区中的最低1MB)
计算公式是:
bit_word_addr = bit_band_base + (byte_offset x 32) + (bit_number x 4)
最终操作的寄存器的某一位的地址 = 位带基址 + (字节偏移 x 32) + (第几位 x 4)
例如:
操作0x20000000寄存器的第2位 = 0x22000000 + (0 x 32) + (2 x 4)
操作0x20000004寄存器的第2位 = 0x22000000 + (1 x 32) + (2 x 4)
操作0x40000000寄存器的第3位 = 0x42000000 + (0 x 32) + (3 x 4)
操作0x40000004寄存器的第3位 = 0x42000000 + (1 x 32) + (3 x 4)