📄 main.lst
字号:
0522: CALL 4D4
0523: CLRF 2E
0524: BTFSC 0B.7
0525: BSF 2E.7
0526: BCF 0B.7
.................... //Voltage Regulator ON
.................... LCD_WriteCmd(0x2e);
0527: MOVLW 2E
0528: MOVWF 41
0529: CALL 451
052A: BTFSC 2E.7
052B: BSF 0B.7
.................... delay_ms(40);
052C: MOVLW 28
052D: MOVWF 3B
052E: CALL 4D4
052F: CLRF 2E
0530: BTFSC 0B.7
0531: BSF 2E.7
0532: BCF 0B.7
.................... //Voltage Follower ON
.................... LCD_WriteCmd(0x2f);
0533: MOVLW 2F
0534: MOVWF 41
0535: CALL 451
0536: BTFSC 2E.7
0537: BSF 0B.7
.................... delay_ms(40);
0538: MOVLW 28
0539: MOVWF 3B
053A: CALL 4D4
053B: CLRF 2E
053C: BTFSC 0B.7
053D: BSF 2E.7
053E: BCF 0B.7
....................
.................... //电阻率选择
.................... LCD_WriteCmd(0x27);
053F: MOVLW 27
0540: MOVWF 41
0541: CALL 451
0542: BTFSC 2E.7
0543: BSF 0B.7
.................... delay_ms(40);
0544: MOVLW 28
0545: MOVWF 3B
0546: CALL 4D4
0547: CLRF 2E
0548: BTFSC 0B.7
0549: BSF 2E.7
054A: BCF 0B.7
....................
.................... //对比度设置
.................... LCD_WriteCmd(0x81);
054B: MOVLW 81
054C: MOVWF 41
054D: CALL 451
054E: BTFSC 2E.7
054F: BSF 0B.7
0550: CLRF 2E
0551: BTFSC 0B.7
0552: BSF 2E.7
0553: BCF 0B.7
.................... //对比度设置值 0-63
.................... LCD_WriteCmd(0x05);
0554: MOVLW 05
0555: MOVWF 41
0556: CALL 451
0557: BTFSC 2E.7
0558: BSF 0B.7
0559: CLRF 2E
055A: BTFSC 0B.7
055B: BSF 2E.7
055C: BCF 0B.7
....................
.................... //初始化显示行。0-63
.................... LCD_WriteCmd(0x40);
055D: MOVLW 40
055E: MOVWF 41
055F: CALL 451
0560: BTFSC 2E.7
0561: BSF 0B.7
0562: CLRF 2E
0563: BTFSC 0B.7
0564: BSF 2E.7
0565: BCF 0B.7
....................
.................... //打开显示
.................... LCD_WriteCmd(0xaf);
0566: MOVLW AF
0567: MOVWF 41
0568: CALL 451
0569: BTFSC 2E.7
056A: BSF 0B.7
....................
.................... enable_interrupts(GLOBAL);
056B: MOVLW C0
056C: IORWF 0B,F
.................... }
056D: BCF 0A.3
056E: GOTO 697 (RETURN)
....................
.................... /*int8 asc[]={0x7C,0x12,0x11,0x12,0x7C, // -A-
....................
.................... 0x7F,0x49,0x49,0x49,0x36, // -B-
....................
.................... 0x3E,0x41,0x41,0x41,0x22, // -C-
....................
.................... 0x7F,0x41,0x41,0x41,0x3E, // -D-
....................
.................... 0x7F,0x49,0x49,0x49,0x41, // -E-
....................
.................... 0x7F,0x09,0x09,0x09,0x01, // -F-
....................
.................... 0x3E,0x41,0x51,0x51,0x72, // -G-
....................
.................... 0x7F,0x08,0x08,0x08,0x7F, // -H-
....................
.................... 0x00,0x41,0x7F,0x41,0x00, // -I-
....................
.................... 0x20,0x40,0x41,0x3F,0x01, // -J-
....................
.................... 0x7F,0x08,0x14,0x22,0x41, // -K-
....................
.................... 0x7F,0x40,0x40,0x40,0x40, // -L-
....................
.................... 0x7F,0x02,0x0C,0x02,0x7F, // -M-
....................
.................... 0x7F,0x04,0x08,0x10,0x7F};*/
.................... /*int8 asc[]={
.................... 0xE0,0xF0,0x98,0x8C,0x98,0xF0,0xE0,0x00, // -A-
.................... 0x0F,0x0F,0x00,0x00,0x00,0x0F,0x0F,0x00,
....................
.................... 0x04,0xFC,0xFC,0x44,0x44,0xFC,0xB8,0x00, // -B-
.................... 0x08,0x0F,0x0F,0x08,0x08,0x0F,0x07,0x00,
....................
.................... 0xF0,0xF8,0x0C,0x04,0x04,0x0C,0x18,0x00, // -C-
.................... 0x03,0x07,0x0C,0x08,0x08,0x0C,0x06,0x00
.................... };*/
.................... /*int8 asc[]={
.................... 0x00,0x84,0x44,0x34,0x04,0xFC,0x05,0x86, //栾
.................... 0x04,0xFC,0x04,0x14,0x26,0xC4,0x00,0x00,
.................... 0x02,0x42,0x42,0x22,0x12,0x0A,0x06,0xFF,
.................... 0x06,0x0A,0x12,0x12,0x22,0x62,0x22,0x00,
....................
.................... 0x00,0xFC,0x84,0x84,0x84,0xFE,0x04,0xFC,//"昕",
.................... 0x44,0x44,0x44,0xC2,0x43,0x62,0x40,0x00,
.................... 0x00,0x3F,0x10,0x10,0x10,0x9F,0x40,0x3F,
.................... 0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,
....................
.................... };
.................... */
.................... int8 const asc[]={
.................... 0x00,0x00,0x00,0x40,0x40,0x40,0x40,0x40,
.................... 0x40,0x40,0x40,0x40,0xC0,0x40,0x44,0x58,
.................... 0x78,0x40,0x40,0xC0,0xC0,0x40,0x40,0x40,
.................... 0x40,0x40,0x40,0x60,0x60,0x40,0x00,0x00,
.................... 0x00,0x00,0x00,0x00,0xC0,0x60,0x38,0x1E,
.................... 0x0C,0x04,0x00,0x00,0xFF,0x00,0x00,0x00,
.................... 0x00,0x00,0x00,0xFF,0xFF,0x00,0x02,0x04,
.................... 0x0C,0x18,0x38,0x70,0xE0,0x00,0x00,0x00,
.................... 0x00,0x00,0x10,0x11,0x10,0x10,0x10,0x10,
.................... 0x10,0x10,0x10,0x90,0xF1,0x70,0x30,0xFF,
.................... 0xFF,0x12,0x30,0x51,0x90,0x10,0x10,0x10,
.................... 0x10,0x10,0x10,0x08,0x0C,0x08,0x00,0x00,
.................... 0x00,0x00,0x40,0x20,0x20,0x10,0x18,0x08,
.................... 0x04,0x06,0x03,0x01,0x00,0x00,0x00,0x7F,
.................... 0x7F,0x00,0x00,0x00,0x01,0x03,0x06,0x06,
.................... 0x0C,0x1C,0x18,0x38,0x18,0x08,0x00,0x00
.................... };
.................... void main()
.................... {
*
0685: CLRF 04
0686: MOVLW 1F
0687: ANDWF 03,F
0688: BSF 06.7
0689: BSF 03.5
068A: BSF 1F.0
068B: BSF 1F.1
068C: BSF 1F.2
068D: BCF 1F.3
068E: MOVLW 07
068F: MOVWF 1C
.................... int8 i;
.................... // delay_ms(1000);
....................
....................
.................... SFR_Init();
*
0695: GOTO 4BB
.................... LCD_Init();
0696: GOTO 4E8
.................... LCD_Clear();
0697: GOTO 5C4
....................
.................... i=LCD_ReadStatus();
0698: GOTO 5DB
0699: MOVF 21,W
069A: MOVWF 3A
.................... putc(i);
069B: MOVF 3A,W
069C: MOVWF 3B
069D: GOTO 5F1
.................... /*
.................... //Display_En(0,87,14,asc,TRUE);
.................... Display_En_16X8(0,0,3,asc,TRUE);
.................... Display_En_16X8(0,24,3,asc,TRUE);
.................... Display_En_16X8(0,48,3,asc,TRUE);
.................... Display_En_16X8(0,72,3,asc,TRUE);
.................... Display_En_16X8(0,96,3,asc,TRUE);
.................... Display_En_16X8(0,120,3,asc,TRUE);
.................... // Display_En_16X8(0,0,3,asc,TRUE);*/
.................... // Display_Chn_16X16(0,110,2,asc,TRUE);
.................... Display_Bmp_126X64();
069E: CALL 611
.................... while(1)
.................... {
.................... Display_Bmp_126X64();
069F: CALL 611
.................... }
06A0: GOTO 69F
....................
....................
....................
.................... }
.................... /*
.................... #int_rtcc
.................... void timer0_handle(void)
.................... {
.................... SET_TIMER0(217);
.................... Timer0_Flag=TRUE;
....................
.................... } */
.................... int8 contrast=0,add=0,dec=0;
*
0692: CLRF 37
0693: CLRF 38
0694: CLRF 39
.................... #int_rtcc
*
06A1: SLEEP
.................... void timer0_handle(void)
.................... {
.................... SET_TIMER0(SCANTIME);
*
0460: MOVLW D9
0461: MOVWF 01
.................... // if(input(PIN_B2)) output_low(PIN_B2); else output_high(PIN_B2);
.................... GetKey();
.................... if((KeyPress&0x03)!=0x03)
*
0481: MOVF 32,W
0482: ANDLW 03
0483: SUBLW 03
0484: BTFSC 03.2
0485: GOTO 4B8
.................... {
.................... if(KeyDown&0x01)
0486: BTFSS 2F.0
0487: GOTO 48D
.................... {
.................... KeyDown&=0xfe;
0488: BCF 2F.0
.................... if(contrast<63) contrast++;
0489: MOVF 37,W
048A: SUBLW 3E
048B: BTFSC 03.0
048C: INCF 37,F
.................... }
.................... if(!(KeyPress & 0x01))
048D: BTFSC 32.0
048E: GOTO 499
.................... {
.................... add++;
048F: INCF 38,F
.................... if(add==10)
0490: MOVF 38,W
0491: SUBLW 0A
0492: BTFSS 03.2
0493: GOTO 499
.................... {
.................... add=0;
0494: CLRF 38
.................... if(contrast<63) contrast++;
0495: MOVF 37,W
0496: SUBLW 3E
0497: BTFSC 03.0
0498: INCF 37,F
.................... }
.................... }
.................... if(KeyDown&0x02)
0499: BTFSS 2F.1
049A: GOTO 49F
.................... {
.................... KeyDown&=0xfd;
049B: BCF 2F.1
.................... if(contrast>0) contrast--;
049C: MOVF 37,F
049D: BTFSS 03.2
049E: DECF 37,F
.................... }
.................... if(!(KeyPress & 0x02))
049F: BTFSC 32.1
04A0: GOTO 4AA
.................... {
.................... dec++;
04A1: INCF 39,F
.................... if(dec==10)
04A2: MOVF 39,W
04A3: SUBLW 0A
04A4: BTFSS 03.2
04A5: GOTO 4AA
.................... {
.................... dec=0;
04A6: CLRF 39
.................... if(contrast>0) contrast--;
04A7: MOVF 37,F
04A8: BTFSS 03.2
04A9: DECF 37,F
.................... }
.................... }
.................... if(KeyUp&0x01)
04AA: BTFSS 30.0
04AB: GOTO 4AE
.................... {
.................... KeyUp&=0xfe;
04AC: BCF 30.0
.................... add=0;
04AD: CLRF 38
.................... }
.................... if(KeyUp&0x02)
04AE: BTFSS 30.1
04AF: GOTO 4B2
.................... {
.................... KeyUp&=0xfd;
04B0: BCF 30.1
.................... dec=0;
04B1: CLRF 39
.................... }
.................... //对比度设置
.................... LCD_WriteCmd(0x81);
04B2: MOVLW 81
04B3: MOVWF 41
04B4: CALL 451
.................... //对比度设置值 0-63
.................... LCD_WriteCmd(contrast);
04B5: MOVF 37,W
04B6: MOVWF 41
04B7: CALL 451
.................... }
.................... }
04B8: BCF 0B.2
04B9: BCF 0A.3
04BA: GOTO 020
Configuration Fuses:
Word 1: 1F31 XT NOWDT PUT PROTECT NODEBUG NOBROWNOUT NOLVP NOCPD NOWRT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -