📄 main.s
字号:
.module main.c
.area text(rom, con, rel)
.dbfile E:\ICCAVR\project\AVRMEG~2\icc\016-LCD12864\main.c
.dbfunc e main _main fV
.even
_main::
sbiw R28,2
.dbline -1
.dbline 17
; /*
; 实验十五:
; LCD1602显示实验。
; 1、LCD1602显示实验。显示欢及网址信息。
; 2、内部1 M晶振,程序采用单任务方式,软件延时。
; 3、进行此实验请插上JP1、JP2的所有8个短路块,PC7短路块。
;
; AVR mega16学习板
; www.iccavr.com
; 23:03 2007-4-13
; */
;
; #include <iom16v.h>
; #include "font.h"
; #include "lcd12864.h"
;
; void main(void) {
.dbline 19
;
; PORTA = 0xFF; /*打开上拉*/
ldi R24,255
out 0x1b,R24
.dbline 20
; DDRA = 0x00; /*方向输入*/
clr R2
out 0x1a,R2
.dbline 21
; PORTB = 0xFF; /*电平设置*/
out 0x18,R24
.dbline 22
; DDRB = 0xFF; /*方向输出*/
out 0x17,R24
.dbline 23
; PORTC = 0x7F;
ldi R24,127
out 0x15,R24
.dbline 24
; DDRC = 0x80;
ldi R24,128
out 0x14,R24
.dbline 25
; PORTD = 0xFF;
ldi R24,255
out 0x12,R24
.dbline 26
; DDRD = 0x00;
out 0x11,R2
.dbline 28
;
; disp_init();
xcall _disp_init
.dbline 29
; disp_clear(0, 128, 0);
clr R2
std y+0,R2
ldi R18,128
clr R16
xcall _disp_clear
.dbline 30
; disp_clear(0, 128, 2);
ldi R24,2
std y+0,R24
ldi R18,128
clr R16
xcall _disp_clear
.dbline 31
; disp_clear(0, 128, 4);
ldi R24,4
std y+0,R24
ldi R18,128
clr R16
xcall _disp_clear
.dbline 32
; disp_clear(0, 128, 6);
ldi R24,6
std y+0,R24
ldi R18,128
clr R16
xcall _disp_clear
.dbline 34
;
; disp_char_str(28, 2, "AVR");
ldi R24,<L2
ldi R25,>L2
std y+1,R25
std y+0,R24
ldi R18,2
ldi R16,28
xcall _disp_char_str
.dbline 35
; disp_word(52, 2, CBFAA);
ldi R24,1
std y+0,R24
ldi R18,2
ldi R16,52
xcall _disp_word
.dbline 36
; disp_word(68, 2, CB7A2);
ldi R24,2
std y+0,R24
ldi R18,2
ldi R16,68
xcall _disp_word
.dbline 37
; disp_word(84, 2, CCDF8);
ldi R24,3
std y+0,R24
ldi R18,2
ldi R16,84
xcall _disp_word
.dbline 38
; disp_char_str(8, 5, "www.iccavr.com");
ldi R24,<L3
ldi R25,>L3
std y+1,R25
std y+0,R24
ldi R18,5
ldi R16,8
xcall _disp_char_str
L4:
.dbline 40
L5:
.dbline 40
xjmp L4
X0:
.dbline -2
L1:
adiw R28,2
.dbline 0 ; func end
ret
.dbend
.area data(ram, con, rel)
.dbfile E:\ICCAVR\project\AVRMEG~2\icc\016-LCD12864\main.c
L3:
.blkb 15
.area idata
.byte 'w,'w,'w,46,'i,'c,'c,'a,'v,'r,46,'c,'o,'m,0
.area data(ram, con, rel)
.dbfile E:\ICCAVR\project\AVRMEG~2\icc\016-LCD12864\main.c
L2:
.blkb 4
.area idata
.byte 'A,'V,'R,0
.area data(ram, con, rel)
.dbfile E:\ICCAVR\project\AVRMEG~2\icc\016-LCD12864\main.c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -