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

📄 test.asm

📁 AVR频率计
💻 ASM
字号:
;功能:产生100HZ的方波
;MCU:ATmega8,fosc=8M,
;PCB:AVR\AVR.DDB\testICP.sch

.include "m8def.inc"
.def	temp	=r16		;暂存器

;---------------------------------------
.org	0x0000
          rjmp   reset
.org	0x0009
          rjmp   time0
;==================================================          
time0:    brts   t0lp1 
          sbi    PORTB,0
          set
t0lp2:    ldi    temp,217    ;重置定时初值,8M,5ms,1024分频
          out    TCNT0,temp 
          reti
t0lp1:    cbi    PORTB,0 
          clt
          rjmp   t0lp2
;==================================================           
.org	0x0020          
reset:	  ldi	temp,low(ramend)	;设置堆栈指针
	  out	SPL,temp
	  ldi	temp,high(ramend)
	  out	SPH,temp

          ldi    temp,0xFF    ;设B,C,D为输出
          out    DDRB,temp
          out    DDRC,temp
          out    DDRD,temp
          clr    temp 
          out    PORTB,temp   ;
          out    PORTC,temp   ;
          out    PORTD,temp   ;
          cli
          clt
          ldi    temp,0x01
          out    TIMSK,temp   ;允许T0中断
          ldi    temp,217      ;定时初值,8M,5ms*2=100Hz,1024分频
          out    TCNT0,temp
          ldi    temp,0x05    ;T0,1024分频
          out    TCCR0,temp
          sei 
here:    rjmp   here

⌨️ 快捷键说明

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