CH438 芯片内部具有8 个独立的串口模块,在寄存器地址空间分布上,每个串口各占用8个字节的地址空间。地址00H-07H 为串口0 的寄存器,地址08H-0FH 为串口4 的寄存器,地址10H-17H 为串口1,地址18H-1FH 为串口5,地址20H-27H 为串口2,地址28H-2FH为串口6,地址30H-37H为串口3,地址38H-3FH为串口7。而地址4FH 的寄存器是又是按照0~7的顺序.
把寄存器顺序和串口顺序交错定义意义何在? 如果是一致的顺序, 程序中操作哪一组寄存器就只要按照串口顺序移位操作就好了, 非常方便, 也不容易引起逻辑上的误会, 这样交错定义让程序都繁琐, 并且也看不出来实际意义如何.并且要交错就都交错, 4F寄存器如果也是0/4/1/5/2/6/3/7的顺序, 我就干脆把整个串口序重定义也行, 结果4F寄存器又是顺序的, 真是麻烦!
热门产品 :
CH394: 以太网协议栈芯片