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

📄 yj12864.s

📁 12864菜单
💻 S
📖 第 1 页 / 共 5 页
字号:
	.module YJ12864.C
	.area text(rom, con, rel)
	.dbfile C:\DOCUME~1\Administrator\桌面\12864液晶菜单显示时钟不过不能调2/AVR_PQ1A.h
	.dbfunc e Delayus _Delayus fV
;              i -> R20,R21
;             US -> R22,R23
	.even
_Delayus::
	xcall push_gset2
	movw R22,R16
	.dbline -1
	.dbline 28
;  /*******************************************
;   文件:YJ12864.C
;   环境:编译为ICC AVR6.25A,仿真为AVR Studio4.10 
;   硬件:ATMEGA16芯片
;   日期:2006年12月10日 
;   功能:驱动开发板上的12864液晶
;   备注:参考《AVR系列单片机C语言编程与应用实例》(清华大学出版社)
; /******************************************/
; #include "iom16v.h"			//包含型号头文件
; #include "macros.h"			//包含"位"操作头文件
; #include "stdio.h"			//标准输入输出头文件
; #include "AVR_PQ1A.h"		//包含自定义常量头文件
; #include "MKEY.C"			//包含矩阵键盘函数文件
; #include "12864.h"
; #include "RTC.C"
; #include "caidan.h"			//包含矩阵键盘函数文件
; 
; 
; 
; void main(void)
; {
;  uchar i;
;  Board_init( );	   							  //初始化开发板
;  LCD12864_initial(); 						  //初始化12864液晶
;   
;  while(1)
;  {
;   menu_0();	
	.dbline 30
;  }
; }
	ldi R16,5
	ldi R17,0
	movw R18,R22
	xcall empy16s
	movw R22,R16
	lsr R23
	ror R22
	lsr R23
	ror R22
	.dbline 31
	clr R20
	clr R21
	xjmp L5
L2:
	.dbline 31
L3:
	.dbline 31
	subi R20,255  ; offset = 1
	sbci R21,255
L5:
	.dbline 31
;  
	cp R20,R22
	cpc R21,R23
	brlo L2
	.dbline -2
L1:
	xcall pop_gset2
	.dbline 0 ; func end
	ret
	.dbsym r i 20 i
	.dbsym r US 22 i
	.dbend
	.dbfunc e Delayms _Delayms fV
;              i -> R20,R21
;              j -> R22,R23
;             MS -> R16,R17
	.even
_Delayms::
	xcall push_gset2
	.dbline -1
	.dbline 40
;  
;  
;  
;  
;  
;  
;  
;  
;  
	.dbline 42
;  
;  
	clr R20
	clr R21
	xjmp L10
L7:
	.dbline 43
	clr R22
	clr R23
	xjmp L14
L11:
	.dbline 43
L12:
	.dbline 43
	subi R22,255  ; offset = 1
	sbci R23,255
L14:
	.dbline 43
	cpi R22,117
	ldi R30,4
	cpc R23,R30
	brlo L11
L8:
	.dbline 42
	subi R20,255  ; offset = 1
	sbci R21,255
L10:
	.dbline 42
	cp R20,R16
	cpc R21,R17
	brlo L7
	.dbline -2
L6:
	xcall pop_gset2
	.dbline 0 ; func end
	ret
	.dbsym r i 20 i
	.dbsym r j 22 i
	.dbsym r MS 16 i
	.dbend
	.dbfunc e Board_init _Board_init fV
	.even
_Board_init::
	.dbline -1
	.dbline 52
;  
;  
;  
;  
;  
;  
;  
;  
;  
;  
	.dbline 53
;  
	ldi R24,255
	out 0x1a,R24
	.dbline 54
;  
	out 0x17,R24
	.dbline 55
;  
	out 0x14,R24
	.dbline 56
;  
	out 0x11,R24
	.dbline 58
;  
;  
	clr R2
	out 0xd,R2
	.dbline 60
;  
;  
	sbi 0x1b,6
	.dbline 61
;  
	cbi 0x15,6
	.dbline 62
;  
	cbi 0x1b,1
	.dbline 63
;  
	out 0x18,R24
	.dbline 64
;  
	sbi 0x1b,2
	.dbline 65
;  
	ldi R16,5
	ldi R17,0
	xcall _Delayus
	.dbline 66
;  
	cbi 0x1b,2
	.dbline 68
;  
;  
	clr R2
	out 0x18,R2
	.dbline 69
;  
	sbi 0x1b,3
	.dbline 70
;  
	ldi R16,50
	ldi R17,0
	xcall _Delayus
	.dbline 71
;  
	cbi 0x1b,3
	.dbline 73
;  
;  
	ldi R24,255
	out 0x18,R24
	.dbline 74
;  
	sbi 0x1b,4
	.dbline 75
;  
	ldi R16,50
	ldi R17,0
	xcall _Delayus
	.dbline 76
;  
	cbi 0x1b,4
	.dbline 78
;  
;  
	ldi R24,255
	out 0x12,R24
	.dbline 79
;  
	sbi 0x1b,7
	.dbline 80
;  
	ldi R16,50
	ldi R17,0
	xcall _Delayus
	.dbline 81
;  
	cbi 0x1b,7
	.dbline -2
L15:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfile C:\DOCUME~1\Administrator\桌面\12864液晶菜单显示时钟不过不能调2/MKEY.C
	.dbfunc e Mkey_press _Mkey_press fc
;        pressed -> R16
	.even
_Mkey_press::
	.dbline -1
	.dbline 20
	.dbline 22
	ldi R24,255
	out 0x11,R24
	.dbline 23
	ldi R24,240
	out 0x12,R24
	.dbline 24
	out 0x11,R24
	.dbline 25
	in R24,0x10
	cpi R24,240
	breq L17
	.dbline 26
	ldi R16,1
	xjmp L18
L17:
	.dbline 28
	clr R16
L18:
	.dbline 29
	ldi R24,255
	out 0x11,R24
	.dbline 30
	.dbline -2
L16:
	.dbline 0 ; func end
	ret
	.dbsym r pressed 16 c
	.dbend
	.dbfunc e Mkey_scan _Mkey_scan fc
;        keycode -> R20
;              i -> R10
	.even
_Mkey_scan::
	xcall push_gset3
	.dbline -1
	.dbline 39
	.dbline 40
	ldi R24,127
	mov R10,R24
	.dbline 40
	ldi R20,255
	.dbline 41
	ldi R16,15
	ldi R17,0
	xcall _Delayms
	.dbline 42
	xcall _Mkey_press
	cpi R16,1
	breq X1
	xjmp L20
X1:
	.dbline 43
L22:
	.dbline 45
	.dbline 46
	mov R2,R10
	lsr R2
	lsr R2
	lsr R2
	lsr R2
	lsr R2
	lsr R2
	lsr R2
	mov R3,R10
	lsl R3
	or R3,R2
	mov R10,R3
	.dbline 47
	ldi R24,15
	out 0x11,R24
	.dbline 48
	out 0x12,R3
	.dbline 49
	ldi R16,1
	ldi R17,0
	xcall _Delayms
	.dbline 50
	in R20,0x10
	.dbline 51
L23:
	.dbline 51
	mov R24,R20
	andi R24,240
	cpi R24,240
	breq L22
L25:
	.dbline 53
	.dbline 54
L26:
	.dbline 54
	xcall _Mkey_press
	cpi R16,1
	breq L25
	.dbline 55
	ldi R16,15
	ldi R17,0
	xcall _Delayms
	.dbline 56
	mov R22,R20
	clr R23
	cpi R22,183
	ldi R30,0
	cpc R23,R30
	brne X2
	xjmp L45
X2:
	cpi R22,187
	ldi R30,0
	cpc R23,R30
	brne X3
	xjmp L41
X3:
	cpi R22,189
	ldi R30,0
	cpc R23,R30
	brne X4
	xjmp L37
X4:
	cpi R22,190
	ldi R30,0
	cpc R23,R30
	brne X5
	xjmp L33
X5:
	ldi R24,190
	ldi R25,0
	cp R24,R22
	cpc R25,R23
	brlt L48
L47:
	cpi R22,119
	ldi R30,0
	cpc R23,R30
	brne X6
	xjmp L46
X6:
	cpi R22,123
	ldi R30,0
	cpc R23,R30
	brne X7
	xjmp L42
X7:
	cpi R22,125
	ldi R30,0
	cpc R23,R30
	brne X8
	xjmp L38
X8:
	cpi R22,126
	ldi R30,0
	cpc R23,R30
	breq L34
	xjmp L28
L48:
	cpi R22,215
	ldi R30,0
	cpc R23,R30
	brne X9
	xjmp L44
X9:
	cpi R22,219
	ldi R30,0
	cpc R23,R30
	breq L40
	cpi R22,221
	ldi R30,0
	cpc R23,R30
	breq L36
	cpi R22,222
	ldi R30,0
	cpc R23,R30
	breq L32
	cpi R22,215
	ldi R30,0
	cpc R23,R30
	brge X10
	xjmp L28
X10:
L49:
	cpi R22,231
	ldi R30,0
	cpc R23,R30
	breq L43
	cpi R22,235
	ldi R30,0
	cpc R23,R30
	breq L39
	cpi R22,237
	ldi R30,0
	cpc R23,R30
	breq L35
	cpi R22,238
	ldi R30,0
	cpc R23,R30
	breq L31
	xjmp L28
X0:
	.dbline 57
L31:
	.dbline 59
	clr R20
	.dbline 60
	xjmp L29
L32:
	.dbline 62
	ldi R20,1
	.dbline 63
	xjmp L29
L33:
	.dbline 65
	ldi R20,2
	.dbline 66
	xjmp L29
L34:
	.dbline 68
	ldi R20,3
	.dbline 69
	xjmp L29
L35:
	.dbline 71
	ldi R20,4
	.dbline 72
	xjmp L29
L36:
	.dbline 74
	ldi R20,5
	.dbline 75
	xjmp L29
L37:
	.dbline 77
	ldi R20,6
	.dbline 78
	xjmp L29
L38:
	.dbline 80
	ldi R20,7
	.dbline 81
	xjmp L29
L39:
	.dbline 83
;  
;  
	ldi R20,8
	.dbline 84
;  
	xjmp L29
L40:
	.dbline 86
;  
;  
	ldi R20,9
	.dbline 87
;  
	xjmp L29
L41:
	.dbline 89
;  
;  
	ldi R20,10
	.dbline 90
;  
	xjmp L29
L42:
	.dbline 92
;  
;  
	ldi R20,11
	.dbline 93
;  
	xjmp L29
L43:
	.dbline 95
;  
;  
	ldi R20,12
	.dbline 96
;  
	xjmp L29
L44:
	.dbline 98
;  
;  
	ldi R20,13
	.dbline 99
;  
	xjmp L29
L45:
	.dbline 101
;  
;  
	ldi R20,14
	.dbline 102
;  
	xjmp L29
L46:
	.dbline 104
;  
;  
	ldi R20,15
	.dbline 105
;  
L28:
L29:
	.dbline 107
;  
;  
L20:
	.dbline 108
;  
	mov R16,R20
	.dbline -2
L19:
	xcall pop_gset3
	.dbline 0 ; func end
	ret
	.dbsym r keycode 20 c
	.dbsym r i 10 c
	.dbend
	.area code(ram, con, rel)
	.dbfile C:\DOCUME~1\Administrator\桌面\12864液晶菜单显示时钟不过不能调2/MKEY.C
	.area lit(rom, con, rel)
_GDRAM::
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 63,255
	.byte 255,255
	.byte 255,255
	.byte 255,255
	.byte 255,255
	.byte 255,255
	.byte 255,255
	.byte 255,252
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,127
	.byte 255,192
	.byte 255,255
	.byte 128,255
	.byte 255,128
	.byte 255,255
	.byte 131,255
	.byte 254,4
	.byte 32,64
	.byte 0,64
	.byte 128,0
	.byte 128,128
	.byte 0,128
	.byte 128,0
	.byte 130,0
	.byte 2,4
	.byte 32,64
	.byte 0,64
	.byte 128,0
	.byte 128,128
	.byte 0,128
	.byte 128,0
	.byte 130,0
	.byte 2,4
	.byte 32,64
	.byte 0,64
	.byte 128,0
	.byte 128,128
	.byte 0,128
	.byte 128,0
	.byte 130,0
	.byte 2,4
	.byte 32,64
	.byte 0,64
	.byte 128,0
	.byte 128,128
	.byte 0,128
	.byte 128,0
	.byte 130,0
	.byte 2,4
	.byte 32,64
	.byte 0,64
	.byte 128,0
	.byte 128,128
	.byte 0,128
	.byte 128,0
	.byte 130,0
	.byte 2,4
	.byte 32,64
	.byte 0,64
	.byte 128,0
	.byte 128,128
	.byte 0,128
	.byte 128,0
	.byte 130,0
	.byte 2,4
	.byte 32,64
	.byte 0,64
	.byte 128,0
	.byte 128,128
	.byte 0,128
	.byte 128,0
	.byte 130,0
	.byte 2,4
	.byte 32,64
	.byte 0,64
	.byte 128,0
	.byte 128,128
	.byte 0,128
	.byte 128,0
	.byte 130,0
	.byte 2,4
	.byte 32,64
	.byte 0,64
	.byte 128,0
	.byte 128,128
	.byte 0,128
	.byte 128,0
	.byte 130,0
	.byte 2,4
	.byte 32,127
	.byte 255,192
	.byte 255,255
	.byte 128,255
	.byte 255,128
	.byte 255,255
	.byte 131,255
	.byte 254,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 63,255
	.byte 255,255
	.byte 255,255
	.byte 255,255
	.byte 255,255
	.byte 255,255
	.byte 255,255
	.byte 255,252
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,96
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,96
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 32,0
	.byte 0,0
	.byte 0,96
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,4
	.byte 47,255
	.byte 255,255
	.byte 193,248
	.byte 127,191
	.byte 193,227
	.byte 156,0
	.byte 'x,30
	.byte 63,196
	.byte 38,217
	.byte 182,'m
	.byte 128,96
	.byte 51,27
	.byte 'c,49
	.byte 140,0
	.byte 204,51
	.byte 27,'d
	.byte 38,217
	.byte 182,'m

⌨️ 快捷键说明

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