近时开始对自己的项目进行减肥。
在看文档“AVR035.pdf”时,发现 “From ATmega169, ATmega48/88/168 and ATtiny2313, all AVR devices includes a number of General Purpose I/O registers, both below and above the 0x1F address limit. These registers are used as any other free I/O register, and could potentially increase performance and reduce code size for your design.”
我再找了其它文档看了一下。
我的理解是:0x00~0x5F属于通用I/O寄存器区;通用I/O寄存器可用来作全局变量的位操作,且效果非常好,尤其是低于0x20的I/O寄存器;
但是,低于0x20的只有一个GPIOR0(0x1E)可用,其他空间跟系统紧密相关,几乎不能使用,高于0X1F的且可用的也寥寥无几,这样是不是太“穷”了点?
各位高手,我的理解是否正确?
|