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

📄 lcdtask.s

📁 加速度采集器。基于ATMega16L.AVRSTUIDIO4
💻 S
字号:
	.module lcdtask.c
	.area text(rom, con, rel)
	.dbfile G:\Acceleratoion\Acceleration\lcdtask.c
	.dbfunc e lcdTask _lcdTask fV
; lcdImpactCounter -> R22,R23
; lcdCurrentImpact -> R20,R21
; lcdImpactUpdated -> R10
	.even
_lcdTask::
	xcall push_gset3
	sbiw R28,4
	.dbline -1
	.dbline 12
; //lcdTask.c
; #include "lcdTask.h"
; #include <iom16v.h>
; #include <macros.h>
; 
; //interface
; extern unsigned short currentImpact;
; extern unsigned short impactCounter;
; extern char currentImpactUpdated;
; 
; void lcdTask(void)
; {
	.dbline 13
;  	 char lcdImpactUpdated = 0;
	clr R10
	.dbline 17
; 	 unsigned short lcdCurrentImpact;
; 	 unsigned short lcdImpactCounter;
;  	 //read interface!!!
; 	 CLI();
	cli
	.dbline 18
; 	 if(currentImpactUpdated&0x01)
	lds R2,_currentImpactUpdated
	sbrs R2,0
	rjmp L2
	.dbline 19
; 	 {
	.dbline 20
; 	  currentImpactUpdated &= ~0x01;
	mov R24,R2
	andi R24,254
	sts _currentImpactUpdated,R24
	.dbline 21
; 	  lcdImpactUpdated = 1;
	clr R10
	inc R10
	.dbline 22
; 	  lcdCurrentImpact = currentImpact;
	lds R20,_currentImpact
	lds R21,_currentImpact+1
	.dbline 23
; 	  lcdImpactCounter = impactCounter;
	lds R22,_impactCounter
	lds R23,_impactCounter+1
	.dbline 24
; 	 }
L2:
	.dbline 25
	sei
	.dbline 28
	tst R10
	breq L4
	.dbline 29
	.dbline 30
	std y+3,R23
	std y+2,R22
	ldi R24,4
	std y+0,R24
	ldi R18,4
	clr R16
	xcall _lcdWriteNumber
	.dbline 31
	std y+3,R21
	std y+2,R20
	ldi R24,4
	std y+0,R24
	ldi R18,4
	ldi R16,1
	xcall _lcdWriteNumber
	.dbline 32
L4:
	.dbline -2
L1:
	adiw R28,4
	xcall pop_gset3
	.dbline 0 ; func end
	ret
	.dbsym r lcdImpactCounter 22 s
	.dbsym r lcdCurrentImpact 20 s
	.dbsym r lcdImpactUpdated 10 c
	.dbend

⌨️ 快捷键说明

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