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

📄 leds.s

📁 mega128平台下
💻 S
字号:
	.module Leds.c
	.area data(ram, con, rel)
_ledsOn::
	.blkb 1
	.area idata
	.byte 112
	.area data(ram, con, rel)
	.area text(rom, con, rel)
	.even
_led_init::
; //LED接口
; #include "led.h"
; unsigned char ledsOn=0x70; //第一次翻转变亮
; void led_init()
; {
;   PORTC |=0x70;
	in R24,0x15
	ori R24,112
	out 0x15,R24
L1:
	.dbline 0 ; func end
	ret
	.even
_led0Off::
; }
; 
; //*********Turn off LED 0. 
; void led0Off() 
; {
;   PORTC |=0x10;
	sbi 0x15,4
;   ledsOn |=0x10;
	lds R24,_ledsOn
	ori R24,16
	sts _ledsOn,R24
L2:
	.dbline 0 ; func end
	ret
	.even
_led0On::
; }
; 
; 
; //**********Turn on LED 0. 
; void led0On() 
; {
;   PORTC &=~0x10;
	cbi 0x15,4
;   ledsOn &=~0x10;
	lds R24,_ledsOn
	andi R24,239
	sts _ledsOn,R24
L3:
	.dbline 0 ; func end
	ret
	.even
_led0Toggle::
;  }
; 
; 
; //**********Toggle LED 0; if it was off, turn it on, if was on, turn it off.
; void led0Toggle() 
; {
;   if (ledsOn &0x10)
	lds R2,_ledsOn
	sbrs R2,4
	rjmp L5
;     led0On();
	xcall _led0On
	xjmp L6
L5:
;   else
;     led0Off();
	xcall _led0Off
L6:
L4:
	.dbline 0 ; func end
	ret
	.even
_led1Off::
;  }
; 
; //*********Turn off LED 1. 
; void led1Off() 
; {
;   PORTC |=0x20;
	sbi 0x15,5
;   ledsOn |=0x20;
	lds R24,_ledsOn
	ori R24,32
	sts _ledsOn,R24
L7:
	.dbline 0 ; func end
	ret
	.even
_led1On::
;   }
;   
; //**********Turn on LED 1.
; void led1On() 
; {
;   PORTC &=~0x20;
	cbi 0x15,5
;   ledsOn &=~0x20;
	lds R24,_ledsOn
	andi R24,223
	sts _ledsOn,R24
L8:
	.dbline 0 ; func end
	ret
	.even
_led1Toggle::
; }
; 
; //*********Toggle LED 1; if it was off, turn it on, if was on, turn it off.  
; void led1Toggle() 
; {  
;   if (ledsOn &0x20)
	lds R2,_ledsOn
	sbrs R2,5
	rjmp L10
;     led1On();
	xcall _led1On
	xjmp L11
L10:
;   else
;     led1Off();
	xcall _led1Off
L11:
L9:
	.dbline 0 ; func end
	ret
	.even
_led2Off::
;  }
; 
; //********Turn off LED 2. 
; void led2Off() 
; {
;   PORTC |=0x40;
	sbi 0x15,6
;   ledsOn |=0x40;
	lds R24,_ledsOn
	ori R24,64
	sts _ledsOn,R24
L12:
	.dbline 0 ; func end
	ret
	.even
_led2On::
; }
; 
; //*******Turn on LED 2. 
; void led2On() 
; {
;   PORTC &=~0x40;
	cbi 0x15,6
;   ledsOn &=~0x40;
	lds R24,_ledsOn
	andi R24,191
	sts _ledsOn,R24
L13:
	.dbline 0 ; func end
	ret
	.even
_led2Toggle::
; }
; 
; //*********Toggle LED 2; if it was off, turn it on, if was on, turn it off. 
; void led2Toggle() 
; {
;   if (ledsOn &0x40)
	lds R2,_ledsOn
	sbrs R2,6
	rjmp L15
;     led2On();
	xcall _led2On
	xjmp L16
L15:
;   else
;     led2Off();
	xcall _led2Off
L16:
L14:
	.dbline 0 ; func end
	ret

⌨️ 快捷键说明

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