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

📄 lly.lst

📁 12864液晶显示程序 带中文字库 可以画图 写汉字
💻 LST
📖 第 1 页 / 共 2 页
字号:
    05D4 2766      CLR	R22
    05D5 C024      RJMP	0x05FA
(0181)     {
(0182)       write_com(0x34);//扩充指令集
    05D6 E304      LDI	R16,0x34
    05D7 DF04      RCALL	_write_com
(0183)       write_com(0X80+j);//列号
    05D8 2F04      MOV	R16,R20
    05D9 5800      SUBI	R16,0x80
    05DA DF01      RCALL	_write_com
(0184)       write_com(0X80+i);//行号
    05DB 2F06      MOV	R16,R22
    05DC 5800      SUBI	R16,0x80
    05DD DEFE      RCALL	_write_com
(0185)       write_com(0x30);//基本指令集
    05DE E300      LDI	R16,0x30
    05DF DEFC      RCALL	_write_com
(0186)       write_data(img[j*16+i*2]);
    05E0 E082      LDI	R24,2
    05E1 9F86      MUL	R24,R22
    05E2 0110      MOVW	R2,R0
    05E3 E180      LDI	R24,0x10
    05E4 9F84      MUL	R24,R20
    05E5 01F0      MOVW	R30,R0
    05E6 0DE2      ADD	R30,R2
    05E7 1DF3      ADC	R31,R3
    05E8 0DEA      ADD	R30,R10
    05E9 1DFB      ADC	R31,R11
    05EA 9104      LD	R16,R16
    05EB DF05      RCALL	_write_data
(0187)       write_data(img[j*16+i*2+1]);
    05EC E082      LDI	R24,2
    05ED 9F86      MUL	R24,R22
    05EE 0110      MOVW	R2,R0
    05EF E180      LDI	R24,0x10
    05F0 9F84      MUL	R24,R20
    05F1 01F0      MOVW	R30,R0
    05F2 0DE2      ADD	R30,R2
    05F3 1DF3      ADC	R31,R3
    05F4 0DEA      ADD	R30,R10
    05F5 1DFB      ADC	R31,R11
    05F6 9631      ADIW	R30,1
    05F7 9104      LD	R16,R16
    05F8 DEF8      RCALL	_write_data
    05F9 9563      INC	R22
    05FA 3068      CPI	R22,0x8
    05FB F2D0      BCS	0x05D6
    05FC 9543      INC	R20
    05FD 3240      CPI	R20,0x20
    05FE F408      BCC	0x0600
    05FF CFD4      RJMP	0x05D4
(0188)     }
(0189)   }
(0190)   for(j=32;j<64;j++)
    0600 E240      LDI	R20,0x20
    0601 C02A      RJMP	0x062C
(0191)   {
(0192)     for(i=0;i<8;i++)
    0602 2766      CLR	R22
    0603 C025      RJMP	0x0629
(0193)     {
(0194) 	  write_com(0x34);
    0604 E304      LDI	R16,0x34
    0605 DED6      RCALL	_write_com
(0195)       write_com(0X80+j-32);
    0606 2F04      MOV	R16,R20
    0607 5800      SUBI	R16,0x80
    0608 5200      SUBI	R16,0x20
    0609 DED2      RCALL	_write_com
(0196)       write_com(0X88+i);
    060A 2F06      MOV	R16,R22
    060B 5708      SUBI	R16,0x78
    060C DECF      RCALL	_write_com
(0197)       write_com(0x30);
    060D E300      LDI	R16,0x30
    060E DECD      RCALL	_write_com
(0198)       write_data(img[j*16+i*2]);
    060F E082      LDI	R24,2
    0610 9F86      MUL	R24,R22
    0611 0110      MOVW	R2,R0
    0612 E180      LDI	R24,0x10
    0613 9F84      MUL	R24,R20
    0614 01F0      MOVW	R30,R0
    0615 0DE2      ADD	R30,R2
    0616 1DF3      ADC	R31,R3
    0617 0DEA      ADD	R30,R10
    0618 1DFB      ADC	R31,R11
    0619 9104      LD	R16,R16
    061A DED6      RCALL	_write_data
(0199)       write_data(img[j*16+i*2+1]);
    061B E082      LDI	R24,2
    061C 9F86      MUL	R24,R22
    061D 0110      MOVW	R2,R0
    061E E180      LDI	R24,0x10
    061F 9F84      MUL	R24,R20
    0620 01F0      MOVW	R30,R0
    0621 0DE2      ADD	R30,R2
    0622 1DF3      ADC	R31,R3
    0623 0DEA      ADD	R30,R10
    0624 1DFB      ADC	R31,R11
    0625 9631      ADIW	R30,1
    0626 9104      LD	R16,R16
    0627 DEC9      RCALL	_write_data
    0628 9563      INC	R22
    0629 3068      CPI	R22,0x8
    062A F2C8      BCS	0x0604
    062B 9543      INC	R20
    062C 3440      CPI	R20,0x40
    062D F408      BCC	0x062F
    062E CFD3      RJMP	0x0602
(0200) 	}
(0201)   }
(0202)   write_com(0x36);//8位数据 扩充指令集 绘图开
    062F E306      LDI	R16,0x36
    0630 DEAB      RCALL	_write_com
(0203)   delay_ms(500);
    0631 EF04      LDI	R16,0xF4
    0632 E011      LDI	R17,1
    0633 D043      RCALL	_delay_ms
(0204) }
    0634 940E0724  CALL	pop_gset3
    0636 9508      RET
_con_disp:
  j                    --> R20
  i                    --> R14
  x                    --> R22
  y0                   --> R10
  x0                   --> R12
  ee                   --> Y+10
    0637 940E06F5  CALL	push_arg4
    0639 940E071D  CALL	push_gset5
    063B 2EC2      MOV	R12,R18
    063C 84AE      LDD	R10,14+Y
    063D 8968      LDD	R22,16+Y
(0205) 
(0206) 
(0207) /******************************************************************************************
(0208) * 函数名称    :con_disp
(0209) * 功能描述    :当ee=0xff时,在x0,y0处反白显示x个字.
(0210)                 当ee=0x00时,在x0,y0处取消反白显示x个字. 
(0211) ******************************************************************************************/
(0212) void con_disp(unsigned char ee ,unsigned char x0,unsigned char y0,unsigned char x)
(0213) {
(0214)   	unsigned char i,j;
(0215)   	for(j=0;j<16;j++)
    063E 2744      CLR	R20
    063F C014      RJMP	0x0654
(0216)   	{
(0217)     	for(i=0;i<x;i++)
    0640 24EE      CLR	R14
    0641 C00F      RJMP	0x0651
(0218)     	{
(0219)       	write_com(0x34);
    0642 E304      LDI	R16,0x34
    0643 DE98      RCALL	_write_com
(0220)       	write_com(y0+j);
    0644 2D0A      MOV	R16,R10
    0645 0F04      ADD	R16,R20
    0646 DE95      RCALL	_write_com
(0221)       	write_com(x0+i);
    0647 2D0C      MOV	R16,R12
    0648 0D0E      ADD	R16,R14
    0649 DE92      RCALL	_write_com
(0222)       	write_com(0x30);
    064A E300      LDI	R16,0x30
    064B DE90      RCALL	_write_com
(0223)       	write_data(ee);
    064C 850A      LDD	R16,10+Y
    064D DEA3      RCALL	_write_data
(0224)       	write_data(ee);
    064E 850A      LDD	R16,10+Y
    064F DEA1      RCALL	_write_data
    0650 94E3      INC	R14
    0651 16E6      CP	R14,R22
    0652 F378      BCS	0x0642
    0653 9543      INC	R20
    0654 3140      CPI	R20,0x10
    0655 F350      BCS	0x0640
(0225)     	}
(0226)   	}
(0227)   	write_com(0x36);
    0656 E306      LDI	R16,0x36
    0657 DE84      RCALL	_write_com
(0228) }
    0658 940E0727  CALL	pop_gset5
    065A 9624      ADIW	R28,4
    065B 9508      RET
(0229) 
(0230) 
(0231) 
(0232) 
(0233) /*-----------------------------------------------------------------------
(0234) 延时函数
(0235) 8M
(0236) -----------------------------------------------------------------------*/
(0237) void delay_1us(void)                 //1us延时函数
(0238)   {
(0239)    asm("nop");
_delay_1us:
    065C 0000      NOP
(0240)   }
    065D 9508      RET
_delay_us:
  i                    --> R20
  n                    --> R22
    065E 940E0711  CALL	push_gset2
    0660 01B8      MOVW	R22,R16
(0241) 
(0242) void delay_us(unsigned int n)       //N us延时函数
(0243)   {
(0244)    unsigned int i=0;
    0661 2744      CLR	R20
    0662 2755      CLR	R21
(0245)    for (i=0;i<n;i++)
    0663 C003      RJMP	0x0667
(0246)    delay_1us();
    0664 DFF7      RCALL	_delay_1us
    0665 5F4F      SUBI	R20,0xFF
    0666 4F5F      SBCI	R21,0xFF
    0667 1746      CP	R20,R22
    0668 0757      CPC	R21,R23
    0669 F3D0      BCS	0x0664
(0247)   }
    066A 940E0721  CALL	pop_gset2
    066C 9508      RET
(0248)   
(0249) void delay_1ms(void)                 //1ms延时函数
(0250)   {
(0251)    unsigned int i;
(0252)    for (i=0;i<1140;i++);
_delay_1ms:
  i                    --> R16
    066D 2700      CLR	R16
    066E 2711      CLR	R17
    066F C002      RJMP	0x0672
    0670 5F0F      SUBI	R16,0xFF
    0671 4F1F      SBCI	R17,0xFF
    0672 3704      CPI	R16,0x74
    0673 E0E4      LDI	R30,4
    0674 071E      CPC	R17,R30
    0675 F3D0      BCS	0x0670
(0253)   }
    0676 9508      RET
_delay_ms:
  i                    --> R20
  n                    --> R22
    0677 940E0711  CALL	push_gset2
    0679 01B8      MOVW	R22,R16
(0254)   
(0255) void delay_ms(unsigned int n)       //N ms延时函数
(0256)   {
(0257)    unsigned int i=0;
    067A 2744      CLR	R20
    067B 2755      CLR	R21
(0258)    for (i=0;i<n;i++)
    067C C003      RJMP	0x0680
(0259)    delay_1ms();
    067D DFEF      RCALL	_delay_1ms
    067E 5F4F      SUBI	R20,0xFF
    067F 4F5F      SBCI	R21,0xFF
    0680 1746      CP	R20,R22
    0681 0757      CPC	R21,R23
    0682 F3D0      BCS	0x067D
(0260)   }    0683 940E0721  CALL	pop_gset2
    0685 9508      RET
_main:
  s                    --> R20
    0686 9723      SBIW	R28,3
FILE: E:\PQ-1A\我的AVR\12864LLY\12864.c
(0001) #include <iom1 28v.h>
(0002) #include <macros.h>
(0003) #include "lcd12864.h"
(0004) #include "pic.h"
(0005) 
(0006) #define  uchar unsigned char
(0007) #define  uint  unsigned int
(0008)  
(0009) 
(0010) void main()
(0011) {
(0012)   uint s=387;
    0687 E843      LDI	R20,0x83
    0688 E051      LDI	R21,1
(0013)   CLI(); //禁止全局中断  原始定义为#asm(“cli”)
    0689 94F8      BCLR	7
(0014)   lcd12864_init();
    068A DE14      RCALL	_lcd12864_init
(0015)   clear_disp_pic();//液晶画图清屏程序
    068B DF26      RCALL	_clear_disp_pic
    068C C065      RJMP	0x06F2
(0016)  // lcd12864_init();
(0017)   /* line1 = "检测到障碍物";
(0018)    line2 = "  距离:";*/
(0019)   while(1)
(0020)   { 
(0021)     disp_pic(mmy); 
    068D E80C      LDI	R16,0x8C
    068E E014      LDI	R17,4
    068F DF3F      RCALL	_disp_pic
(0022) 	delay_ms(3000);
    0690 EB08      LDI	R16,0xB8
    0691 E01B      LDI	R17,0xB
    0692 DFE4      RCALL	_delay_ms
(0023)     //delay_ms(3000);
(0024) 	clear_disp_pic();
    0693 DF1E      RCALL	_clear_disp_pic
(0025) 	//delay_ms(10);
(0026) 	delay_ms(10);
    0694 E00A      LDI	R16,0xA
    0695 E010      LDI	R17,0
    0696 DFE0      RCALL	_delay_ms
(0027) 	line1="  LLY  FG  ";
    0697 E683      LDI	R24,0x63
    0698 E091      LDI	R25,1
    0699 93900177  STS	R25,_line1+1
    069B 93800176  STS	R24,_line1
(0028) 	line2="  周望    加油!!";
    069D E582      LDI	R24,0x52
    069E E091      LDI	R25,1
    069F 93900175  STS	R25,_line2+1
    06A1 93800174  STS	R24,_line2
(0029) 	line3="南华创新实验室";
    06A3 E483      LDI	R24,0x43
    06A4 E091      LDI	R25,1
    06A5 93900173  STS	R25,_line3+1
    06A7 93800172  STS	R24,_line3
(0030) 	line4="团结  努力  拼搏 ";
    06A9 E381      LDI	R24,0x31
    06AA E091      LDI	R25,1
    06AB 93900171  STS	R25,_line4+1
    06AD 93800170  STS	R24,_line4
(0031) 	display(); // 液晶整行显示函数程序
    06AF DE8B      RCALL	_display
(0032) /* 函数名称    :con_disp
(0033) * 功能描述    :当ee=0xff时,在x0,y0处反白显示x个字.
(0034)                 当ee=0x00时,在x0,y0处取消反白显示x个字.*/
(0035) 	con_disp(0xff,0x95,0x90,3);
    06B0 E083      LDI	R24,3
    06B1 838A      STD	R24,2+Y
    06B2 E980      LDI	R24,0x90
    06B3 8388      STD	R24,0+Y
    06B4 E925      LDI	R18,0x95
    06B5 EF0F      LDI	R16,0xFF
    06B6 DF80      RCALL	_con_disp
(0036) 	delay_ms(3000);
    06B7 EB08      LDI	R16,0xB8
    06B8 E01B      LDI	R17,0xB
    06B9 DFBD      RCALL	_delay_ms
(0037) 	con_disp(0x00,0x95,0x90,2);
    06BA E082      LDI	R24,2
    06BB 838A      STD	R24,2+Y
    06BC E980      LDI	R24,0x90
    06BD 8388      STD	R24,0+Y
    06BE E925      LDI	R18,0x95
    06BF 2700      CLR	R16
    06C0 DF76      RCALL	_con_disp
(0038) 	delay_ms(3000);
    06C1 EB08      LDI	R16,0xB8
    06C2 E01B      LDI	R17,0xB
    06C3 DFB3      RCALL	_delay_ms
(0039) 	clear_dis();
    06C4 DDFB      RCALL	_clear_dis
(0040) 	delay_ms(10);
    06C5 E00A      LDI	R16,0xA
    06C6 E010      LDI	R17,0
    06C7 DFAF      RCALL	_delay_ms
(0041) 	disp_pic(tupian);
    06C8 E80C      LDI	R16,0x8C
    06C9 E010      LDI	R17,0
    06CA DF04      RCALL	_disp_pic
(0042) 	delay_ms(3000);
    06CB EB08      LDI	R16,0xB8
    06CC E01B      LDI	R17,0xB
    06CD DFA9      RCALL	_delay_ms
(0043)     clear_dis(); //清屏,地址指针指向00H
    06CE DDF1      RCALL	_clear_dis
(0044) 	lcd_writexy(1,0,"互相学习共同努力");//指定位置写文字
    06CF E280      LDI	R24,0x20
    06D0 E091      LDI	R25,1
    06D1 8388      STD	R24,0+Y
    06D2 8399      STD	R25,1+Y
    06D3 2722      CLR	R18
    06D4 E001      LDI	R16,1
    06D5 DE30      RCALL	_lcd_writexy
(0045) 	lcd_writexy(2,0,"明德博学求事至远");
    06D6 E08F      LDI	R24,0xF
    06D7 E091      LDI	R25,1
    06D8 8388      STD	R24,0+Y
    06D9 8399      STD	R25,1+Y
    06DA 2722      CLR	R18
    06DB E002      LDI	R16,2
    06DC DE29      RCALL	_lcd_writexy
(0046) 	lcd_writexy(3,1,"南华创新实验室");
    06DD E483      LDI	R24,0x43
    06DE E091      LDI	R25,1
    06DF 8388      STD	R24,0+Y
    06E0 8399      STD	R25,1+Y
    06E1 E021      LDI	R18,1
    06E2 E003      LDI	R16,3
    06E3 DE22      RCALL	_lcd_writexy
(0047) 	lcd_writexy(4,1,"2009年02月24日");
    06E4 E080      LDI	R24,0
    06E5 E091      LDI	R25,1
    06E6 8388      STD	R24,0+Y
    06E7 8399      STD	R25,1+Y
    06E8 E021      LDI	R18,1
    06E9 E004      LDI	R16,4
    06EA DE1B      RCALL	_lcd_writexy
(0048) 	delay_ms(3000);
    06EB EB08      LDI	R16,0xB8
    06EC E01B      LDI	R17,0xB
    06ED DF89      RCALL	_delay_ms
(0049) 	delay_ms(3000);
    06EE EB08      LDI	R16,0xB8
    06EF E01B      LDI	R17,0xB
    06F0 DF86      RCALL	_delay_ms
(0050) 	clear_dis(); /*清屏,地址指针指向00H
    06F1 DDCE      RCALL	_clear_dis
    06F2 CF9A      RJMP	0x068D
(0051) 	    display();
(0052) 		write_com(0x94);
(0053) 	    write_data((s%1000/100)+0x30);
(0054) 	    write_data((s%100/10)+0x30);
(0055) 	    write_data((s%10)+0x30);*/
(0056)   }
(0057)  
(0058)   
(0059) }
FILE: <library>
    06F3 9623      ADIW	R28,3
    06F4 9508      RET
push_arg4:
    06F5 933A      ST	R19,-Y
    06F6 932A      ST	R18,-Y
push_arg2:
    06F7 931A      ST	R17,-Y
    06F8 930A      ST	R16,-Y
    06F9 9508      RET
push_gset1:
    06FA 935A      ST	R21,-Y
    06FB 934A      ST	R20,-Y
    06FC 9508      RET
pop_gset1:
    06FD E0E1      LDI	R30,1
pop:
    06FE 9149      LD	R20,Y+
    06FF 9159      LD	R21,Y+
    0700 FDE0      SBRC	R30,0
    0701 9508      RET
    0702 9169      LD	R22,Y+
    0703 9179      LD	R23,Y+
    0704 FDE1      SBRC	R30,1
    0705 9508      RET
    0706 90A9      LD	R10,Y+
    0707 90B9      LD	R11,Y+
    0708 FDE2      SBRC	R30,2
    0709 9508      RET
    070A 90C9      LD	R12,Y+
    070B 90D9      LD	R13,Y+
    070C FDE3      SBRC	R30,3
    070D 9508      RET
    070E 90E9      LD	R14,Y+
    070F 90F9      LD	R15,Y+
    0710 9508      RET
push_gset2:
    0711 937A      ST	R23,-Y
    0712 936A      ST	R22,-Y
    0713 940C06FA  JMP	push_gset1
push_gset3:
    0715 92BA      ST	R11,-Y
    0716 92AA      ST	R10,-Y
    0717 940C0711  JMP	push_gset2
push_gset4:
    0719 92DA      ST	R13,-Y
    071A 92CA      ST	R12,-Y
    071B 940C0715  JMP	push_gset3
push_gset5:
    071D 92FA      ST	R15,-Y
    071E 92EA      ST	R14,-Y
    071F 940C0719  JMP	push_gset4
pop_gset2:
    0721 E0E2      LDI	R30,2
    0722 940C06FE  JMP	pop
pop_gset3:
    0724 E0E4      LDI	R30,4
    0725 940C06FE  JMP	pop
pop_gset5:
    0727 27EE      CLR	R30
    0728 940C06FE  JMP	pop

⌨️ 快捷键说明

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