📄 ningh320.asm
字号:
mov xendl,#8
mov yendh,#0
mov yendl,#225
call line
mov r5,#7
photo104: call delay_100ms ;延时0.7秒钟
djnz r5,photo104
mov xstah,#0 ;画黄框
mov xstal,#9
mov ystah,#0
mov ystal,#224
mov xendh,#1
mov xendl,#0d6h
mov yendh,#0
mov yendl,#224
call line
mov xstah,#1
mov xstal,#0d6h
mov ystah,#0
mov ystal,#224
mov xendh,#1
mov xendl,#0d6h
mov yendh,#0
mov yendl,#9
call line
mov xstah,#0
mov xstal,#9
mov ystah,#0
mov ystal,#9
mov xendh,#1
mov xendl,#0d6h
mov yendh,#0
mov yendl,#9
call line
mov xstah,#0
mov xstal,#9
mov ystah,#0
mov ystal,#9
mov xendh,#0
mov xendl,#9
mov yendh,#0
mov yendl,#224
call line
mov r5,#15
photo11: call delay_100ms ;延时1.5秒钟
djnz r5,photo11
mov xstah,#0 ;显示“助友展拓"显示汉字列象素点位置
mov xstal,#192
mov ystal,#35
mov color,#white
mov dptr,#compeny1
mov char_num1,#24
mov bak_char_num,#12
;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi ;显示汉字程序
mov r5,#15
photo12: call delay_100ms ;延时1.5秒钟
djnz r5,photo12
mov xstah,#0 ;显示“科技发展中心”
mov xstal,#168
mov ystal,#93
mov color,#yellow
mov dptr,#compeny2
mov char_num1,#24
mov bak_char_num,#18 ;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi
mov r5,#15
photo13: call delay_100ms ;延时1.5秒钟
djnz r5,photo13
mov xstah,#0 ;显示电话
mov xstal,#168
mov ystal,#170
mov color,#pink
mov dptr,#compeny3
mov char_num1,#19
mov bak_char_num,#18 ;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi
mov r5,#50
photo14: call delay_100ms ;延时5秒钟
djnz r5,photo14
ret
photo2: mov color,#blue ;清成黑屏
call clr_lcd
mov r5,#10
photo20: call delay_100ms ;延时1秒钟
djnz r5,photo20
mov color,#white
mov cirxl,#240
mov cirxh,#0
mov ciryl,#117
mov ciryh,#0
mov rad,#110
mov radw,#0ffh
call circle
mov r5,#10
photo201: call delay_100ms ;延时1秒钟
djnz r5,photo201
mov cirxl,#12
mov color,#10000000b
mov dptr,#drow2
photo21: mov a,cirxl
mov cirxh,a ;做画线条数计数器
clr a
movc a,@a+dptr
mov arcx1,a
inc dptr
clr a
movc a,@a+dptr
mov arcx2,a
inc dptr
clr a
movc a,@a+dptr
mov arcy1,a
inc dptr
clr a
movc a,@a+dptr
mov arcy2,a
inc dptr
mov a,dph ;备份DPTR
mov ciryh,a
mov a,dpl
mov ciryl,a ;取出备份的画线起点
photo22: mov a,arcx1
mov xstah,a
mov a,arcx2
mov xstal,a
mov a,arcy1
mov ystah,a
mov a,arcy2
mov ystal,a
clr a
movc a,@a+dptr
mov xendh,a
inc dptr
clr a
movc a,@a+dptr
mov xendl,a
inc dptr
clr a
movc a,@a+dptr
mov yendh,a
inc dptr
clr a
movc a,@a+dptr
mov yendl,a
inc dptr
push dph
push dpl
call line
pop dpl
pop dph
mov r5,#3
photo221: call delay_100ms ;延时0.3秒钟
djnz r5,photo221
inc color
mov a,color
cjne a,#64,photo23
mov color,#green
photo23: djnz cirxh,photo22
mov a,ciryh
mov dph,a
mov a,ciryl
mov dpl,a ;取出备份的画线起点
djnz cirxl,photo21
mov r5,#40
photo24: call delay_100ms ;延时4秒钟
djnz r5,photo24
ret
photo3: mov color,#blue ;清成蓝屏
call clr_lcd
mov r5,#15
photo300: call delay_100ms ;延时1.5秒钟
djnz r5,photo300
mov xstah,#0 ;显示“白日1”
mov xstal,#92
mov ystal,#10
mov color,#white
mov dptr,#bairi1
mov char_num1,#29
mov bak_char_num,#37
;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi
mov r5,#12
photo301: call delay_100ms ;延时1.2秒钟
djnz r5,photo301
mov xstah,#0 ;显示“白日2”
mov xstal,#120
mov ystal,#50
mov color,#yellow
mov dptr,#bairi2
mov char_num1,#24
mov bak_char_num,#30
;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi
mov r5,#12
photo302: call delay_100ms ;延时1.2秒钟
djnz r5,photo302
mov xstah,#0 ;显示“白日3”
mov xstal,#132
mov ystal,#85
mov color,#pink
mov dptr,#bairi3
mov char_num1,#21
mov bak_char_num,#27
;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi
mov r5,#12
photo303: call delay_100ms ;延时1.2秒钟
djnz r5,photo303
mov xstah,#0 ;显示“白日4”
mov xstal,#140
mov ystal,#116
mov color,#red
mov dptr,#bairi4
mov char_num1,#21
mov bak_char_num,#25
;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi
mov r5,#12
photo304: call delay_100ms ;延时1.2秒钟
djnz r5,photo304
mov xstah,#0 ;显示“白日5”
mov xstal,#144
mov ystal,#147
mov color,#blueness
mov dptr,#bairi5
mov char_num1,#19
mov bak_char_num,#24
;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi
mov r5,#12
photo305: call delay_100ms ;延时1.2秒钟
djnz r5,photo305
mov xstah,#0 ;显示“助友展拓”
mov xstal,#160
mov ystal,#177
mov color,#green
mov dptr,#bairi6
mov char_num1,#16
mov bak_char_num,#20
;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi
mov r5,#12
photo306: call delay_100ms ;延时1.2秒钟
djnz r5,photo306
mov xstah,#0 ;显示“白日7”
mov xstal,#168
mov ystal,#205
mov color,#white
mov dptr,#bairi7
mov char_num1,#14
mov bak_char_num,#18
;xsta和ysta是显示汉字的左上角起始位置;color是颜色
call disp_hanzi
mov r5,#40
photo307: call delay_100ms ;延时4秒钟
djnz r5,photo307
ret
photo4: mov color,#white
call clr_lcd
mov r5,#10
photo41: call delay_100ms ;延时4秒钟
djnz r5,photo41
mov r7,#0
mov color,#black
mov r1,#16
photo411: mov r6,#0
mov r2,#16
photo42: mov r4,#15
photo43: mov dptr,#addr_wrow
mov a,r7
movx @dptr,a
mov dptr,#addr_wcol
mov a,r6
mov b,#30
mul ab
push acc
mov a,b
movx @dptr,a
pop acc
movx @dptr,a
mov r3,#15
photo44: mov a,color
mov dptr,#addr_wda
movx @dptr,a
movx @dptr,a
djnz r3,photo44
inc r7
djnz r4,photo43
push 07h
push 06h
push 05h
mov r5,#2
photo45: call delay_100ms ;延时4秒钟
djnz r5,photo45
pop 05h
pop 06h
pop 07h
inc r6
;mov a,r6
;add a,#5
;mov r6,a
mov a,r7
clr c
subb a,#15
mov r7,a
inc color
djnz r2,photo42
mov a,r7
add a,#15
mov r7,a
djnz r1,photo411
mov r5,#200
photo46: call delay_100ms ;延时4秒钟
djnz r5,photo46
ret
disp_hanzi: mov a,bak_char_num ;显示汉字子程序
mov char_num,a ;xsta和ysta是显示汉字的左上角起始位置(以象素点为单位)
disp_hanzi1: clr a ;dptr是指向字模表首地址的指针,字模表写在程序中
movc a,@a+dptr ;char_num1显示汉字需要的行数,bak_char_num显示汉字一行需要的象素点除以8
inc dptr ;color是颜色
mov char_byte,a
mov a,dph ;暂存dptr
mov ciryh,a
mov a,dpl
mov ciryl,a
mov r7,#8
disp_hanzi2: mov a,char_byte
rlc a
mov char_byte,a
jnc disp_hanzi3
push 07h
call dotw
pop 07h
disp_hanzi3: mov a,xstal
add a,#1
mov xstal,a
mov a,xstah
addc a,#0
mov xstah,a
djnz r7,disp_hanzi2
;暂存dptr
mov a,ciryh
mov dph,a
mov a,ciryl
mov dpl,a
djnz char_num,disp_hanzi1
mov a,bak_char_num
mov b,#8
mul ab
mov r0,a
mov a,xstal
clr c
subb a,r0
mov xstal,a
mov a,xstah
subb a,b
mov xstah,a
inc ystal
djnz char_num1,disp_hanzi
ret
delay_100ms: mov r7,#100
delay_1001: mov r6,#50
delay_1002: mul ab
mul ab
djnz r6,delay_1002
djnz r7,delay_1001
ret
;position: db 04h,02h,01h,10h,08h,80h,40h,20h
drow2: db 1,94,0,117 ;将圆均分为13等分
db 1,81,0,168
db 1,2eh,0,208
db 0,253,0,226
db 0,201,0,220
db 0,158,0,190
db 0,133,0,143
db 0,133,0,91
db 0,158,0,44
db 0,201,0,14
db 0,253,0,8
db 1,2eh,0,26
db 1,81,0,66
compeny1:
;-- 宁和电子 -- ** 楷体_GB2312, 22 **
; 当前所选字体下一个汉字对应的点阵为: 宽度x高度=96x24, 调整后为: 96x24
DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H
DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,018H,000H,000H,000H,000H,000H,060H
DB 000H,000H,002H,000H,000H,018H,000H,000H,038H,000H,000H,060H,000H,000H,01FH,080H
DB 000H,008H,000H,000H,070H,000H,000H,060H,000H,003H,0E3H,000H,000H,000H,070H,003H
DB 080H,000H,000H,060H,000H,000H,006H,000H,009H,0FFH,0B8H,00CH,0C0H,000H,000H,060H
DB 000H,000H,004H,000H,00EH,000H,03CH,000H,0C0H,000H,000H,07FH,080H,000H,028H,000H
DB 018H,000H,040H,000H,080H,000H,01FH,0E1H,080H,000H,010H,000H,018H,000H,000H,000H
DB 0F8H,018H,008H,061H,080H,000H,018H,0F8H,010H,001H,080H,00FH,08FH,0FEH,00CH,061H
DB 080H,000H,07FH,0FCH,000H,07FH,0E0H,031H,084H,00CH,00CH,0F1H,000H,07FH,0C8H,000H
DB 007H,0D0H,000H,003H,086H,008H,004H,061H,000H,030H,008H,000H,000H,018H,000H,002H
DB 0E2H,008H,004H,043H,000H,000H,008H,000H,000H,018H,000H,006H,0B2H,018H,004H,04FH
DB 000H,000H,00CH,000H,000H,008H,000H,00CH,082H,0F8H,007H,0F2H,000H,000H,00CH,000H
DB 000H,008H,000H,018H,083H,000H,000H,040H,010H,000H,00CH,000H,000H,008H,000H,030H
DB 082H,000H,000H,060H,018H,000H,00CH,000H,000H,008H,000H,040H,080H,000H,000H,060H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -