AVR程序释疑.docxVIP

  • 19
  • 0
  • 约 15页
  • 2017-10-07 发布于重庆
  • 举报
AVR程序释疑

把寄存器R0~R29置$FF,把SRAM $0060 ~ $006F单元清0, 把$0070~$007F单元置$FF, 把$0080~$008F单元分别设置为0~F.includem8def.inc;包含m8def.inc文件.org $0000 ;代码起始端定位rjmp MAIN ;跳转到主程序.equ data1=$00ff ;设置符号项等于一个表达式.org $0013 ;代码段定位,跳过中断向量区MAIN:;初始化堆栈指针,对所有带SRAM的AVR单片机,堆栈指针必须设置在SRAM最后的地址ldi r16,high(RAMEND) ;取 RAMEND 的高位字节到r16out SPH,r16 ;将RAMEND的高位送堆栈寄存器SP高位字节中ldi r16,low(RAMEND) ;取 RAMEND 的低位字节到r16out SPL,r16 ;将RAMEND的低位送堆栈寄存器SP低位字节中;把寄存器R0~R29置0xFFLdi r16,low(data1) ;取data1的低位字节到r16part1:st z+,r16 ;加载间接寻址数据,然后地址加一,即(Z) ←Rr, Z ← Z + 1。Z的初始指向是R0cp r29,r16 ;比较,r29-r16brne part1 ; 如果不相等,转到part1;把SRAM 0x60

文档评论(0)

1亿VIP精品文档

相关文档