⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 extram1.lst

📁 一个用PROTEUS 仿真AVR单片机扩展存储的例子。可以看到效果的
💻 LST
字号:

AVRASM ver. 1.30  extram1.asm Fri Sep 28 22:15:28 2001


         ; EEPROM - Read Write the EEPROM.
         ; Specify Device.
          .device AT90S8515
         
         ; I/O Register Definitions
          .equ    SREG    =$3F
          .equ    SP      =$3D            
          .equ    TIMSK   =$39              
          .equ    TIFR    =$38        
          .equ    MCUCR   =$35
          .equ    TCCR1A  =$2F
          .equ    TCCR1B  =$2E   
          .equ    OCR1AH  =$2B
          .equ    OCR1AL  =$2A         
          .equ    ICR1H   =$25
          .equ    ICR1L   =$24
          .equ    EECR	=$1C
          .equ    EEDR    =$1D
          .equ    EEAR    =$1E
          .equ	PORTB	=$18 		
          .equ	DDRB	=$17 		
          .equ    PINB    =$16
          .equ    PORTC   =$15    
          .equ    DDRC    =$14
          .equ	PINC	=$13
          .equ	PORTD	=$12		
          .equ	DDRD	=$11
          .equ    SPDR    =$0F
          .equ    SPSR    =$0E 		
          .equ    SPCR    =$0D
          .equ    UDR     =$0C
          .equ    USR     =$0B
          .equ    UCR     =$0A
          .equ    UBRR    =$09
          .equ    ACSR    =$08     
          .equ    ADMUX   =$07
          .equ    ADCSR   =$06
          .equ    ADCH    =$05
          .equ    ADCL    =$04       
                              
                              
         ; Variable Declarations
          .def temp     = r16
          .def isrsreg  = r17
          .def isrtemp1 = r18     
          .def isrtemp2 = r19    
          .def isrflag  = r20     
          .def X        = r26
          .def Y        = r28 
          .def Z        = r30
         
          .cseg					; CODE segment.
         
          .org 0      
000000 c000      	rjmp init			; origin.
         
         	    
         ;Main Routine                    
000001 ed0f      init:   ldi r16,$DF			; Initialize the stack.
000002 bf0d      	out SP,r16
                             
         ; Write some data to the external memory at 0x0400
000003 ea00      loop:   ldi r16,$A0			; Enable Sleep and SRAM - 0 ws
000004 bf05      	out MCUCR,r16    
000005 e505      	ldi r16,$55
000006 9300 0400         sts $0400,r16           
000008 9300 0401         sts $0401,r16
00000a 9000 0400         lds r0,$0400
00000c 9000 0401         lds r0,$0401
         
00000e ee00      	ldi r16,$E0			; Enable Sleep and SRAM - 1 ws
00000f bf05      	out MCUCR,r16    
000010 ea0a              ldi r16,$AA
000011 9300 0400         sts $0400,r16
000013 9300 0401         sts $0401,r16
000015 9000 0400         lds r0,$0400
000017 9000 0401         lds r0,$0401
                 
000019 9588      	sleep	    

Assembly complete with no errors.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -