AVR单片机学习笔记

下面是自己在学习AVR单片机时的学习经验,分享出来给大家,一起学习。


1、  AVR单片机采用RISC架构,8051单片机采用CISC架构。前者速度为后者的2~4倍,为流水线操作指令

2、  AVR单片机有32个通用寄存器(地址在RAM区从$0000开始到$001F),其中有6个(最后6个)合并为3个16位的X,Y,Z寄存器,用来存放地址指针,Z寄存器还可以寻址程序存储器

3、  哈佛结构,131条机器指令

4、  延迟开机功能

5、  内部自带RC振荡器,可提供1/2/4/8MHZ的工作时钟

6、  FLASH+EEPROM+SRAM+SPI+USART+TWI+PWM+RTC+10位ADC+模拟比较器+JTAG

7、  堆栈指针向下增长,51单片机向上增长

8、  程序存储器按来访问,擦除和写入以为单位

9、  复位时,所有的I/O口处于没有上拉电阻的输入状态(高阻)

10、             没有中断优先级控制寄存器,由中断向量表的地址决定优先级(地址越低,优先级越高)

11、             PORTB |= (1<<2)D2置1,PORTB&=  ~(1<<6)D6清零

12、             FLASH分两段:引导程序段(BootProgram Section)+应用程序段(Application Program Section)。BPS中可以使用SPM指令实现IAP功能

13、             中断向量表位于FLASH程序存储器的最前面

14、             I/O空间为连续的64I/O寄存器空间,在数据存储器空间的映射地址为$0020~$005F。访问I/O寄存器的两种方式:IN,OUT指令+对SRAM访问指令

15、             单独的AVcc用于给PORTA的ADC做AREF

16、             13位的程序计数器PC,正好满足16KB的寻址

17、             AVR对片内SRAM的访问需要2个时钟周期

18、             

19、             状态寄存器SREG:

           I:全局中断使能位。置1,CPU可以响应中断;清0,CPU禁止响应中断。0时,单独的中断触发控制的值保持不变。并且中断响应后,I由硬件清0(手动置1实现中断嵌套),RETI1再响应其他中断

           T:位复制存储。BLD,BST。可以将通用寄存器组中的任何一位复制到T中,反过来也可以

           H:半进位标志位。用于BCD的运算

           S:符号标志位。S=N⊕V。不管溢出与否(溢出后N的表示就不正确了!),但S总是能正确的表示计算结果的符号

           V:2的补码溢出标志位。溢出时,N取反才是真正的结果符号

           N:负数标志位。直接取自运算结果的最高位

           Z:零值标志位。运算结果为0,置1

           C:进/借位标志。

20、             MCUCSR可以查看复位原因

21、             掉电检测(BOD)复位<BODEN>,2.7V阈值,具有迟滞效应(间隙特性??)

22、             在FLASH的$0000H存放的是一条JMP或者RJMP指令,用来跳转到正式代码入口。$0002H~0028H(针对中断向量为一个字的,如果中断向量为两个字$0002H~0050H)存放的是中断向量表,20个中断口<算上第一个复位中断为21

  • 9
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值