单片机开发资料光盘-双龙-686M.zip
源代码在线查看: 463a.asm
;**** A P P L I C A T I O N N O T E A V R 1 0 0 ************************
;*
;* 标题: 测试指令功能源理
;* 版本: 1.0
;*最后更新日期: 2000.08.08
;*
;* 支援 E-mail: gzsl@sl.com.cn
;*
;* 描述
;* 用AVR Studio调试软件窗口观察指令执行变化情况
;* 作者: SL.
;*程序适用于所有单片机
;***************************************************************************
.include "8515def.inc"
.org $0000
rjmp RESET ;复位
;****************************************************************************
;*
;* 调试LPM指令。
;*
;*
;****************************************************************************
.org $0010
RESET:
.EQU randtb=$0100
.def rdatal=R10
.def rdatah=r11
.def temp=r21
LP:ldi temp,0x00 ;准备取低位数据
ldi zh,high(randtb*2) ;送入Z寄存器地址
ldi zl,low(randtb*2) ;$0200
add zl,temp ;得低位地址
lpm ;把$0200低位数送R0
mov rdatal,r0 ;保存数据
ldi temp,0x01 ;准备取高位数据
ldi zh,high(randtb*2) ;送入Z寄存器地址
ldi zl,low(randtb*2) ;$0200
add zl,temp ;得低位地址
lpm ;把$0200高位数送R0
mov rdatah,r0 ;保存数据
RJMP LP ;打开寄存器、CPU、程序存储窗口,再查看程序执行
.org randtb
.db 0x5a,0x7b,0x5b,0x4f,0x66,0x6d,0x7d,0x07