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

📄 main.ls1

📁 通用OSD控制(51单片机控制的TFTLCD源码,MTV018)
💻 LS1
📖 第 1 页 / 共 3 页
字号:
                     432     ; 
                     433     ; #define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0]))
                     434     ; 
                     435     ; bit PIN_SIGIND = 0;
                     436     ; 
                     437     ; 
                     438     
----                 439             RSEG  ?PR?MAIN
0000                 440     Com00A5:
0000                 441     L?0166:
                     442             USING   0
0000 7402            443             MOV     A,#02H
0002 93              444             MOVC    A,@A+DPTR
0003 FF              445             MOV     R7,A
0004 7405            446             MOV     A,#05H
A51 MACRO ASSEMBLER  MAIN                                                                 01/02/2006 01:37:04 PAGE     8

0006 93              447             MOVC    A,@A+DPTR
0007 FC              448             MOV     R4,A
0008 7406            449             MOV     A,#06H
000A                 450     L?0167:
000A 93              451             MOVC    A,@A+DPTR
000B FD              452             MOV     R5,A
000C F582            453             MOV     DPL,A
000E 8C83            454             MOV     DPH,R4
0010 020000   F      455             LJMP    ?C?ICALL2
0013                 456     L?0168:
                     457             USING   0
0013                 458     L?0169:
0013 740B            459             MOV     A,#0BH
0015 93              460             MOVC    A,@A+DPTR
0016 FE              461             MOV     R6,A
0017 740C            462             MOV     A,#0CH
0019 93              463             MOVC    A,@A+DPTR
001A F582            464             MOV     DPL,A
001C 8E83            465             MOV     DPH,R6
001E 22              466             RET     
001F                 467     L?0170:
                     468             USING   0
001F E500     F      469             MOV     A,id?35131
0021 14              470             DEC     A
0022 FF              471             MOV     R7,A
0023                 472     L?0171:
0023 850082   F      473             MOV     DPL,item?35130+01H
0026 850083   F      474             MOV     DPH,item?35130
0029 22              475             RET     
002A                 476     L?0174:
                     477             USING   0
002A 8500F0   F      478             MOV     B,step?869
002D A4              479             MUL     AB
002E 13              480             RRC     A
002F 13              481             RRC     A
0030 543F            482             ANL     A,#03FH
0032 FF              483             MOV     R7,A
0033 E500     F      484             MOV     A,i?871
0035 C3              485             CLR     C
0036 9F              486             SUBB    A,R7
0037 22              487             RET     
0038                 488     L?0175:
                     489             USING   0
0038                 490     L?0176:
0038 850082   F      491             MOV     DPL,item?25102+01H
003B 850083   F      492             MOV     DPH,item?25102
003E 22              493             RET     
003F                 494     L?0177:
                     495             USING   0
003F                 496     L?0178:
003F E4              497             CLR     A
0040 93              498             MOVC    A,@A+DPTR
0041 FA              499             MOV     R2,A
0042 7401            500             MOV     A,#01H
0044 93              501             MOVC    A,@A+DPTR
0045 FB              502             MOV     R3,A
0046 22              503             RET     
0047                 504     L?0179:
                     505             USING   0
0047 75F00D          506             MOV     B,#0DH
004A A4              507             MUL     AB
004B 2400     F      508             ADD     A,#LOW (items)
004D F582            509             MOV     DPL,A
004F E4              510             CLR     A
0050 3400     F      511             ADDC    A,#HIGH (items)
0052 22              512             RET     
A51 MACRO ASSEMBLER  MAIN                                                                 01/02/2006 01:37:04 PAGE     9

0053                 513     L?0180:
                     514             USING   0
0053 93              515             MOVC    A,@A+DPTR
0054 F582            516             MOV     DPL,A
0056 8E83            517             MOV     DPH,R6
0058 AF00     F      518             MOV     R7,val?35132
005A 020000   F      519             LJMP    ?C?ICALL2
005D                 520     L?0181:
                     521             USING   0
005D                 522     L?0182:
005D 850082   F      523             MOV     DPL,item?32128+01H
0060 850083   F      524             MOV     DPH,item?32128
0063 22              525             RET     
                     526     ; END OF Com00A5
                     527     
                     528     ; static void initial(void)
                     529     
----                 530             RSEG  ?PR?initial?MAIN
0000                 531     initial:
                     532             USING   0
                     533                             ; SOURCE LINE # 28
                     534     ; {
                     535                             ; SOURCE LINE # 29
                     536     ;       /* disable all interrupts */
                     537     ;       IE = 0;
                     538                             ; SOURCE LINE # 31
0000 E4              539             CLR     A
0001 F5A8            540             MOV     IE,A
                     541     ;       IP = 0;
                     542                             ; SOURCE LINE # 32
0003 F5B8            543             MOV     IP,A
                     544     ; 
                     545     ;       /* deactivate output ports */
                     546     ;       P0=P1=P2=P3 = 0xff;
                     547                             ; SOURCE LINE # 35
0005 75B0FF          548             MOV     P3,#0FFH
0008 75A0FF          549             MOV     P2,#0FFH
000B 7590FF          550             MOV     P1,#0FFH
000E 7580FF          551             MOV     P0,#0FFH
                     552     ; 
                     553     ;       /* timer 0 16 bits, timer 1 16 bits */
                     554     ;       TMOD = 0x51;
                     555                             ; SOURCE LINE # 38
0011 758951          556             MOV     TMOD,#051H
                     557     ;       PCON = 0x80;
                     558                             ; SOURCE LINE # 39
0014 758780          559             MOV     PCON,#080H
                     560     ;       
                     561     ;       timer_init();
                     562                             ; SOURCE LINE # 41
0017 120000   F      563             LCALL   timer_init
                     564     ;       i2c_init();
                     565                             ; SOURCE LINE # 42
001A 120000   F      566             LCALL   i2c_init
                     567     ;       at24c02_init();
                     568                             ; SOURCE LINE # 43
001D 120000   F      569             LCALL   at24c02_init
                     570     ;       mtv130_init();
                     571                             ; SOURCE LINE # 44
0020 120000   F      572             LCALL   mtv130_init
                     573     ;       key_init();
                     574                             ; SOURCE LINE # 45
0023 120000   F      575             LCALL   key_init
                     576     ;       
                     577     ;       EA = 1;
                     578                             ; SOURCE LINE # 47
A51 MACRO ASSEMBLER  MAIN                                                                 01/02/2006 01:37:04 PAGE    10

0026 D2AF            579             SETB    EA
                     580     ; }
                     581                             ; SOURCE LINE # 48
0028 22              582             RET     
                     583     ; END OF initial
                     584     
                     585     ; 
                     586     ; struct progbar_struct {
                     587     ; //    unsigned char row, col;
                     588     ;       unsigned char val;
                     589     ;       unsigned char range, pos, step;
                     590     ; };
                     591     ; void delay500ms();
                     592     ; unsigned char bri_read(unsigned char addr);//读亮度值
                     593     ; unsigned char cont_read(unsigned char addr);//读对比度值
                     594     ; unsigned char col_read(unsigned char addr);//读彩色值
                     595     ; unsigned char tint_read(unsigned char addr);
                     596     ; unsigned char reset_read(unsigned char addr);
                     597     ; unsigned char simple_read(unsigned char addr);
                     598     ; unsigned char bri_step(unsigned char val, unsigned char inc);
                     599     ; unsigned char cont_step(unsigned char val, unsigned char inc);
                     600     ; unsigned char col_step(unsigned char val, unsigned char inc);
                     601     ; unsigned char tint_step(unsigned char val, unsigned char inc);
                     602     ; unsigned char reset_step(unsigned char val, unsigned char inc);
                     603     ; unsigned char bival_step(unsigned char val, unsigned char inc);
                     604     ; void bri_apply(unsigned char val);
                     605     ; void cont_apply(unsigned char val);
                     606     ; void col_apply(unsigned char val);
                     607     ; void tint_apply(unsigned char val);
                     608     ; void reset_apply(unsigned char val);
                     609     ; void bri_draw(char row, char col, unsigned char val);
                     610     ; void cont_draw(char row, char col, unsigned char val);
                     611     ; void col_draw(char row, char col, unsigned char val);
                     612     ; void tint_draw(char row, char col, unsigned char val);
                     613     ; void reset_draw(char row, char col, unsigned char val);
                     614     ; 
                     615     ; #define ABS(x)                ((x) > 0 ? (x) : -(x))
                     616     ; 
                     617     ; //#define DIMM_ADDR   9
                     618     ; 
                     619     ; 
                     620     ; #define BRI_ADDR      9//亮度控制的存储地址。
                     621     ; #define BRI_OFF               66//亮度的最大值
                     622     ; #define BRI_RANGE     92//亮度值的范围。
                     623     ; #define BRI_FAC               1//亮度的间隙值。
                     624     ; #define BRI_DEF     112//亮度的默认值。
                     625     ; 
                     626     ; #define CONT_ADDR     10//对比度控制的存储地址。
                     627     ; #define CONT_OFF      66
                     628     ; #define CONT_RANGE    92
                     629     ; #define CONT_FAC      1
                     630     ; #define CONT_DEF    112
                     631     ; 
                     632     ; #define COL_ADDR      12//彩色控制的存储地址。
                     633     ; #define COL_OFF               109
                     634     ; #define COL_RANGE     92
                     635     ; #define COL_FAC               1
                     636     ; #define COL_DEF     155
                     637     ; 
                     638     ; #define TINT_ADDR     13//色调控制的地址。
                     639     ; #define TINT_OFF      119
                     640     ; #define TINT_RANGE    92
                     641     ; #define TINT_FAC      1
                     642     ; #define TINT_DEF        165
                     643     ; 
                     644     ; 
A51 MACRO ASSEMBLER  MAIN                                                                 01/02/2006 01:37:04 PAGE    11

                     645     ; struct menuitem_struct {//菜单结构体
                     646     ;       unsigned char code *title;//菜单标号
                     647     ;       unsigned char addr;//对应的菜单存储地址。
                     648     ;       unsigned char flags;//对应的选中的菜单项颜色标志。
                     649     ;     #define MIF_DOCA  0x01
                     650     ;     #define MIF_RESET 0x02
                     651     ;       unsigned char defval;//对应菜单值的默认值。
                     652     ;       unsigned char (code *read)(unsigned char addr);//指向相应菜单函实娜肟诘刂贰

⌨️ 快捷键说明

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