avr单片机中的0x03 0x12 0x15是什么地址

2024-11-24 12:39:13
推荐回答(1个)
回答1:

是通用工作寄存器的地址
R0~R31对应的地址是0x00~0x1F
所以:
0x03 R3
0x12 R18
0x15 R21

PS:一般不用提前给寄存器置数,指令集看datasheet,寄存器是8位。一般用汇编的时候才对寄存器操作,用C语言的话,编译器会自动选择使用哪些数据空间

通用工作寄存器相当于一个数据的中转站,比如作一个运算,要进行很多步,每步都有一个中间结果,这个结果就可以存在寄存器里,运算完了,这些中间结果就不用了,寄存器就可以清零了。用C语言编程,对寄存器的使用一般不用自己去操作,编译器编译的时候会帮你做这个工作。

avr单片机要读端口的话,只要先在端口方向寄存器DDRx设置方向为输入,再读取PINx里的数据就可以了,一般不要对通用工作寄存器操作 DDRx,PORTx,PINx也是寄存器